Chapter 3 — Configuring the Computer
751G Color Mobile Computer User’s Manual 75
Return Values
Returns TRUE if function succeeds. Returns FALSE if the function fails.
GetLastError() may be used to get the extended error value.
Sample
typedef struct {
DWORD ResetReason;// most recent reset type
DWORD ObjectStoreState;// state of object store
} HAL_RESET_INFO, * PHAL_RESET_INFO;
// Reset reason types
#define HAL_RESET_TYPE_UNKNOWN0
#define HAL_RESET_REASON_HARDWARE1// cold
#define HAL_RESET_REASON_SOFTWARE2// suspend
#define HAL_RESET_REASON_WATCHDOG4
#define HAL_RESET_BATT_FAULT8// power fail
#define HAL_RESET_VDD_FAULT16// warm boot
// Object store state flags
#define HAL_OBJECT_STORE_STATE_UNKNOWN0
#define HAL_OBJECT_STORE_STATE_CLEAR1
IOCTL_HAL_GET_BOOT_DEVICE
This IOCTL code allows software to check which device CE booted from.
Usage
#include “oemioctl.h”
Syntax
BOOL KernelIoControl( IOCTL_HAL_GET_BOOT_DEVICE,LPVOID
lpInBuf,DWORD nInBufSize,LPVOID lpOutBuf,DWORD
nOutBufSize,LPDWORD lpBytesReturned );
Parameters
Return Values
Returns TRUE if function succeeds. Returns FALSE if the function fails.
GetLastError() may be used to get the extended error value.
lpInBuf Should be set to NULL.
lpInBufSize Should be set to zero.
lpOutBuf Must point to a buffer large enough to hold a DWORD (4 bytes)
with the boot device. The following boot devices are supported:
#define HAL_BOOT_DEVICE_UNKNOWN0
#define HAL_BOOT_DEVICE_ROM_XIP 1
#define HAL_BOOT_DEVICE_ROM 2
#define HAL_BOOT_DEVICE_PCMCIA_ATA 3
#define HAL_BOOT_DEVICE_PCMCIA_LINEAR 4
#define HAL_BOOT_DEVICE_IDE_ATA 5
#define HAL_BOOT_DEVICE_IDE_ATAPI 6
nOutBufSize The size of lpOutBuf in bytes (4).
lpBytesReturned The number of bytes returned by the function.