]> git.proxmox.com Git - mirror_edk2.git/blob - QuarkSocPkg/QuarkSocPkg.dsc
QuarkSocPkg: Add new package for Quark SoC X1000
[mirror_edk2.git] / QuarkSocPkg / QuarkSocPkg.dsc
1 ## @file
2 # INTEL Quark SoC Module Package Reference Implementations
3 #
4 # This DSC file is used for Package Level build.
5 #
6 # This Module provides FRAMEWORK reference implementation for INTEL Quark SoC.
7 # Copyright (c) 2013-2015 Intel Corporation.
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 ################################################################################
20 #
21 # Defines Section - statements that will be processed to create a Makefile.
22 #
23 ################################################################################
24 [Defines]
25 PLATFORM_NAME = QuarkSocPkg
26 PLATFORM_GUID = 5F9864F4-EAFB-4ded-A41A-CA501EE50502
27 PLATFORM_VERSION = 0.1
28 DSC_SPECIFICATION = 0x00010005
29 OUTPUT_DIRECTORY = Build/QuarkSocPkg
30 SUPPORTED_ARCHITECTURES = IA32|X64
31 BUILD_TARGETS = DEBUG|RELEASE
32 SKUID_IDENTIFIER = DEFAULT
33
34 ################################################################################
35 #
36 # SKU Identification section - list of all SKU IDs supported by this
37 # Platform.
38 #
39 ################################################################################
40 [SkuIds]
41 0|DEFAULT # The entry: 0|DEFAULT is reserved and always required.
42
43 ################################################################################
44 #
45 # Library Class section - list of all Library Classes needed by this Platform.
46 #
47 ################################################################################
48 [LibraryClasses]
49 #
50 # Entry point
51 #
52 PeimEntryPoint|MdePkg/Library/PeimEntryPoint/PeimEntryPoint.inf
53 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
54 #
55 # Basic
56 #
57 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
58 BaseMemoryLib|MdePkg/Library/BaseMemoryLibRepStr/BaseMemoryLibRepStr.inf
59 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
60 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
61 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
62 PciLib|MdePkg/Library/BasePciLibCf8/BasePciLibCf8.inf
63 PciCf8Lib|MdePkg/Library/BasePciCf8Lib/BasePciCf8Lib.inf
64 PciExpressLib|MdePkg/Library/BasePciExpressLib/BasePciExpressLib.inf
65 CacheMaintenanceLib|MdePkg/Library/BaseCacheMaintenanceLib/BaseCacheMaintenanceLib.inf
66 PeCoffLib|MdePkg/Library/BasePeCoffLib/BasePeCoffLib.inf
67 !if $(CFG_SOURCE_DEBUG) == 1
68 PeCoffExtraActionLib|SourceLevelDebugPkg/Library/PeCoffExtraActionLibDebug/PeCoffExtraActionLibDebug.inf
69 !else
70 PeCoffExtraActionLib|MdePkg/Library/BasePeCoffExtraActionLibNull/BasePeCoffExtraActionLibNull.inf
71 !endif
72 #
73 # UEFI & PI
74 #
75 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
76 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
77 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
78 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
79 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
80 PeiServicesTablePointerLib|MdePkg/Library/PeiServicesTablePointerLibIdt/PeiServicesTablePointerLibIdt.inf
81 PeiServicesLib|MdePkg/Library/PeiServicesLib/PeiServicesLib.inf
82 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
83 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
84 UefiCpuLib|UefiCpuPkg/Library/BaseUefiCpuLib/BaseUefiCpuLib.inf
85 #
86 # Framework
87 #
88 S3BootScriptLib|MdeModulePkg/Library/PiDxeS3BootScriptLib/DxeS3BootScriptLib.inf
89 S3IoLib|MdePkg/Library/BaseS3IoLib/BaseS3IoLib.inf
90 S3PciLib|MdePkg/Library/BaseS3PciLib/BaseS3PciLib.inf
91 #
92 # Generic Modules
93 #
94 OemHookStatusCodeLib|MdeModulePkg/Library/OemHookStatusCodeLibNull/OemHookStatusCodeLibNull.inf
95
96 #
97 # CPU
98 #
99 MtrrLib|QuarkSocPkg/QuarkNorthCluster/Library/MtrrLib/MtrrLib.inf
100 #
101 # Quark North Cluster
102 #
103 SmmLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCSmmLib/QNCSmmLib.inf
104 SmbusLib|QuarkSocPkg/QuarkNorthCluster/Library/SmbusLib/SmbusLib.inf
105 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/DxeAcpiTimerLib.inf
106 ResetSystemLib|QuarkSocPkg/QuarkNorthCluster/Library/ResetSystemLib/ResetSystemLib.inf
107 IntelQNCLib|QuarkSocPkg/QuarkNorthCluster/Library/IntelQNCLib/IntelQNCLib.inf
108 QNCAccessLib|QuarkSocPkg/QuarkNorthCluster/Library/QNCAccessLib/QNCAccessLib.inf
109 #
110 # Quark South Cluster
111 #
112 IohLib|QuarkSocPkg/QuarkSouthCluster/Library/IohLib/IohLib.inf
113 SerialPortLib|MdeModulePkg/Library/BaseSerialPortLib16550/BaseSerialPortLib16550.inf
114 PlatformHookLib|MdeModulePkg/Library/BasePlatformHookLibNull/BasePlatformHookLibNull.inf
115 #
116 # Misc
117 #
118 DebugLib|IntelFrameworkModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
119 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
120 PerformanceLib|MdePkg/Library/BasePerformanceLibNull/BasePerformanceLibNull.inf
121 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
122 !if $(CFG_SOURCE_DEBUG) == TRUE
123 DebugCommunicationLib|SourceLevelDebugPkg/Library/DebugCommunicationLibSerialPort/DebugCommunicationLibSerialPort.inf
124 !else
125 DebugAgentLib|MdeModulePkg/Library/DebugAgentLibNull/DebugAgentLibNull.inf
126 !endif
127
128 [LibraryClasses.IA32.PEIM,LibraryClasses.IA32.PEI_CORE]
129 #
130 # SEC and PEI phase common
131 #
132 PcdLib|MdePkg/Library/PeiPcdLib/PeiPcdLib.inf
133 HobLib|MdePkg/Library/PeiHobLib/PeiHobLib.inf
134 MemoryAllocationLib|MdePkg/Library/PeiMemoryAllocationLib/PeiMemoryAllocationLib.inf
135 ReportStatusCodeLib|MdeModulePkg/Library/PeiReportStatusCodeLib/PeiReportStatusCodeLib.inf
136 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxPeiLib.inf
137 PerformanceLib|MdeModulePkg/Library/PeiPerformanceLib/PeiPerformanceLib.inf
138 !if $(CFG_SOURCE_DEBUG) == TRUE
139 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SecPeiDebugAgentLib.inf
140 !endif
141 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
142
143 [LibraryClasses.IA32.SEC]
144 #
145 # SEC specific phase
146 #
147 ReportStatusCodeLib|MdePkg/Library/BaseReportStatusCodeLibNull/BaseReportStatusCodeLibNull.inf
148 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
149 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
150 TimerLib|PcAtChipsetPkg/Library/AcpiTimerLib/BaseAcpiTimerLib.inf
151
152 [LibraryClasses.IA32]
153 #
154 # DXE phase common
155 #
156 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
157 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
158 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
159 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
160 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxDxeLib.inf
161 !if $(CFG_SOURCE_DEBUG) == 1
162 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/DxeDebugAgentLib.inf
163 !endif
164
165 [LibraryClasses.IA32.DXE_SMM_DRIVER]
166 SmmServicesTableLib|MdePkg/Library/SmmServicesTableLib/SmmServicesTableLib.inf
167 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
168 MemoryAllocationLib|MdePkg/Library/SmmMemoryAllocationLib/SmmMemoryAllocationLib.inf
169 LockBoxLib|MdeModulePkg/Library/SmmLockBoxLib/SmmLockBoxSmmLib.inf
170 !if $(CFG_SOURCE_DEBUG) == TRUE
171 DebugAgentLib|SourceLevelDebugPkg/Library/DebugAgent/SmmDebugAgentLib.inf
172 !endif
173
174 [LibraryClasses.IA32.SMM_CORE]
175 ReportStatusCodeLib|MdeModulePkg/Library/SmmReportStatusCodeLib/SmmReportStatusCodeLib.inf
176
177 [LibraryClasses.IA32.DXE_RUNTIME_DRIVER]
178 ReportStatusCodeLib|MdeModulePkg/Library/RuntimeDxeReportStatusCodeLib/RuntimeDxeReportStatusCodeLib.inf
179
180 [LibraryClasses.IA32.UEFI_DRIVER,LibraryClasses.IA32.UEFI_APPLICATION]
181 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
182
183 ################################################################################
184 #
185 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
186 #
187 ################################################################################
188
189 [PcdsFixedAtBuild]
190 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialLineControl|0x03
191 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialFifoControl|0x07
192 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialDetectCable|FALSE
193 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialClockRate|44236800
194 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialPciDeviceInfo|{0x14, 0x05, 0x84, 0x00, 0xFF}
195 gEfiMdeModulePkgTokenSpaceGuid.PcdSerialRegisterStride|4
196
197 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBusNumber |0
198 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciDeviceNumber |31
199 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciFunctionNumber |0
200 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciEnableRegisterOffset|0x4b
201 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoBarEnableMask |0x80
202 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPciBarRegisterOffset |0x48
203 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiIoPortBaseAddress |0x1000
204 gPcAtChipsetPkgTokenSpaceGuid.PcdAcpiPm1TmrOffset |0x0008
205
206 [PcdsFeatureFlag]
207
208 ################################################################################
209 #
210 # Pcd Dynamic Section - list of all EDK II PCD Entries defined by this Platform
211 #
212 ################################################################################
213
214 [PcdsDynamicDefault.common.DEFAULT]
215
216 ###################################################################################################
217 #
218 # Components Section - list of the modules and components that will be processed by compilation
219 # tools and the EDK II tools to generate PE32/PE32+/Coff image files.
220 #
221 # Note: The EDK II DSC file is not used to specify how compiled binary images get placed
222 # into firmware volume images. This section is just a list of modules to compile from
223 # source into UEFI-compliant binaries.
224 # It is the FDF file that contains information on combining binary files into firmware
225 # volume images, whose concept is beyond UEFI and is described in PI specification.
226 # Binary modules do not need to be listed in this section, as they should be
227 # specified in the FDF file. For example: Shell binary (Shell_Full.efi), FAT binary (Fat.efi),
228 # Logo (Logo.bmp), and etc.
229 # There may also be modules listed in this section that are not required in the FDF file,
230 # When a module listed here is excluded from FDF file, then UEFI-compliant binary will be
231 # generated for it, but the binary will not be put into any firmware volume.
232 #
233 ###################################################################################################
234
235 [Components]
236 QuarkSocPkg/QuarkNorthCluster/MemoryInit/Pei/MemoryInitPei.inf
237 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmAccessPei/SmmAccessPei.inf
238 QuarkSocPkg/QuarkNorthCluster/Smm/Pei/SmmControlPei/SmmControlPei.inf
239 QuarkSocPkg/QuarkNorthCluster/QNCInit/Dxe/QNCInitDxe.inf
240 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmAccessDxe/SmmAccess.inf
241 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiRuntime.inf {
242 <LibraryClasses>
243 PciExpressLib|MdePkg/Library/DxeRuntimePciExpressLib/DxeRuntimePciExpressLib.inf
244 }
245 QuarkSocPkg/QuarkNorthCluster/Spi/PchSpiSmm.inf
246 QuarkSocPkg/QuarkNorthCluster/S3Support/Dxe/QncS3Support.inf {
247 <LibraryClasses>
248 DebugLib|MdePkg/Library/BaseDebugLibSerialPort/BaseDebugLibSerialPort.inf
249 PcdLib|MdePkg/Library/DxePcdLib/DxePcdLib.inf
250 }
251 QuarkSocPkg/QuarkNorthCluster/Smm/Dxe/SmmControlDxe/SmmControlDxe.inf
252 QuarkSocPkg/QuarkNorthCluster/Smm/DxeSmm/QncSmmDispatcher/QNCSmmDispatcher.inf
253
254 QuarkSocPkg/QuarkSouthCluster/Usb/Common/Pei/UsbPei.inf
255 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Pei/OhciPei.inf
256 QuarkSocPkg/QuarkSouthCluster/IohInit/Dxe/IohInitDxe.inf
257 QuarkSocPkg/QuarkSouthCluster/Usb/Ohci/Dxe/OhciDxe.inf
258 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDControllerDxe/SDControllerDxe.inf
259 QuarkSocPkg/QuarkSouthCluster/Sdio/Dxe/SDMediaDeviceDxe/SDMediaDeviceDxe.inf