#include <IOKit/ndrvsupport/IOMacOSTypes.h>
IOKit/ndrvsupport/IOMacOSTypes.h Kernel.framework
48 typedefs · 12 structs · 10 enums · 8 macros
underlying type unsigned int
typedef unsigned char Byte
typedef signed char SignedByte
typedefPtr
typedef char *Ptr
typedef unsigned int FourCharCode
size 8, align 2
| short | top | |
| short | left | |
| short | bottom | |
| short | right | |
underlying type unsigned int
Numeric version part of 'vers' resource
size 4, align 1
| UInt8 | majorRev | 1st part of version number in BCD |
| UInt8 | minorAndBugRev | 2nd & 3rd part of version number share a byte |
| UInt8 | stage | stage code: dev, alpha, beta, final |
| UInt8 | nonRelRev | revision level of non-released version |
typedef struct NumVersion NumVersion
typedef struct OpaqueRef *KernelID
typedef void *LogicalAddress
underlying type unsigned int
typedef unsigned char Str31[32]
#define kPropertyName "name"
#define kPropertyCompatible "compatible"
#define kPropertyDriverPtr "driver-ptr"
#define kPropertyDriverDesc "driver-description"
#define kPropertyReg "reg"
#define kPropertyAAPLAddress "AAPL,address"
#define kPropertyMatching "matching"
#########################################################
Descriptor for Drivers and NDRVs
#########################################################
Driver Typing Information Used to Match Drivers With Devices
size 36, align 1
| Str31 | nameInfoStr | Driver Name/Info String |
| NumVersion | version | Driver Version Number |
typedef struct DriverType DriverType
OS Runtime Information Used to Setup and Maintain a Driver's Runtime Environment
typedef IOOptionBits RuntimeOptions
underlying type unsigned int
| kDriverIsLoadedUponDiscovery | 1 | auto-load driver when discovered |
| kDriverIsOpenedUponLoad | 2 | auto-open driver when loaded |
| kDriverIsUnderExpertControl | 4 | I/O expert handles loads/opens |
| kDriverIsConcurrent | 8 | supports concurrent requests |
| kDriverQueuesIOPB | 16 | device manager doesn't queue IOPB |
| kDriverIsLoadedAtBoot | 32 | Driver is loaded at the boot time |
| kDriverIsForVirtualDevice | 64 | Driver is for a virtual Device |
| kDriverSupportDMSuspendAndResume | 128 | Driver supports Device Manager Suspend and Resume command |
size 68, align 4
| RuntimeOptions | driverRuntime | Options for OS Runtime |
| Str31 | driverName | Driver's name to the OS |
| UInt32[8] | driverDescReserved | Reserved area |
typedef struct DriverOSRuntime DriverOSRuntime
OS Service Information Used To Declare What APIs a Driver Supports
typedef UInt32 ServiceCount
size 12, align 4
| OSType | serviceCategory | Service Category Name |
| OSType | serviceType | Type within Category |
| NumVersion | serviceVersion | Version of service |
typedef struct DriverServiceInfo DriverServiceInfo
typedef struct DriverOSService DriverOSService
underlying type unsigned int
| kServiceCategoryDisplay | 1684632432 | Display Manager |
| kServiceCategoryOpenTransport | 1869898094 | Open Transport |
| kServiceCategoryBlockStorage | 1651273579 | Block Storage |
| kServiceCategoryNdrvDriver | 1852076662 | Generic Native Driver |
| kServiceCategoryScsiSIM | 1935897449 | SCSI |
| kServiceCategoryFileManager | 1718185061 | File Manager |
| kServiceCategoryIDE | 1768187181 | ide |
| kServiceCategoryADB | 1633968685 | adb |
| kServiceCategoryPCI | 1885563181 | pci bus |
| kServiceCategoryDFM | 1684434221 | Nu Bus DFM |
| kServiceCategoryMotherBoard | 1836212836 | mother Board |
| kServiceCategoryKeyboard | 1803117156 | Keyboard |
| kServiceCategoryPointing | 1886349684 | Pointing |
| kServiceCategoryRTC | 1920230189 | RTC |
| kServiceCategoryNVRAM | 1852989805 | NVRAM |
| kServiceCategorySound | 1936682596 | Sound (1/3/96 MCS) |
| kServiceCategoryPowerMgt | 1885826420 | Power Management |
| kServiceCategoryGeneric | 1734700658 | Generic Service Category to receive general Events |
Ndrv ServiceCategory Types
underlying type unsigned int
| kNdrvTypeIsGeneric | 1734700658 | generic |
| kNdrvTypeIsVideo | 1986618479 | video |
| kNdrvTypeIsBlockStorage | 1651273579 | block storage |
| kNdrvTypeIsNetworking | 1852142711 | networking |
| kNdrvTypeIsSerial | 1936028268 | serial |
| kNdrvTypeIsParallel | 1885434476 | parallel |
| kNdrvTypeIsSound | 1936682596 | sound |
| kNdrvTypeIsBusBridge | 1651663975 | |
typedef UInt32 DriverDescVersion
The Driver Description
underlying type unsigned int
| kInitialDriverDescriptor | 0 | |
| kVersionOneDriverDescriptor | 1 | |
underlying type unsigned int
| kTheDescriptionSignature | 1836344682 | |
| kDriverDescriptionSignature | 1885627763 | |
typedef struct DriverDescription DriverDescription
size 6, align 2
| unsigned short | red | magnitude of red component |
| unsigned short | green | magnitude of green component |
| unsigned short | blue | magnitude of blue component |
typedef struct RGBColor RGBColor
size 8, align 2
| short | value | index or other value |
| RGBColor | rgb | true color |
typedef struct ColorSpec ColorSpec
size 14, align 2
| short | gVersion | gamma version number |
| short | gType | gamma data type |
| short | gFormulaSize | Formula data size |
| short | gChanCnt | number of channels of data |
| short | gDataCnt | number of values/channel |
| short | gDataWidth | bits/corrected value (data packed to next larger byte size) |
| short[1] | gFormulaData | data for formulas followed by gamma values |
typedef struct GammaTbl GammaTbl
typedef struct RegEntryID RegEntryID
typedef RegEntryID * RegEntryIDPtr
underlying type unsigned int
| kIONDRVOpenCommand | 128 | |
| kIONDRVCloseCommand | 129 | |
| kIONDRVReadCommand | 130 | |
| kIONDRVWriteCommand | 131 | |
| kIONDRVControlCommand | 132 | |
| kIONDRVStatusCommand | 133 | |
| kIONDRVKillIOCommand | 134 | |
| kIONDRVInitializeCommand | 135 | init driver and device |
| kIONDRVFinalizeCommand | 136 | shutdown driver and device |
| kIONDRVReplaceCommand | 137 | replace an old driver |
| kIONDRVSupersededCommand | 138 | prepare to be replaced by a new driver |
underlying type unsigned int
| kIONDRVSynchronousIOCommandKind | 1 | |
| kIONDRVAsynchronousIOCommandKind | 2 | |
| kIONDRVImmediateIOCommandKind | 4 | |