SCO OpenServer
start(D2oddi)
start --
initialize a static device driver (with interrupts enabled)
Synopsis
void prefixstart(void);
Description
The driver's
start( )
entry point routine is called during system initalization
(after system services are available and interrupts have been enabled)
to initialize the driver and the devices it controls.
Return values
None
Usage
The start routine can perform the following types of activities:
-
initialize data structures
-
allocate buffers for private buffering schemes
-
map the device into virtual address space
-
initialize hardware
-
initialize timeouts
A driver that needs to perform setup and initialization tasks
that must take place before system services are available
and interrupts are enabled
should use the
init(D2oddi)
routine to perform such tasks.
The start routine should be used
for all other initialization tasks.
Context and synchronization
Non-blockable
context.
Interrupts are enabled
but processes are not yet or no longer available.
Hardware applicability
All
Version applicability
oddi:
1, 2, 2mp, 3, 3mp, 4, 4mp, 5, 5mp, 6, 6mp
External dependencies
This entry point is optional.
The
start( )
routine is a named entry point
and must be defined as a global symbol.
SVR5 DDI compatibility
DDI 8 drivers code
driver initialization in the
_load(D2)
entry point routine and device initialization is done
in the CFG_ADD subfunction to the
config(D2)
entry point routine.
See
``Dynamically-loadable kernel modules (DLKM)'' in HDK Technical Reference.
Loadable drivers for DDI versions prior to version 8
code all driver and device initialization in their
_load(D2)
entry point routine.
Note that SVR5 MDI drivers
that use DDI version 7 must be loadable.
Static (non-loadable) drivers written for
DDI versions prior to DDI 8
support the
start(D2oddi)
entry point routine which has the same syntax
as the SCO OpenServer version
although the functionality is usually coded differently.
References
init(D2oddi)
config(D2),
_load(D2)
19 June 2005
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 5 HDK - June 2005