x
This website is using cookies. We use cookies to ensure that we give you the best experience on our website. More info. That's Fine
HPC:Factor Logo 
 

IOCTL_HAL_REBOOT Soft Reset function of KernelIoControl is not implemented on a NEC MobilePro 900

CESD|200083

Applies To

  • Handheld PC 2000

Overview

When developing for the NEC MobilePro 900 and calling the Software API Reset sub-function the device may experience odd behaviour or even stall.

Solution

The API Reset sub-function (IOCTL_HAL_REBOOT) of the KernelIoControl was not implemented in the MobilePro 900 HPC2000 ROM Image.

As a result calling this API function will not have any effect on the MobilePro 900 and may cause unexpected behaviour on the target device.

As a work around the following sub-functions of KernelIoControl have been implemented on the MobilePro 900:

  • IOCTL_HAL_GET_UUID
  • IOCTL_HAL_GET_IP_ADDR
  • IOCTL_SET_KERNEL_COMM_DEV
  • IOCTL_HAL_GET_DEVICE_INFO
  • IOCTL_HAL_ENABLE_SCHEDULER_LOGGING
  • IOCTL_QUERY_PHYSICALMEM
  • IOCTL_HAL_ILTIMING
  • IOCTL_HAL_GET_DEVICEID
    Note: In order to use this sub-function you need to use a buffer size equal to the (sizeof(GUID) + sizeof(DEVICEID))

Acknowledgements

With thanks to Henri Spagnolo of Handheld Attitude for working with us on this article.