-/**\r
-\r
-Copyright (c) 2005, Intel Corporation \r
-All rights reserved. This program and the accompanying materials \r
-are licensed and made available under the terms and conditions of the BSD License \r
-which accompanies this distribution. The full text of the license may be found at \r
-http://opensource.org/licenses/bsd-license.php \r
- \r
-THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS, \r
-WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED. \r
-\r
-Module Name:\r
- 8259.h\r
+/** @file\r
+ Driver implementing the Tiano Legacy 8259 Protocol\r
\r
-Abstract:\r
+Copyright (c) 2005 - 2009, Intel Corporation. All rights reserved.<BR>\r
+This program and the accompanying materials\r
+are licensed and made available under the terms and conditions of the BSD License\r
+which accompanies this distribution. The full text of the license may be found at\r
+http://opensource.org/licenses/bsd-license.php.\r
\r
- Driver implementing the Tiano Legacy 8259 Protocol\r
+THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,\r
+WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.\r
\r
**/\r
\r
#include <FrameworkDxe.h>\r
\r
#include <Protocol/Legacy8259.h>\r
+#include <Protocol/PciIo.h>\r
\r
#include <Library/UefiBootServicesTableLib.h>\r
#include <Library/DebugLib.h>\r
#include <Library/IoLib.h>\r
+#include <Library/BaseLib.h>\r
+#include <Library/PcdLib.h>\r
+\r
+#include <IndustryStandard/Pci.h>\r
\r
-//\r
// 8259 Hardware definitions\r
-//\r
+\r
#define LEGACY_MODE_BASE_VECTOR_MASTER 0x08\r
#define LEGACY_MODE_BASE_VECTOR_SLAVE 0x70\r
\r
\r
#define LEGACY_8259_EOI 0x20\r
\r
-//\r
// Protocol Function Prototypes\r
-//\r
+\r
+\r
EFI_STATUS\r
EFIAPI\r
Interrupt8259SetVectorBase (\r
- IN EFI_LEGACY_8259_PROTOCOL *This,\r
- IN UINT8 MasterBase,\r
- IN UINT8 SlaveBase\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- MasterBase - TODO: add argument description\r
- SlaveBase - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ IN EFI_LEGACY_8259_PROTOCOL *This,\r
+ IN UINT8 MasterBase,\r
+ IN UINT8 SlaveBase\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
Interrupt8259GetMask (\r
- IN EFI_LEGACY_8259_PROTOCOL * This,\r
+ IN EFI_LEGACY_8259_PROTOCOL *This,\r
OUT UINT16 *LegacyMask, OPTIONAL\r
OUT UINT16 *LegacyEdgeLevel, OPTIONAL\r
OUT UINT16 *ProtectedMask, OPTIONAL\r
OUT UINT16 *ProtectedEdgeLevel OPTIONAL\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- LegacyMask - TODO: add argument description\r
- LegacyEdgeLevel - TODO: add argument description\r
- ProtectedMask - TODO: add argument description\r
- ProtectedEdgeLevel - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
Interrupt8259SetMask (\r
- IN EFI_LEGACY_8259_PROTOCOL * This,\r
- IN UINT16 *LegacyMask, OPTIONAL\r
- IN UINT16 *LegacyEdgeLevel, OPTIONAL\r
- IN UINT16 *ProtectedMask, OPTIONAL\r
- IN UINT16 *ProtectedEdgeLevel OPTIONAL\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- LegacyMask - TODO: add argument description\r
- LegacyEdgeLevel - TODO: add argument description\r
- ProtectedMask - TODO: add argument description\r
- ProtectedEdgeLevel - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ IN EFI_LEGACY_8259_PROTOCOL *This,\r
+ IN UINT16 *LegacyMask, OPTIONAL\r
+ IN UINT16 *LegacyEdgeLevel, OPTIONAL\r
+ IN UINT16 *ProtectedMask, OPTIONAL\r
+ IN UINT16 *ProtectedEdgeLevel OPTIONAL\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
Interrupt8259SetMode (\r
- IN EFI_LEGACY_8259_PROTOCOL * This,\r
- IN EFI_8259_MODE Mode,\r
- IN UINT16 *Mask, OPTIONAL\r
- IN UINT16 *EdgeLevel OPTIONAL\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- Mode - TODO: add argument description\r
- Mask - TODO: add argument description\r
- EdgeLevel - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ IN EFI_LEGACY_8259_PROTOCOL *This,\r
+ IN EFI_8259_MODE Mode,\r
+ IN UINT16 *Mask, OPTIONAL\r
+ IN UINT16 *EdgeLevel OPTIONAL\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
IN EFI_LEGACY_8259_PROTOCOL *This,\r
IN EFI_8259_IRQ Irq,\r
OUT UINT8 *Vector\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- Irq - TODO: add argument description\r
- Vector - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
Interrupt8259EnableIrq (\r
- IN EFI_LEGACY_8259_PROTOCOL *This,\r
- IN EFI_8259_IRQ Irq,\r
- IN BOOLEAN LevelTriggered\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- Irq - TODO: add argument description\r
- LevelTriggered - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ IN EFI_LEGACY_8259_PROTOCOL *This,\r
+ IN EFI_8259_IRQ Irq,\r
+ IN BOOLEAN LevelTriggered\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
Interrupt8259DisableIrq (\r
- IN EFI_LEGACY_8259_PROTOCOL *This,\r
- IN EFI_8259_IRQ Irq\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- Irq - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ IN EFI_LEGACY_8259_PROTOCOL *This,\r
+ IN EFI_8259_IRQ Irq\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
IN EFI_LEGACY_8259_PROTOCOL *This,\r
IN EFI_HANDLE PciHandle,\r
OUT UINT8 *Vector\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- PciHandle - TODO: add argument description\r
- Vector - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ );\r
\r
EFI_STATUS\r
EFIAPI\r
Interrupt8259EndOfInterrupt (\r
IN EFI_LEGACY_8259_PROTOCOL *This,\r
IN EFI_8259_IRQ Irq\r
- )\r
-/**\r
-\r
-Routine Description:\r
-\r
- TODO: Add function description\r
-\r
-Arguments:\r
-\r
- This - TODO: add argument description\r
- Irq - TODO: add argument description\r
-\r
-Returns:\r
-\r
- TODO: add return values\r
-\r
-**/\r
-;\r
+ );\r
\r
#endif\r