ADC Home > Reference Library > Technical Q&As > Legacy Documents > Hardware & Drivers >
Legacy Document
Important: This document is part of the Legacy section of the ADC Reference Library. This information should not be used for new development.
Current information on this Reference Library topic can be found here:
Technical Q&A DV27
Device Driver Flags
|
Q:
I'm debugging my PCI native driver and notice that the dCtlFlags field of my
Device Control Entry (DCE) has some undocumented bits set.
What do these flags mean?
A:
The current bits in the dCtlFlags field of the DCE are:
bit 0 -- VMImmune -- This bit indicates that your device driver is VM
safe. See
Technote NW 13 for details.
bit 1 -- reserved
bit 2 -- kmDriverGestaltEnableMask (in "DriverGestalt.h") is set if the
driver supports the Driver Gestalt mechanism. See "Designing PCI Cards and
Drivers for Power Macintosh Computers" for a description of Driver Gestalt.
bit 3 -- Native Driver -- Set if the driver is a native driver (ndrv ).
The system will set this bit when it loads your native driver.
bit 4 -- Concurrent -- Set if the native driver supports concurrent
operation. When loading a native driver, the system sets this bit based on the
kDriverIsConcurrent field of the driverOSRuntimeInfo.driverRuntime field of your
DriverDescription. See "Designing PCI Cards and Drivers for Power Macintosh
Computers" for a description of concurrent drivers.
bit 5 -- dOpenedMask (in "Devices.h") is set if the driver is open.
bit 6 -- dRAMBasedMask (in "Devices.h") is set if the dCtlDriver field
is a DRVRHeaderHandle rather than aDRVRHeaderPtr .
bit 7 -- drvrActiveMask (in "Devices.h") is set if the driver is
currently processing a request.
bit 8 -- dReadEnableMask (in "Devices.h") is set if the driver handles
_Read requests.
bit 9 -- dWritEnableMask (in "Devices.h") is set if the driver handles
_Write requests.
bit 10 -- dCtlEnableMask (in "Devices.h") is set if the driver handles
_Control requests.
bit 11 -- dStatEnableMask (in "Devices.h") is set if the driver handles
_Status requests.
bit 12 -- dNeedGoodByeMask (in "Devices.h") is set if the driver needs a
"goodbye" _Control call before the application heap is reinitialized.
bit 13 -- dNeedTimeMask (in "Devices.h") is set if the driver wants
periodic SystemTask time through the "accRun" _Control call.
bit 14 -- dNeedLockMask (in "Devices.h") is set if the driver requires
that its DCE and code be locked at all times when the driver is open.
bit 15 -- reserved
See
"Inside Macintosh:Devices" for more information about bits 5 through to 14.
|
[Mar 10 1997]
We’re sorry, an error has occurred.
Please try submitting your feedback later.
Thank you for providing feedback!
Your input helps improve our developer documentation.