]> git.proxmox.com Git - mirror_edk2.git/commitdiff
Update 8259 PCDs to support Dynamic and DynamicEx and PatchableInModule
authormdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 4 May 2011 20:56:30 +0000 (20:56 +0000)
committermdkinney <mdkinney@6f19259b-4bc3-4df7-8a09-765794883524>
Wed, 4 May 2011 20:56:30 +0000 (20:56 +0000)
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11618 6f19259b-4bc3-4df7-8a09-765794883524

PcAtChipsetPkg/8259InterruptControllerDxe/8259.c
PcAtChipsetPkg/8259InterruptControllerDxe/8259.inf
PcAtChipsetPkg/PcAtChipsetPkg.dec

index ec23bd9396087535419a32d1751adcd1751fedd6..5a862d13b8021d823b59c48ecafbf4e90ab4bb77 100644 (file)
@@ -1,7 +1,7 @@
 /** @file\r
   This contains the installation function for the driver.\r
 \r
-Copyright (c) 2005 - 2009, Intel Corporation. All rights reserved.<BR>\r
+Copyright (c) 2005 - 2011, 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
@@ -38,9 +38,9 @@ UINT8                     mMasterBase             = 0xff;
 UINT8                     mSlaveBase              = 0xff;\r
 EFI_8259_MODE             mMode                   = Efi8259ProtectedMode;\r
 UINT16                    mProtectedModeMask      = 0xffff;\r
-UINT16                    mLegacyModeMask         = FixedPcdGet16(Pcd8259LegacyModeMask);\r
+UINT16                    mLegacyModeMask;\r
 UINT16                    mProtectedModeEdgeLevel = 0x0000;\r
-UINT16                    mLegacyModeEdgeLevel    = FixedPcdGet16(Pcd8259LegacyModeEdgeLevel);\r
+UINT16                    mLegacyModeEdgeLevel;\r
 \r
 //\r
 // Worker Functions\r
@@ -588,6 +588,12 @@ Install8259 (
   EFI_STATUS   Status;\r
   EFI_8259_IRQ Irq;\r
 \r
+  //\r
+  // Initialze mask values from PCDs\r
+  //\r
+  mLegacyModeMask      = PcdGet16 (Pcd8259LegacyModeMask);\r
+  mLegacyModeEdgeLevel = PcdGet16 (Pcd8259LegacyModeEdgeLevel);\r
+\r
   //\r
   // Clear all pending interrupt\r
   //\r
index 5dae80548b497f9152a0a7cc6ec4df8b1e64ac5a..22aeeb32e0dfe2d3c2069ec79a07c3b260e6072f 100644 (file)
@@ -1,7 +1,7 @@
 ## @file\r
 # 8259 Interrupt Controller driver\r
 #\r
-# Copyright (c) 2005 - 2010, Intel Corporation. All rights reserved.<BR>\r
+# Copyright (c) 2005 - 2011, 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
@@ -40,9 +40,9 @@
   gEfiLegacy8259ProtocolGuid                    # PROTOCOL ALWAYS_PRODUCED\r
   gEfiPciIoProtocolGuid\r
 \r
-[FixedPcd]\r
-  gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeMask|0xFFFF\r
-  gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0000\r
+[Pcd]\r
+  gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeMask\r
+  gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel\r
   \r
 [Depex]\r
   TRUE\r
index c67c2f9f21810bf03f3818944bf5e119b87b7ccf..91b05b0cdde0d7dca131790c3bc7ac91cff37d01 100644 (file)
@@ -22,7 +22,7 @@
   PACKAGE_GUID                   = B728689A-52D3-4b8c-AE89-2CE5514CC6DC\r
   PACKAGE_VERSION                = 0.1\r
 \r
-[PcdsFixedAtBuild]\r
+[PcdsFixedAtBuild, PcdsDynamic, PcdsDynamicEx, PcdsPatchableInModule]\r
   ## Pcd8259LegacyModeMask defines the default mask value for platform. This value is determined\r
   #  1) If platform only support pure UEFI, value should be set to 0xFFFF or 0xFFFE;\r
   #     Because only clock interrupt is allowed in legacy mode in pure UEFI platform.\r
@@ -34,8 +34,6 @@
   #     b) If all thunk call provied by CSM binary do not require legacy interrupt support, value should be set\r
   #        to 0xFFFF or 0xFFFE.\r
   #\r
-  #  Because the value is used as intialization value, PCD's type should be FixedAtBuild.\r
-  #\r
   #  The default value of legacy mode mask could be changed by EFI_LEGACY_8259_PROTOCOL->SetMask(). But it is rarely\r
   #  need change it except some special cases such as when initializing the CSM binary, it should be set to 0xFFFF to \r
   #  mask all legacy interrupt. Please restore the original legacy mask value if changing is made for these special case.\r
@@ -45,7 +43,6 @@
   ## Pcd8259LegacyModeEdgeLevel defines the default edge level for legacy mode's interrrupt controller.\r
   gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0000|UINT16|0x00000002\r
 \r
-[PcdsFixedAtBuild, PcdsDynamic, PcdsPatchableInModule]\r
   ## This PCD specifies whether we need enable IsaAcpiCom1 device.\r
   gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiCom1Enable|TRUE|BOOLEAN|0x00000003\r
 \r