2010-02-24 00:58:38 +01:00
|
|
|
## @file
|
2009-07-06 04:59:37 +02:00
|
|
|
# Public definitions for PcAtChipset package.
|
|
|
|
#
|
|
|
|
# This package is designed to public interfaces and implementation which follows
|
|
|
|
# PcAt defacto standard.
|
|
|
|
#
|
2018-05-25 10:29:48 +02:00
|
|
|
# Copyright (c) 2009 - 2018, Intel Corporation. All rights reserved.<BR>
|
2017-10-31 18:54:52 +01:00
|
|
|
# Copyright (c) 2017, AMD Inc. All rights reserved.<BR>
|
2009-07-06 04:59:37 +02:00
|
|
|
#
|
2010-04-24 14:07:51 +02:00
|
|
|
# This program and the accompanying materials
|
2009-07-06 04:59:37 +02:00
|
|
|
# are licensed and made available under the terms and conditions of the BSD License
|
|
|
|
# which accompanies this distribution. The full text of the license may be found at
|
|
|
|
# http://opensource.org/licenses/bsd-license.php
|
|
|
|
#
|
|
|
|
# THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
|
|
|
# WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
|
|
|
#
|
2010-02-24 00:58:38 +01:00
|
|
|
##
|
2009-07-06 04:59:37 +02:00
|
|
|
|
|
|
|
[Defines]
|
|
|
|
DEC_SPECIFICATION = 0x00010005
|
|
|
|
PACKAGE_NAME = PcAtChipsetPkg
|
2014-08-28 07:19:04 +02:00
|
|
|
PACKAGE_UNI_FILE = PcAtChipsetPkg.uni
|
2009-07-06 04:59:37 +02:00
|
|
|
PACKAGE_GUID = B728689A-52D3-4b8c-AE89-2CE5514CC6DC
|
2014-01-10 08:29:32 +01:00
|
|
|
PACKAGE_VERSION = 0.3
|
2009-07-06 04:59:37 +02:00
|
|
|
|
2011-09-02 04:43:51 +02:00
|
|
|
[Includes]
|
|
|
|
Include
|
|
|
|
|
|
|
|
[LibraryClasses]
|
|
|
|
## @libraryclass Provides functions to manage I/O APIC Redirection Table Entries.
|
|
|
|
#
|
|
|
|
IoApicLib|Include/Library/IoApicLib.h
|
|
|
|
|
Clean up DEC files:
1) Remove section header comment blocks that do not provide any information
2) Combine PCDs listed in multiple sections into a single section that supports multiple PCD types to reduce maintenance overhead
3) Remove ModuleTypeList comments from [Includes], [Protocols], [Ppis], and [Guids] sections that do not properly describe the module type restrictions.
4) Clean up formatting of GUID structure declarations
5) Remove ".common" from section names if they are not required.
6) Order sections consistently as [Defines], [Includes], [LibraryClasses], [Guid], [Ppis], [Protocols], [PcdsFeatureFlag], [PcdsFixedAtBuild], [PcdsPatchableInModule], [PcdsDynamic], and [PcdsDynamicEx]
git-svn-id: https://edk2.svn.sourceforge.net/svnroot/edk2/trunk/edk2@11634 6f19259b-4bc3-4df7-8a09-765794883524
2011-05-09 19:51:00 +02:00
|
|
|
[Guids]
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid = { 0x326ae723, 0xae32, 0x4589, { 0x98, 0xb8, 0xca, 0xc2, 0x3c, 0xdc, 0xc1, 0xb1 } }
|
|
|
|
|
2015-06-12 03:43:46 +02:00
|
|
|
#
|
|
|
|
# [Error.gPcAtChipsetPkgTokenSpaceGuid]
|
|
|
|
# 0x80000001 | Invalid value provided.
|
|
|
|
#
|
|
|
|
|
2011-09-02 04:43:51 +02:00
|
|
|
[PcdsFeatureFlag]
|
2014-08-28 07:19:04 +02:00
|
|
|
## Indicates the HPET Timer will be configured to use MSI interrupts if the HPET timer supports them, or use I/O APIC interrupts.<BR><BR>
|
|
|
|
# TRUE - Configures the HPET Timer to use MSI interrupts if the HPET Timer supports them.<BR>
|
|
|
|
# FALSE - Configures the HPET Timer to use I/O APIC interrupts.<BR>
|
|
|
|
# @Prompt Configure HPET to use MSI.
|
2011-09-02 04:43:51 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdHpetMsiEnable|TRUE|BOOLEAN|0x00001000
|
2014-08-28 07:19:04 +02:00
|
|
|
|
2011-05-04 22:56:30 +02:00
|
|
|
[PcdsFixedAtBuild, PcdsDynamic, PcdsDynamicEx, PcdsPatchableInModule]
|
2014-08-28 07:19:04 +02:00
|
|
|
## Pcd8259LegacyModeMask defines the default mask value for platform. This value is determined<BR><BR>
|
2009-07-06 04:59:37 +02:00
|
|
|
# 1) If platform only support pure UEFI, value should be set to 0xFFFF or 0xFFFE;
|
2014-08-28 07:19:04 +02:00
|
|
|
# Because only clock interrupt is allowed in legacy mode in pure UEFI platform.<BR>
|
|
|
|
# 2) If platform install CSM and use thunk module:<BR>
|
2009-07-06 04:59:37 +02:00
|
|
|
# a) If thunk call provided by CSM binary requires some legacy interrupt support, the corresponding bit
|
2014-08-28 07:19:04 +02:00
|
|
|
# should be opened as 0.<BR>
|
|
|
|
# For example, if keyboard interfaces provided CSM binary use legacy keyboard interrupt in 8259 bit 1, then
|
|
|
|
# the value should be set to 0xFFFC.<BR>
|
2009-07-06 04:59:37 +02:00
|
|
|
# b) If all thunk call provied by CSM binary do not require legacy interrupt support, value should be set
|
2014-08-28 07:19:04 +02:00
|
|
|
# to 0xFFFF or 0xFFFE.<BR>
|
2009-07-06 04:59:37 +02:00
|
|
|
#
|
|
|
|
# The default value of legacy mode mask could be changed by EFI_LEGACY_8259_PROTOCOL->SetMask(). But it is rarely
|
|
|
|
# need change it except some special cases such as when initializing the CSM binary, it should be set to 0xFFFF to
|
2014-08-28 07:19:04 +02:00
|
|
|
# mask all legacy interrupt. Please restore the original legacy mask value if changing is made for these special case.<BR>
|
|
|
|
# @Prompt 8259 Legacy Mode mask.
|
2010-04-02 07:22:40 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeMask|0xFFFF|UINT16|0x00000001
|
2009-07-06 09:40:18 +02:00
|
|
|
|
|
|
|
## Pcd8259LegacyModeEdgeLevel defines the default edge level for legacy mode's interrrupt controller.
|
2014-08-28 07:19:04 +02:00
|
|
|
# For the corresponding bits, 0 = Edge triggered and 1 = Level triggered.
|
|
|
|
# @Prompt 8259 Legacy Mode edge level.
|
2010-04-02 07:22:40 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0000|UINT16|0x00000002
|
2011-03-10 08:33:42 +01:00
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
## Indicates if we need enable IsaAcpiCom1 device.<BR><BR>
|
|
|
|
# TRUE - Enables IsaAcpiCom1 device.<BR>
|
|
|
|
# FALSE - Doesn't enable IsaAcpiCom1 device.<BR>
|
|
|
|
# @Prompt Enable IsaAcpiCom1 device.
|
2011-03-10 08:33:42 +01:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiCom1Enable|TRUE|BOOLEAN|0x00000003
|
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
## Indicates if we need enable IsaAcpiCom2 device.<BR><BR>
|
|
|
|
# TRUE - Enables IsaAcpiCom2 device.<BR>
|
|
|
|
# FALSE - Doesn't enable IsaAcpiCom2 device.<BR>
|
|
|
|
# @Prompt Enable IsaAcpiCom12 device.
|
2011-03-10 08:33:42 +01:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiCom2Enable|TRUE|BOOLEAN|0x00000004
|
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
## Indicates if we need enable IsaAcpiPs2Keyboard device.<BR><BR>
|
|
|
|
# TRUE - Enables IsaAcpiPs2Keyboard device.<BR>
|
|
|
|
# FALSE - Doesn't enable IsaAcpiPs2Keyboard device.<BR>
|
|
|
|
# @Prompt Enable IsaAcpiPs2Keyboard device.
|
2011-03-10 08:33:42 +01:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiPs2KeyboardEnable|TRUE|BOOLEAN|0x00000005
|
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
## Indicates if we need enable IsaAcpiPs2Mouse device.<BR><BR>
|
|
|
|
# TRUE - Enables IsaAcpiPs2Mouse device.<BR>
|
|
|
|
# FALSE - Doesn't enable IsaAcpiPs2Mouse device.<BR>
|
|
|
|
# @Prompt Enable IsaAcpiPs2Mouse device.
|
2011-03-10 08:33:42 +01:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiPs2MouseEnable|TRUE|BOOLEAN|0x00000006
|
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
## Indicates if we need enable IsaAcpiFloppyA device.<BR><BR>
|
|
|
|
# TRUE - Enables IsaAcpiFloppyA device.<BR>
|
|
|
|
# FALSE - Doesn't enable IsaAcpiFloppyA device.<BR>
|
|
|
|
# @Prompt Enable IsaAcpiFloppyA device.
|
2011-03-10 08:33:42 +01:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiFloppyAEnable|TRUE|BOOLEAN|0x00000007
|
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
## Indicates if we need enable IsaAcpiFloppyB device.<BR><BR>
|
|
|
|
# TRUE - Enables IsaAcpiFloppyB device.<BR>
|
|
|
|
# FALSE - Doesn't enable IsaAcpiFloppyB device.<BR>
|
|
|
|
# @Prompt Enable IsaAcpiFloppyB device.
|
2011-03-10 08:33:42 +01:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiFloppyBEnable|TRUE|BOOLEAN|0x00000008
|
2011-09-02 04:43:51 +02:00
|
|
|
|
|
|
|
## This PCD specifies the base address of the HPET timer.
|
2014-08-28 07:19:04 +02:00
|
|
|
# @Prompt HPET base address.
|
2011-09-02 04:43:51 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdHpetBaseAddress|0xFED00000|UINT32|0x00000009
|
|
|
|
|
|
|
|
## This PCD specifies the Local APIC Interrupt Vector for the HPET Timer.
|
2014-08-28 07:19:04 +02:00
|
|
|
# @Prompt HPET local APIC vector.
|
2011-09-02 04:43:51 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdHpetLocalApicVector|0x40|UINT8|0x0000000A
|
|
|
|
|
|
|
|
## This PCD specifies the defaut period of the HPET Timer in 100 ns units.
|
|
|
|
# The default value of 100000 100 ns units is the same as 10 ms.
|
2014-08-28 07:19:04 +02:00
|
|
|
# @Prompt Default period of HPET timer.
|
2011-09-02 04:43:51 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdHpetDefaultTimerPeriod|100000|UINT64|0x0000000B
|
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
## This PCD specifies the base address of the IO APIC.
|
|
|
|
# @Prompt IO APIC base address.
|
2011-09-02 04:43:51 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdIoApicBaseAddress|0xFEC00000|UINT32|0x0000000C
|
2015-01-23 05:49:00 +01:00
|
|
|
|
|
|
|
## This PCD specifies the minimal valid year in RTC.
|
|
|
|
# @Prompt Minimal valid year in RTC.
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdMinimalValidYear|1998|UINT16|0x0000000D
|
|
|
|
|
|
|
|
## This PCD specifies the maximal valid year in RTC.
|
|
|
|
# @Prompt Maximal valid year in RTC.
|
2015-06-12 03:43:46 +02:00
|
|
|
# @Expression 0x80000001 | gPcAtChipsetPkgTokenSpaceGuid.PcdMaximalValidYear < gPcAtChipsetPkgTokenSpaceGuid.PcdMinimalValidYear + 100
|
2015-06-11 09:14:18 +02:00
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdMaximalValidYear|2097|UINT16|0x0000000E
|
2011-12-13 09:33:18 +01:00
|
|
|
|
2014-08-14 16:30:32 +02:00
|
|
|
[PcdsFixedAtBuild, PcdsPatchableInModule]
|
|
|
|
## Defines the ACPI register set base address.
|
|
|
|
# The invalid 0xFFFF is as its default value. It must be configured to the real value.
|
|
|
|
# @Prompt ACPI Timer IO Port Address
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPortBaseAddress |0xFFFF|UINT16|0x00000010
|
|
|
|
|
|
|
|
## Defines the PCI Bus Number of the PCI device that contains the BAR and Enable for ACPI hardware registers.
|
|
|
|
# @Prompt ACPI Hardware PCI Bus Number
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBusNumber | 0x00| UINT8|0x00000011
|
|
|
|
|
|
|
|
## Defines the PCI Device Number of the PCI device that contains the BAR and Enable for ACPI hardware registers.
|
|
|
|
# The invalid 0xFF is as its default value. It must be configured to the real value.
|
|
|
|
# @Prompt ACPI Hardware PCI Device Number
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciDeviceNumber | 0xFF| UINT8|0x00000012
|
|
|
|
|
|
|
|
## Defines the PCI Function Number of the PCI device that contains the BAR and Enable for ACPI hardware registers.
|
|
|
|
# The invalid 0xFF is as its default value. It must be configured to the real value.
|
|
|
|
# @Prompt ACPI Hardware PCI Function Number
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciFunctionNumber | 0xFF| UINT8|0x00000013
|
|
|
|
|
|
|
|
## Defines the PCI Register Offset of the PCI device that contains the Enable for ACPI hardware registers.
|
|
|
|
# The invalid 0xFFFF is as its default value. It must be configured to the real value.
|
|
|
|
# @Prompt ACPI Hardware PCI Register Offset
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciEnableRegisterOffset |0xFFFF|UINT16|0x00000014
|
|
|
|
|
|
|
|
## Defines the bit mask that must be set to enable the APIC hardware register BAR.
|
|
|
|
# @Prompt ACPI Hardware PCI Bar Enable BitMask
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoBarEnableMask | 0x00| UINT8|0x00000015
|
|
|
|
|
|
|
|
## Defines the PCI Register Offset of the PCI device that contains the BAR for ACPI hardware registers.
|
|
|
|
# The invalid 0xFFFF is as its default value. It must be configured to the real value.
|
|
|
|
# @Prompt ACPI Hardware PCI Bar Register Offset
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBarRegisterOffset |0xFFFF|UINT16|0x00000016
|
|
|
|
|
|
|
|
## Defines the offset to the 32-bit Timer Value register that resides within the ACPI BAR.
|
|
|
|
# @Prompt Offset to 32-bit Timer register in ACPI BAR
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiPm1TmrOffset |0x0008|UINT16|0x00000017
|
2014-08-28 07:19:04 +02:00
|
|
|
|
2015-02-28 06:34:38 +01:00
|
|
|
## Defines the bit mask to retrieve ACPI IO Port Base Address
|
|
|
|
# @Prompt ACPI IO Port Base Address Mask
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPortBaseAddressMask |0xFFFE|UINT16|0x00000018
|
|
|
|
|
2016-06-23 11:53:56 +02:00
|
|
|
## Reset Control Register address in I/O space.
|
|
|
|
# @Prompt Reset Control Register address
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdResetControlRegister|0x64|UINT64|0x00000019
|
|
|
|
|
|
|
|
## 8bit Reset Control Register value for cold reset.
|
|
|
|
# @Prompt Reset Control Register value for cold reset
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdResetControlValueColdReset|0xFE|UINT8|0x0000001A
|
|
|
|
|
2017-10-31 18:54:52 +01:00
|
|
|
## Specifies the initial value for Register_A in RTC.
|
|
|
|
# @Prompt Initial value for Register_A in RTC.
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdInitialValueRtcRegisterA|0x26|UINT8|0x0000001B
|
|
|
|
|
|
|
|
## Specifies the initial value for Register_B in RTC.
|
|
|
|
# @Prompt Initial value for Register_B in RTC.
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdInitialValueRtcRegisterB|0x02|UINT8|0x0000001C
|
|
|
|
|
|
|
|
## Specifies the initial value for Register_D in RTC.
|
|
|
|
# @Prompt Initial value for Register_D in RTC.
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdInitialValueRtcRegisterD|0x00|UINT8|0x0000001D
|
|
|
|
|
2018-05-25 10:29:48 +02:00
|
|
|
## Specifies RTC Index Register address in I/O space.
|
|
|
|
# @Prompt RTC Index Register address
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdRtcIndexRegister|0x70|UINT8|0x0000001E
|
|
|
|
|
|
|
|
## Specifies RTC Target Register address in I/O space.
|
|
|
|
# @Prompt RTC Target Register address
|
|
|
|
gPcAtChipsetPkgTokenSpaceGuid.PcdRtcTargetRegister|0x71|UINT8|0x0000001F
|
|
|
|
|
2014-08-28 07:19:04 +02:00
|
|
|
[UserExtensions.TianoCore."ExtraFiles"]
|
2015-06-11 09:14:18 +02:00
|
|
|
PcAtChipsetPkgExtra.uni
|