SVR5 uses the SCO SVR5 2.0 system of
This has the following implications for drivers:
The beginning of every DDI 8 driver source file
must include the following line
before any header files are #included:
#define _DDI 8
This line defines the ``major'' version number;
it does not use full version numbers such as 8mp.
As an alternative,
this information can be suppled to the
command line used to compile the driver:
cc -D_KERNEL -D_DDI=8
All device driver source code must #include the
<sys/ddi.h> header file
as the last of the included header files.
Each DDI driver must include
one $interface definition for the DDI version
plus a $interface line
for any other versioned interfaces being used.
This controls the set of entry point routines
and kernel functions that can be used in the driver.
The manual pages include information about
which interfaced versions support a given
entry point routine or kernel function.
Supplemental versioned interfaces are provided
for specific device types:
MDI is used for network adapter cards.
DDI 8 network adapter drivers
should also conform to mdi: 2 or mdi: 2.1.
SDI is used for
SCSI and non-SCSI drivers
for Host Bus Adapter (HBA),
target, layered, and RAID devices.
DDI 8 drivers for mass storage devices
should also conform to sdi: 4.
is used to implement general support
for a different multiprocessor system platform.
``PSM (Platform Support Module)''.
I2O is used to implement support
for I2O buses.
is used to implement hot plug support
on a different system platform.
``HPCI (Hot Plug Controller Interface)''.
© 2005 The SCO Group, Inc. All rights reserved.
OpenServer 6 and UnixWare (SVR5) HDK - June 2005