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