Implementing the OEMIoControl Function (Windows CE 5.0)
Windows CE–based functions, such as SystemParametersInfo and KernelIoControl, supply information about the hardware platform to applications. The Windows CE kernel obtains some of the hardware platform-specific information by calling your implementation of the OAL function OEMIoControl.
To better understand what IOCTLs to implement and to learn more about the implementation details for OEMIoControl, refer to a sample BSP that is based on hardware similar to your own.
OEMIoControl can expose any number of IOCTLs. You can also define your own custom IOCTL, and some drivers expect specific IOCTLs to be implemented.
The IOCTLs supported by the OEMIocontrol function are highly hardware platform-dependent and functionality-dependent.
The following list shows some of the common IOCTLs you may choose to support:
- IOCTL_HAL_DDK_CALL
- IOCTL_HAL_GETBUSDATA
- IOCTL_HAL_SETBUSDATA
- IOCTL_HAL_DISABLE_WAKE
- IOCTL_HAL_ENABLE_WAKE
- IOCTL_HAL_GET_DEVICE_INFO
- IOCTL_HAL_GET_DEVICEID
- IOCTL_HAL_GET_UUID
- IOCTL_HAL_GET_WAKE_SOURCE
- IOCTL_HAL_INIT_RTC
- IOCTL_HAL_INITREGISTRY
- IOCTL_HAL_POSTINIT
- IOCTL_HAL_PRESUSPEND
- IOCTL_HAL_QUERY_DISPLAYSETTINGS
- IOCTL_HAL_REBOOT
- IOCTL_HAL_RELEASE_SYSINTR
- IOCTL_HAL_REQUEST_IRQ
- IOCTL_HAL_REQUEST_SYSINTR
- IOCTL_HAL_SET_DEVICE_INFO
- IOCTL_HAL_TRANSLATE_IRQ
- IOCTL_KITL_GET_INFO
- IOCTL_PROCESSOR_INFORMATION
- IOCTL_SET_KERNEL_COMM_DEV
- IOCTL_VBRIDGE_802_3_MULTICAST_LIST
- IOCTL_VBRIDGE_CURRENT_PACKET_FILTER
- IOCTL_VBRIDGE_GET_ETHERNET_MAC
- IOCTL_VBRIDGE_GET_RX_PACKET
- IOCTL_VBRIDGE_GET_RX_PACKET_COMPLETE
- IOCTL_VBRIDGE_GET_TX_PACKET
- IOCTL_VBRIDGE_GET_TX_PACKET_COMPLETE
- IOCTL_VBRIDGE_SHARED_ETHERNET
- IOCTL_VBRIDGE_WILD_CARD
The following topics contain information about how you can implement OEMIoControl in your OAL to support various capabilities:
- Supporting Interrupt Latency Timing
- Providing System Information
- Rebooting the Target Device
- Setting the Real-Time Clock
- Identifying Devices Uniquely
See Also
How to Develop an OEM Adaptation Layer
Send Feedback on this topic to the authors