1 | ## @file
|
---|
2 | # Public definitions for PcAtChipset package.
|
---|
3 | #
|
---|
4 | # This package is designed to public interfaces and implementation which follows
|
---|
5 | # PcAt defacto standard.
|
---|
6 | #
|
---|
7 | # Copyright (c) 2009 - 2011, Intel Corporation. All rights reserved.<BR>
|
---|
8 | #
|
---|
9 | # This program and the accompanying materials
|
---|
10 | # are licensed and made available under the terms and conditions of the BSD License
|
---|
11 | # which accompanies this distribution. The full text of the license may be found at
|
---|
12 | # http://opensource.org/licenses/bsd-license.php
|
---|
13 | #
|
---|
14 | # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
|
---|
15 | # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
|
---|
16 | #
|
---|
17 | ##
|
---|
18 |
|
---|
19 | [Defines]
|
---|
20 | DEC_SPECIFICATION = 0x00010005
|
---|
21 | PACKAGE_NAME = PcAtChipsetPkg
|
---|
22 | PACKAGE_GUID = B728689A-52D3-4b8c-AE89-2CE5514CC6DC
|
---|
23 | PACKAGE_VERSION = 0.2
|
---|
24 |
|
---|
25 | [Includes]
|
---|
26 | Include
|
---|
27 |
|
---|
28 | [LibraryClasses]
|
---|
29 | ## @libraryclass Provides functions to manage I/O APIC Redirection Table Entries.
|
---|
30 | #
|
---|
31 | IoApicLib|Include/Library/IoApicLib.h
|
---|
32 |
|
---|
33 | [Guids]
|
---|
34 | gPcAtChipsetPkgTokenSpaceGuid = { 0x326ae723, 0xae32, 0x4589, { 0x98, 0xb8, 0xca, 0xc2, 0x3c, 0xdc, 0xc1, 0xb1 } }
|
---|
35 |
|
---|
36 | [PcdsFeatureFlag]
|
---|
37 | ## If TRUE, then the HPET Timer will be configured to use MSI interrupts if the HPET timer supports them.
|
---|
38 | # If FALSE, then the HPET Timer will be configued to use I/O APIC interrupts.
|
---|
39 | gPcAtChipsetPkgTokenSpaceGuid.PcdHpetMsiEnable|TRUE|BOOLEAN|0x00001000
|
---|
40 |
|
---|
41 | [PcdsFixedAtBuild, PcdsDynamic, PcdsDynamicEx, PcdsPatchableInModule]
|
---|
42 | ## Pcd8259LegacyModeMask defines the default mask value for platform. This value is determined
|
---|
43 | # 1) If platform only support pure UEFI, value should be set to 0xFFFF or 0xFFFE;
|
---|
44 | # Because only clock interrupt is allowed in legacy mode in pure UEFI platform.
|
---|
45 | # 2) If platform install CSM and use thunk module:
|
---|
46 | # a) If thunk call provided by CSM binary requires some legacy interrupt support, the corresponding bit
|
---|
47 | # should be opened as 0.
|
---|
48 | # For example, if keyboard interfaces provided CSM binary use legacy keyboard interrupt in 8259 bit 2, then
|
---|
49 | # the value should be set to 0xFFFC
|
---|
50 | # b) If all thunk call provied by CSM binary do not require legacy interrupt support, value should be set
|
---|
51 | # to 0xFFFF or 0xFFFE.
|
---|
52 | #
|
---|
53 | # The default value of legacy mode mask could be changed by EFI_LEGACY_8259_PROTOCOL->SetMask(). But it is rarely
|
---|
54 | # need change it except some special cases such as when initializing the CSM binary, it should be set to 0xFFFF to
|
---|
55 | # mask all legacy interrupt. Please restore the original legacy mask value if changing is made for these special case.
|
---|
56 | #
|
---|
57 | gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeMask|0xFFFF|UINT16|0x00000001
|
---|
58 |
|
---|
59 | ## Pcd8259LegacyModeEdgeLevel defines the default edge level for legacy mode's interrrupt controller.
|
---|
60 | gPcAtChipsetPkgTokenSpaceGuid.Pcd8259LegacyModeEdgeLevel|0x0000|UINT16|0x00000002
|
---|
61 |
|
---|
62 | ## This PCD specifies whether we need enable IsaAcpiCom1 device.
|
---|
63 | gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiCom1Enable|TRUE|BOOLEAN|0x00000003
|
---|
64 |
|
---|
65 | ## This PCD specifies whether we need enable IsaAcpiCom2 device.
|
---|
66 | gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiCom2Enable|TRUE|BOOLEAN|0x00000004
|
---|
67 |
|
---|
68 | ## This PCD specifies whether we need enable IsaAcpiPs2Keyboard device.
|
---|
69 | gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiPs2KeyboardEnable|TRUE|BOOLEAN|0x00000005
|
---|
70 |
|
---|
71 | ## This PCD specifies whether we need enable IsaAcpiPs2Mouse device.
|
---|
72 | gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiPs2MouseEnable|TRUE|BOOLEAN|0x00000006
|
---|
73 |
|
---|
74 | ## This PCD specifies whether we need enable IsaAcpiFloppyA device.
|
---|
75 | gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiFloppyAEnable|TRUE|BOOLEAN|0x00000007
|
---|
76 |
|
---|
77 | ## This PCD specifies whether we need enable IsaAcpiFloppyB device.
|
---|
78 | gPcAtChipsetPkgTokenSpaceGuid.PcdIsaAcpiFloppyBEnable|TRUE|BOOLEAN|0x00000008
|
---|
79 |
|
---|
80 | ## This PCD specifies the base address of the HPET timer.
|
---|
81 | gPcAtChipsetPkgTokenSpaceGuid.PcdHpetBaseAddress|0xFED00000|UINT32|0x00000009
|
---|
82 |
|
---|
83 | ## This PCD specifies the Local APIC Interrupt Vector for the HPET Timer.
|
---|
84 | gPcAtChipsetPkgTokenSpaceGuid.PcdHpetLocalApicVector|0x40|UINT8|0x0000000A
|
---|
85 |
|
---|
86 | ## This PCD specifies the defaut period of the HPET Timer in 100 ns units.
|
---|
87 | # The default value of 100000 100 ns units is the same as 10 ms.
|
---|
88 | gPcAtChipsetPkgTokenSpaceGuid.PcdHpetDefaultTimerPeriod|100000|UINT64|0x0000000B
|
---|
89 |
|
---|
90 | ## This PCD specifies the base address of the HPET timer.
|
---|
91 | gPcAtChipsetPkgTokenSpaceGuid.PcdIoApicBaseAddress|0xFEC00000|UINT32|0x0000000C
|
---|
92 |
|
---|