summaryrefslogtreecommitdiff
path: root/Include/Protocol/AmiSio.h
diff options
context:
space:
mode:
Diffstat (limited to 'Include/Protocol/AmiSio.h')
-rw-r--r--Include/Protocol/AmiSio.h131
1 files changed, 131 insertions, 0 deletions
diff --git a/Include/Protocol/AmiSio.h b/Include/Protocol/AmiSio.h
new file mode 100644
index 0000000..f807300
--- /dev/null
+++ b/Include/Protocol/AmiSio.h
@@ -0,0 +1,131 @@
+//**********************************************************************
+//**********************************************************************
+//** **
+//** (C)Copyright 1985-2005, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 6145-F Northbelt Pkwy, Norcross, GA 30071 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//**********************************************************************
+//**********************************************************************
+
+//**********************************************************************
+// $Header: /Alaska/BIN/Core/Include/Protocol/AmiSio.h 4 4/03/06 5:01p Felixp $Revision: $
+//
+// $Date: 4/03/06 5:01p $
+//**********************************************************************
+// Revision History
+// ----------------
+// $Log:
+//
+
+//**********************************************************************
+//<AMI_FHDR_START>
+//
+// Name: AmiSio.h
+//
+// Description: AMI Sio Protocol Definitions.
+//
+//<AMI_FHDR_END>
+//**********************************************************************
+#ifndef __SIO_PROTOCOL_H__
+#define __SIO_PROTOCOL_H__
+#ifdef __cplusplus
+extern "C" {
+#endif
+#include <EFI.h>
+
+// 51E9B4F9-555D-476c-8BB5-BD18D9A68878
+#define EFI_AMI_SIO_PROTOCOL_GUID \
+ {0x51e9b4f9,0x555d,0x476c,0x8b, 0xb5, 0xbd, 0x18, 0xd9, 0xa6, 0x88, 0x78}
+
+GUID_VARIABLE_DECLARATION(gEfiAmiSioProtocolGuid,EFI_AMI_SIO_PROTOCOL_GUID);
+
+#ifndef GUID_VARIABLE_DEFINITION
+#include <AmiDxeLib.h>
+
+typedef struct _AMI_SIO_PROTOCOL AMI_SIO_PROTOCOL;
+
+typedef struct _EFI_EISAID {
+ UINT32 HID;
+ UINT32 UID;
+} EFI_EISAID;
+
+//This list migt be extended if some devices
+//not mention here present in SIO
+typedef enum {
+ dsNone=0,
+ dsFDC,
+ dsPS2K, //PS2 Keyboard Controller if KBC on separate from MS Logical Device
+ dsPS2M, //PS2 Mouse Controller if MS on separate from KBC Logical Device
+ dsPS2CK,//PS2 Keyboard Controller where KBC and MS on same Logical Device
+ dsPS2CM,//PS2 Mouse Controller where KBC and MS on same Logical Device
+ dsUART,
+ dsLPT,
+ dsGAME,
+ dsSB16,
+ dsMPU401,
+ dsFmSynth,
+ dsCIR,
+ dsGPIO,
+ dsHwMon,
+ dsPME,
+ dsACPI,
+} SIO_DEV_TYPE;
+
+
+typedef EFI_STATUS (*SIO_REGISTER) (
+ IN AMI_SIO_PROTOCOL *This,
+ IN BOOLEAN Write,
+ IN BOOLEAN ExitCfgMode,
+ IN UINT8 Register,
+ IN OUT UINT8 *Value
+);
+
+typedef EFI_STATUS (*SIO_RESOURCES)(
+ IN AMI_SIO_PROTOCOL *This,
+ IN BOOLEAN Set,
+ IN OUT T_ITEM_LIST **Resources
+);
+
+//**********************************************************************
+//<AMI_SHDR_START>
+//
+// Name: AMI_SIO_PROTOCOL
+//
+// Description: Functions to access the SIO.
+//
+// Fields: Name Type Description
+// ------------------------------------------------------------
+//
+//<AMI_SHDR_END>
+//**********************************************************************
+typedef struct _AMI_SIO_PROTOCOL {
+ SIO_REGISTER Access;
+ SIO_RESOURCES CurrentRes;
+ SIO_RESOURCES PossibleRes;
+} AMI_SIO_PROTOCOL;
+
+/****** DO NOT WRITE BELOW THIS LINE *******/
+#endif // #ifndef GUID_VARIABLE_DEFINITION
+#ifdef __cplusplus
+}
+#endif
+
+#endif
+//**********************************************************************
+//**********************************************************************
+//** **
+//** (C)Copyright 1985-2005, American Megatrends, Inc. **
+//** **
+//** All Rights Reserved. **
+//** **
+//** 6145-F Northbelt Pkwy, Norcross, GA 30071 **
+//** **
+//** Phone: (770)-246-8600 **
+//** **
+//**********************************************************************
+//**********************************************************************