Source code of Windows XP (NT5)
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
 
 

82 lines
1.9 KiB

/*++
Module Name:
appmca.h
Abstract:
Defines related to MCA for app and driver - device names, function codes
and ioctls
Author:
Revision History:
--*/
#ifndef APPMCA_H
#define APPMCA_H
//
// 16 bit device type definition.
// Device types 0-32767 are reserved by Microsoft.
//
#define FILE_DEVICE_MCA 0xb000
//
// 12 bit function codes
// Function codes 0-2047 are reserved by Microsoft.
//
#define FUNCTION_READ_BANKS 0xb00
#define FUNCTION_READ_BANKS_ASYNC 0xb01
#define IOCTL_READ_BANKS (CTL_CODE(FILE_DEVICE_MCA, FUNCTION_READ_BANKS,\
(METHOD_BUFFERED),(FILE_READ_ACCESS|FILE_WRITE_ACCESS)))
#define IOCTL_READ_BANKS_ASYNC (CTL_CODE(FILE_DEVICE_MCA, \
FUNCTION_READ_BANKS_ASYNC,(METHOD_BUFFERED), \
(FILE_READ_ACCESS|FILE_WRITE_ACCESS)))
//
// IA64 uses MCA log terminology instead of banks.
//
#define FUNCTION_READ_MCALOG FUNCTION_READ_BANKS
#define FUNCTION_READ_MCALOG_ASYNC FUNCTION_READ_BANKS_ASYNC
#define IOCTL_READ_MCALOG (CTL_CODE(FILE_DEVICE_MCA, FUNCTION_READ_MCALOG,\
(METHOD_BUFFERED),(FILE_READ_ACCESS|FILE_WRITE_ACCESS)))
#define IOCTL_READ_MCALOG_ASYNC (CTL_CODE(FILE_DEVICE_MCA, \
FUNCTION_READ_MCALOG_ASYNC,(METHOD_BUFFERED), \
(FILE_READ_ACCESS|FILE_WRITE_ACCESS)))
#if defined(_X86_)
//
// HalMcaRegisterDriver:
// Define x86 ERROR_SEVERITY as VOID for compatibility with IA64 prototype.
//
// 10/21/2000:
// It is being proposed to modify PDRIVER_EXCPTN_CALLBACK definition for x86 to match
// the IA64 definition as a function pointer type returning an ERROR_SEVERITY value.
// This change was created to allow OEM MCA handlers to return information to the HAL
// as a hint how to continue the processing of the MCA event.
//
#define ERROR_SEVERITY VOID
#endif // _X86_
//
// Name that Win32 front end will use to open the MCA device
//
#define MCA_DEVICE_NAME_WIN32 "\\\\.\\imca"
#endif // APPMCA_H