DWORD
typedef DWORD TIME_RECORD;
DWORD dwIoControlCode, /* operation control code */
DWORD nInBufferSize, /* size of input data buffer */
DWORD nOutBufferSize, /* size of output data buffer */
if (nOutBufferSize != sizeof(DWORD)) return -1;
*((DWORD*)lpOutBuffer) = HPT_INTERFACE_VERSION;
if (nOutBufferSize!=sizeof(DWORD)) return -1;
static DWORD get_array_flag(PVDevice pVDevice)
if (nInBufferSize!=sizeof(DWORD)) return -1;
id = *(DWORD *)lpInBuffer;
id = *(DWORD *)lpInBuffer;
bus = ((DWORD *)lpInBuffer)[1];
DWORD f = 0;
DWORD nMax;
if (nInBufferSize!=sizeof(DWORD)) return -1;
nMax = *(DWORD *)lpInBuffer;
if (nOutBufferSize < sizeof(DWORD)+sizeof(DWORD)*nMax) return -1;
*(DWORD*)lpOutBuffer = hpt_get_logical_devices(pIds, nMax);
id = *(DWORD *)lpInBuffer;
id = *(DWORD *)lpInBuffer;
DWORD id = ((DWORD*)lpInBuffer)[0];
*(DWORD*)lpOutBuffer = ((DWORD)pAdapTemp->mvSataAdapter.pciConfigDeviceId << 16) | 0x11AB;
DWORD id = ((DWORD*)lpInBuffer)[0];
DWORD offset = ((DWORD*)lpInBuffer)[1];
DWORD direction = ((DWORD*)lpInBuffer)[2];
DWORD length = ((DWORD*)lpInBuffer)[3];
if (nInBufferSize < sizeof(DWORD) * 4 + (direction? length : 0) ||
static DWORD calc_rebuild_progress(PVDevice pVDevice)
DWORD result = ((ULONG)(pVDevice->u.array.RebuildSectors>>11)*1000 /
DWORD percent = ((ULONG)(pMember->u.array.RebuildSectors>>11)*1000 /
int hpt_set_array_state(DEVICEID idArray, DWORD state);
int hpt_query_remove(DWORD ndev, DEVICEID *pIds);
int hpt_remove_devices(DWORD ndev, DEVICEID *pIds);
DWORD dwSize;
DWORD Flags; /* working flags, see ARRAY_FLAG_XXX */
DWORD Members[MAX_ARRAY_MEMBERS_V1]; /* member array/disks */
DWORD RebuildingProgress;
DWORD RebuiltSectors; /* rebuilding point (LBA) for single member */
DWORD hi32;
DWORD lo32;
DWORD lo32;
DWORD hi32;
DWORD Flags; /* working flags, see ARRAY_FLAG_XXX */
DWORD Members[MAX_ARRAY_MEMBERS_V2]; /* member array/disks */
DWORD RebuildingProgress;
DWORD reserve4[4];
DWORD Flags; /* working flags, see DEVICE_FLAG_XXX */
DWORD Capacity; /* array capacity */
DWORD ValidFields; /* mark valid fields below */
DWORD ValidFields; /* mark valid fields below */
DWORD ValidFields; /* mark valid fields below */
DWORD Members[MAX_ARRAY_MEMBERS_V1];/* ID of array members, a member can be an array */
DWORD Members[MAX_ARRAY_MEMBERS_V2];/* ID of array members, a member can be an array */
typedef DWORD DEVICEID;
DWORD Magic; /* used to check if it's a valid ioctl packet */
DWORD dwIoControlCode; /* operation control code */
DWORD nInBufferSize; /* size of input data buffer */
DWORD nOutBufferSize; /* size of output data buffer */
DWORD Magic;
DWORD dwIoControlCode;
DWORD lpInBuffer;
DWORD nInBufferSize;
DWORD lpOutBuffer;
DWORD nOutBufferSize;
DWORD lpBytesReturned;
DWORD hpt_get_version();
int hpt_delete_array(DEVICEID id, DWORD options);
int hpt_device_io(DEVICEID id, int cmd, ULONG lba, DWORD nSector, LPVOID buffer);
int hpt_device_io_v2(DEVICEID id, int cmd, LBA64 lba, DWORD nSector, LPVOID buffer);
int hpt_rebuild_data_block(DEVICEID idMirror, DWORD Lba, UCHAR nSector);
DWORD dwRet;
copyout(&dwRet, (void*)(ULONG_PTR)piop->lpBytesReturned, sizeof(DWORD));
hpt_delete_array(_VBUS_ARG DEVICEID id, DWORD options)
DWORD dwIoControlCode, /* operation control code */
DWORD nInBufferSize, /* size of input data buffer */
DWORD nOutBufferSize, /* size of output data buffer */
if (nInBufferSize!=sizeof(DEVICEID)+sizeof(DWORD)) return -1;
iSuccess = hpt_delete_array(_VBUS_P idArray, *(DWORD*)((DEVICEID *)lpInBuffer+1));
DWORD state;
DWORD timeout = 0;
hpt_set_array_state(DEVICEID idArray, DWORD state)
DWORD timeout = 0;
DWORD Lba;
static int hpt_set_array_state(DEVICEID idArray, DWORD state);
DWORD timeout = 0;
DWORD dwIoControlCode, /* operation control code */
DWORD nInBufferSize, /* size of input data buffer */
DWORD nOutBufferSize, /* size of output data buffer */
DWORD state;
DWORD nSector;
int hpt_default_ioctl(_VBUS_ARG DWORD, PVOID, DWORD, PVOID, DWORD, PDWORD);
typedef DWORD TIME_RECORD;