]> git.proxmox.com Git - mirror_edk2.git/blame - QuarkSocPkg/QuarkSocPkg.dec
BaseTools: Fix corner-cases of --hash feature
[mirror_edk2.git] / QuarkSocPkg / QuarkSocPkg.dec
CommitLineData
9b6bbcdb
MK
1## @file\r
2# INTEL Quark SoC Module Package Reference Implementations\r
3#\r
4# This Module provides FRAMEWORK reference implementation for INTEL Quark SoC.\r
5# Copyright (c) 2013-2015 Intel Corporation.\r
6#\r
c9f231d0 7# SPDX-License-Identifier: BSD-2-Clause-Patent\r
9b6bbcdb
MK
8#\r
9##\r
10\r
11\r
12################################################################################\r
13#\r
14# Defines Section - statements that will be processed to create a Makefile.\r
15#\r
16################################################################################\r
17\r
18[Defines]\r
19 DEC_SPECIFICATION = 0x00010005\r
20 PACKAGE_NAME = QuarkSocPkg\r
21 PACKAGE_GUID = 28DECF17-6C75-448f-87DC-BDE4BD579919\r
22 PACKAGE_VERSION = 0.1\r
23\r
24\r
25\r
26################################################################################\r
27#\r
28# Include Section - list of Include Paths that are provided by this package.\r
29# Comments are used for Keywords and Module Types.\r
30#\r
31# Supported Module Types:\r
32# SEC PEIM DXE_DRIVER DXE_RUNTIME_DRIVER DXE_SMM_DRIVER DXE_SAL_DRIVER UEFI_DRIVER BASE\r
33#\r
34################################################################################\r
35[Includes]\r
36 #\r
37 # North Cluster\r
38 #\r
39 QuarkNorthCluster/Include\r
40 QuarkNorthCluster/MemoryInit/Pei\r
41\r
42 #\r
43 # South Cluster\r
44 #\r
45 QuarkSouthCluster/Include\r
46\r
47################################################################################\r
48#\r
49# Library Class Header section - list of Library Class header files that are\r
50# provided by this package.\r
51#\r
52################################################################################\r
53[LibraryClasses]\r
54 #\r
55 # North Cluster\r
56 #\r
57 QNCAccessLib|QuarkNorthCluster/Include/Library/QNCAccessLib.h\r
58 IntelQNCLib|QuarkNorthCluster/Include/Library/IntelQNCLib.h\r
59 IohLib|QuarkSouthCluster/Include/Library/IohLib.h\r
60 I2cLib|QuarkSouthCluster/Include/Library/I2cLib.h\r
61\r
62################################################################################\r
63#\r
64# Global Guid Definition section - list of Global Guid C Name Data Structures\r
65# that are provided by this package.\r
66#\r
67################################################################################\r
68[Guids]\r
69 #\r
70 # North Cluster\r
71 #\r
72 gEfiQuarkNcSocIdTokenSpaceGuid = { 0xca452c6a, 0xdf0c, 0x4dc9, { 0x82, 0xfb, 0xea, 0xe2, 0xab, 0x31, 0x29, 0x46 }}\r
73 gQncS3CodeInLockBoxGuid = { 0x1f18c5b3, 0x29ed, 0x4d9e, {0xa5, 0x4, 0x6d, 0x97, 0x8e, 0x7e, 0xd5, 0x69}}\r
74 gQncS3ContextInLockBoxGuid = { 0xe5769ea9, 0xe706, 0x454b, {0x95, 0x7f, 0xaf, 0xc6, 0xdb, 0x4b, 0x8a, 0xd}}\r
75\r
76 #\r
77 # South Cluster\r
78 #\r
79 gEfiQuarkSCSocIdTokenSpaceGuid = { 0xef251b71, 0xceed, 0x484e, { 0x82, 0xe3, 0x3a, 0x1f, 0x34, 0xf5, 0x12, 0xe2 }}\r
80\r
81################################################################################\r
82#\r
83# Global Ppi Definition section - list of Global Ppi C Name Data Structures\r
84# that are provided by this package.\r
85#\r
86################################################################################\r
87[Ppis]\r
88 #\r
89 # North Cluster\r
90 #\r
91 gQNCMemoryInitPpiGuid = { 0x21ff1fee, 0xd33a, 0x4fce, { 0xa6, 0x5e, 0x95, 0x5e, 0xa3, 0xc4, 0x1f, 0x40}}\r
92\r
93################################################################################\r
94#\r
95# Global Protocols Definition section - list of Global Protocols C Name Data\r
96# Structures that are provided by this package.\r
97#\r
98################################################################################\r
99[Protocols]\r
100 #\r
101 # North Cluster\r
102 #\r
103 gEfiPlatformPolicyProtocolGuid = { 0x2977064F, 0xAB96, 0x4FA9, { 0x85, 0x45, 0xF9, 0xC4, 0x02, 0x51, 0xE0, 0x7F }}\r
104 gEfiSmmIchnDispatch2ProtocolGuid = { 0xadf3a128, 0x416d, 0x4060, { 0x8d, 0xdf, 0x30, 0xa1, 0xd7, 0xaa, 0xb6, 0x99 }}\r
105 gEfiSpiProtocolGuid = { 0x1156efc6, 0xea32, 0x4396, { 0xb5, 0xd5, 0x26, 0x93, 0x2e, 0x83, 0xc3, 0x13 }}\r
106 gEfiSmmSpiProtocolGuid = { 0xD9072C35, 0xEB8F, 0x43ad, { 0xA2, 0x20, 0x34, 0xD4, 0x0E, 0x2A, 0x82, 0x85 }}\r
107 gEfiQncS3SupportProtocolGuid = { 0xe287d20b, 0xd897, 0x4e1e, { 0xa5, 0xd9, 0x97, 0x77, 0x63, 0x93, 0x6a, 0x4 }}\r
108\r
109 #\r
110 # South Cluster\r
111 #\r
112 gEfiSDHostIoProtocolGuid = {0xb63f8ec7, 0xa9c9, 0x4472, {0xa4, 0xc0, 0x4d, 0x8b, 0xf3, 0x65, 0xcc, 0x51}}\r
113\r
114################################################################################\r
115#\r
116# PCD Declarations section - list of all PCDs Declared by this Package\r
117# Only this package should be providing the\r
118# declaration, other packages should not.\r
119#\r
120################################################################################\r
121\r
122[PcdsFeatureFlag]\r
123 #\r
124 # North Cluster\r
125 #\r
126 gEfiQuarkNcSocIdTokenSpaceGuid.PcdSmbaIoBaseAddressFixed|TRUE|BOOLEAN|0x10000001\r
127\r
128 #\r
129 # South Cluster\r
130 #\r
131 gEfiQuarkSCSocIdTokenSpaceGuid.PcdEhciRecoveryEnabled|FALSE|BOOLEAN|0x10000003\r
132 gEfiQuarkSCSocIdTokenSpaceGuid.PcdI2CFastModeEnabled|FALSE|BOOLEAN|0x10000005\r
133\r
134 #\r
135 # Feature Flag equivalent to linux SDHCI_QUIRK_NO_HISPD_BIT to stop\r
136 # setting of SD HCI hi_spd_en bit in HOST_CTL register.\r
137 #\r
138 # Alway TRUE ie high speed enable bit must never\r
139 # be set so we stay within SD interface Setup/Hold time.\r
140 #\r
141 gEfiQuarkSCSocIdTokenSpaceGuid.PcdSdHciQuirkNoHiSpd|TRUE|BOOLEAN|0x10000004\r
142\r
143[PcdsFixedAtBuild]\r
144 #\r
145 # North Cluster\r
146 #\r
147\r
148 # Values of Io Port Base Address, MMIO base address and space size.\r
149 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPm1blkIoBaseAddress|0x1000|UINT16|0x10000200\r
150 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPmbaIoBaseAddress|0x1010|UINT16|0x10000201\r
151 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPmbaIoLVL2|0x1014|UINT16|0x10000202\r
152\r
153 gEfiQuarkNcSocIdTokenSpaceGuid.PcdGbaIoBaseAddress|0x1080|UINT16|0x10000205\r
154 gEfiQuarkNcSocIdTokenSpaceGuid.PcdGpe0blkIoBaseAddress|0x1100|UINT16|0x10000206\r
155 gEfiQuarkNcSocIdTokenSpaceGuid.PcdSmbaIoBaseAddress|0x1040|UINT16|0x10000207\r
156 gEfiQuarkNcSocIdTokenSpaceGuid.PcdWdtbaIoBaseAddress|0x1140|UINT16|0x10000209\r
157\r
158 gEfiQuarkNcSocIdTokenSpaceGuid.PcdRcbaMmioBaseAddress|0xFED1C000|UINT64|0x1000020B\r
159 gEfiQuarkNcSocIdTokenSpaceGuid.PcdIoApicBaseAddress|0xFEC00000|UINT64|0x1000020C\r
160\r
161 gEfiQuarkNcSocIdTokenSpaceGuid.PcdIoApicSize|0x1000|UINT64|0x1000020D\r
162 gEfiQuarkNcSocIdTokenSpaceGuid.PcdRcbaMmioSize|0x4000|UINT64|0x1000020E\r
163\r
164 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciExpressSize|0x02000000|UINT64|0x1000020F\r
165 gEfiQuarkNcSocIdTokenSpaceGuid.PcdHpetBaseAddress|0xFED00000|UINT64|0x10000210\r
166 gEfiQuarkNcSocIdTokenSpaceGuid.PcdHpetSize|0x400|UINT64|0x10000211\r
167 gEfiQuarkNcSocIdTokenSpaceGuid.PcdTSegSize|0x200000|UINT32|0x10000212\r
168\r
169 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeIoBase|0x2000|UINT16|0x10000214\r
170 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeIoSize|0xE000|UINT16|0x10000215\r
171 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory32Base|0x90000000|UINT32|0x1000021B\r
172 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory32Size|0x20000000|UINT32|0x1000021C\r
173 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory64Base|0xB0000000|UINT64|0x1000021D\r
174 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPciHostBridgeMemory64Size|0x30000000|UINT64|0x1000021E\r
175\r
176 # Values for programming Interrupt Route Configuration Registers:\r
177 # Indicates which interrupt routing is connected to the INTA/B/C/D pins reported in the\r
178 # "DxIP" register fields. This will be the internal routing, the device interrupt is connected\r
179 # to the interrupt controller.\r
180 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQuarkAgent0IR|0x0000|UINT16|0x10000223\r
181 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQuarkAgent1IR|0x7654|UINT16|0x10000224\r
182 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQuarkAgent2IR|0x0000|UINT16|0x10000225\r
183 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQuarkAgent3IR|0x3210|UINT16|0x10000226\r
184\r
185 gEfiQuarkNcSocIdTokenSpaceGuid.PcdSmmActivationPort|0xb2|UINT16|0x10000232\r
186 gEfiQuarkNcSocIdTokenSpaceGuid.PcdSmmDataPort|0xb3|UINT16|0x10000233\r
187 gEfiQuarkNcSocIdTokenSpaceGuid.PcdSmmActivationData|0x55|UINT8|0x10000234\r
188 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPlatformSmbusAddrNum|0x0|UINT32|0x10000235\r
189 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPlatformSmbusAddrTable|0x0|UINT64|0x10000236\r
190\r
191 gEfiQuarkNcSocIdTokenSpaceGuid.PcdESramMemorySize|0x00080000|UINT32|0x10000240\r
192 gEfiQuarkNcSocIdTokenSpaceGuid.PcdDeviceEnables|0x03|UINT32|0x10000237\r
193 gEfiQuarkNcSocIdTokenSpaceGuid.PcdPcieRootPortConfiguration|{0x00, 0x01, 0x01, 0x00, 0x00, 0x01, 0x02, 0x00}|VOID*|0x10000239\r
194 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQuarkMicrocodeFile |{ 0x8B, 0xEA, 0x5E, 0xD7, 0xD2, 0x23, 0xD4, 0x4E, 0xBC, 0x4F, 0x57, 0x51, 0xD4, 0xA1, 0x8D, 0xCF }|VOID*|0x1000023A\r
195\r
196 #\r
197 # South Cluster\r
198 #\r
199 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohI2cMmioBase|0xA001F000|UINT64|0x20000005\r
200 gEfiQuarkSCSocIdTokenSpaceGuid.PcdPeiP2PMemoryBaseAddress|0xA0000000|UINT32|0x20000006\r
201 gEfiQuarkSCSocIdTokenSpaceGuid.PcdPeiQNCUsbControllerMemoryBaseAddress|0xA0010000|UINT32|0x20000007\r
202 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioMmioBase|0xA0020000|UINT64|0x20000008\r
203 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohMac0MmioBase|0xA0024000|UINT64|0x20000009\r
204 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohMac1MmioBase|0xA0028000|UINT64|0x2000000A\r
205\r
206 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohUartBusNumber|0x00|UINT8|0x20000013\r
207 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohUartDevNumber|0x14|UINT8|0x20000014\r
208 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohUartFunctionNumber|0x5|UINT8|0x20000001\r
209 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioBusNumber|0x00|UINT8|0x20000029\r
210 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioDevNumber|0x15|UINT8|0x2000002A\r
211 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioFunctionNumber|0x2|UINT8|0x2000002B\r
212 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohGpioBarRegister|0x14|UINT8|0x2000002D\r
213\r
214[PcdsDynamic, PcdsDynamicEx]\r
215 #\r
216 # North Cluster\r
217 #\r
218 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQncS3CodeInLockBoxAddress|0|UINT64|0x30000026\r
219 gEfiQuarkNcSocIdTokenSpaceGuid.PcdQncS3CodeInLockBoxSize|0|UINT64|0x30000027\r
220\r
221 ## Intel(R) Quark(TM) Soc X1000 processor MRC Parameters. Default is for Galileo Gen 2 platform.<BR><BR>\r
222 # @Prompt Intel(R) Quark(TM) Soc X1000 processor MRC Parameters.\r
223 gEfiQuarkNcSocIdTokenSpaceGuid.PcdMrcParameters|{0x08, 0x00, 0x02, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x01, 0x01, 0x01, 0x00, 0x03, 0x00, 0x00, 0x02, 0x00, 0x00, 0x01, 0x01, 0x01, 0x7c, 0x92, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x10, 0x27, 0x00, 0x00, 0x40, 0x9c, 0x00, 0x00, 0x06}|VOID*|0x40000001\r
224\r
225 #\r
226 # South Cluster\r
227 #\r
228 ## MAC0 address for the Ethernet Controller in Intel(R) Quark(TM) Soc X1000 processor. Default is 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff.<BR><BR>\r
229 # @Prompt Ethernet MAC 0 Address.\r
230 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac0|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}|VOID*|0x50000001\r
231\r
232 ## MAC1 address for the Ethernet Controller in Intel(R) Quark(TM) Soc X1000 processor. Default is 0xff, 0xff, 0xff, 0xff, 0xff, 0xff, 0xff.<BR><BR>\r
233 # @Prompt Ethernet MAC 1 Address.\r
234 gEfiQuarkSCSocIdTokenSpaceGuid.PcdIohEthernetMac1|{0xff, 0xff, 0xff, 0xff, 0xff, 0xff}|VOID*|0x50000002\r