Operation Manual
ProgrammingChapter —7
220 700 Series Color Mobile Computer User’s Manual
IOCTL_PROCESSOR_INFORMATION
Returns processor information.
Usage
#include “pkfuncs.h”
Syntax
BOOL KernelIoControl( IOCTL_PROCESSOR_INFORMATION,LPVOID lpInBuf,DWORD
nInBufSize,LPVOID lpOutBuf,DWORD nOutBufSize,LPDWORD lpBytesReturned );
Parameters
lpInBuf Should be set to NULL.
nInBufSize Should be set to zero.
lpOutBuf Should be a pointer to the PROCESSOR_INFO structure. Its
structure stores information describing the CPU more desc riptively.
typedef __PROCESSOR_INFO {
WORD wVersion; // Set to value 1
WCHAR szProcessorCore[40]; // “ARM\0”
WORD wCoreRevision; // 4
WCHAR szProcessorName[40]; // “PXA255\0”
WORD wProcessorRevision; // 0
WCHAR szCatalogNumber[100]; // 0
WCHAR szVendor[100]; // “Intel Corporation\0”
DWORD dwInstructionSet; // 0
DWORD dwClockSpeed; // 400
}
nOutBufSize Should be set to sizeof(PROCESSOR_INFO) in bytes.
lpBytesReturned Returns sizeof(PROCESSOR_INFO);
Return Values
Returns TRUE if function succeeds. Returns FALSE if the function fails.
GetLastError() may be used to get the extended error value.
IOCTL_GET_CPU_ID
Returns Xscale processor ID.
Usage
#include “oemioctl.h”
Syntax
BOOL KernelIoControl( IOCTL_GET_CPU_ID,LPVOID lpInBuf, DWORD nInBufSize,LPVOID
lpOutBuf,DWORD nOutBufSize,LPDWORD lpBytesReturned );
Parameters
lpInBuf ShouldpointtoaCPUIdInfostructuredefinedinOEMIOCTL.H.
lpInBufSize Should be sizeof(CPUIdInfo).