Add some ldm/vldm optimized CopyMem routines. Add performance macros to BDS
[mirror_edk2.git] / Omap35xxPkg / Omap35xxPkg.dsc
1 #/** @file
2 # Omap35xx SoC package.
3 #
4 # Copyright (c) 2009 - 2010, Apple Inc. All rights reserved.
5 #
6 # All rights reserved. This program and the accompanying materials
7 # are licensed and made available under the terms and conditions of the BSD License
8 # which accompanies this distribution. The full text of the license may be found at
9 # http://opensource.org/licenses/bsd-license.php
10 #
11 # THE PROGRAM IS DISTRIBUTED UNDER THE BSD LICENSE ON AN "AS IS" BASIS,
12 # WITHOUT WARRANTIES OR REPRESENTATIONS OF ANY KIND, EITHER EXPRESS OR IMPLIED.
13 #
14 #**/
15
16 ################################################################################
17 #
18 # Defines Section - statements that will be processed to create a Makefile.
19 #
20 ################################################################################
21 [Defines]
22 PLATFORM_NAME = Omap35xxPkg
23 PLATFORM_GUID = D196A631-B7B7-4953-A3EE-0F773CBABF20
24 PLATFORM_VERSION = 0.1
25 DSC_SPECIFICATION = 0x00010005
26 OUTPUT_DIRECTORY = Build/Omap35xxPkg
27 SUPPORTED_ARCHITECTURES = ARM
28 BUILD_TARGETS = DEBUG|RELEASE
29 SKUID_IDENTIFIER = DEFAULT
30 DEFINE TARGET_HACK = DEBUG
31
32
33 [LibraryClasses.common]
34 DebugLib|MdePkg/Library/BaseDebugLibNull/BaseDebugLibNull.inf
35
36 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf
37 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
38
39 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
40 BaseMemoryLib|MdePkg/Library/BaseMemoryLib/BaseMemoryLib.inf
41
42 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
43
44 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
45 DefaultExceptioHandlerLib|ArmPkg/Library/DefaultExceptionHandlerLib/DefaultExceptionHandlerLib.inf
46 PrePiLib|EmbeddedPkg/Library/PrePiLib/PrePiLib.inf
47
48 RealTimeClockLib|EmbeddedPkg/Library/TemplateRealTimeClockLib/TemplateRealTimeClockLib.inf
49
50 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
51 OmapLib|Omap35xxPkg/Library/OmapLib/OmapLib.inf
52
53 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
54 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
55 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
56 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
57 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
58
59 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
60 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
61 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
62
63 #
64 # Assume everything is fixed at build
65 #
66 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
67
68 UefiRuntimeLib|MdePkg/Library/UefiRuntimeLib/UefiRuntimeLib.inf
69
70 # UncachedMemoryAllocationLib|ArmPkg/Library/UncachedMemoryAllocationLib/UncachedMemoryAllocationLib.inf
71 UncachedMemoryAllocationLib|ArmPkg/Library/DebugUncachedMemoryAllocationLib/DebugUncachedMemoryAllocationLib.inf
72
73 CpuLib|MdePkg/Library/BaseCpuLib/BaseCpuLib.inf
74
75
76 [LibraryClasses.common.DXE_DRIVER]
77 DxeServicesLib|MdePkg/Library/DxeServicesLib/DxeServicesLib.inf
78
79
80 [LibraryClasses.ARM]
81 #
82 # Note: This NULL library feature is not yet in the edk2/BaseTools, but it is checked in to
83 # the BaseTools project. So you need to build with the BaseTools project util this feature gets synced.
84 #
85 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
86
87
88 [BuildOptions]
89 XCODE:*_*_ARM_ARCHCC_FLAGS == -arch armv7 -march=armv7
90 XCODE:*_*_ARM_ARCHASM_FLAGS == -arch armv7
91 XCODE:*_*_ARM_ARCHDLINK_FLAGS == -arch armv7
92
93 RVCT:*_*_ARM_ARCHCC_FLAGS == --cpu 7-A
94 RVCT:*_*_ARM_ARCHASM_FLAGS == --cpu 7-A
95
96
97 ################################################################################
98 #
99 # Pcd Section - list of all EDK II PCD Entries defined by this Platform
100 #
101 ################################################################################
102
103
104 [PcdsFixedAtBuild.common]
105
106 # DEBUG_ASSERT_ENABLED 0x01
107 # DEBUG_PRINT_ENABLED 0x02
108 # DEBUG_CODE_ENABLED 0x04
109 # CLEAR_MEMORY_ENABLED 0x08
110 # ASSERT_BREAKPOINT_ENABLED 0x10
111 # ASSERT_DEADLOOP_ENABLED 0x20
112 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
113
114 # DEBUG_INIT 0x00000001 // Initialization
115 # DEBUG_WARN 0x00000002 // Warnings
116 # DEBUG_LOAD 0x00000004 // Load events
117 # DEBUG_FS 0x00000008 // EFI File system
118 # DEBUG_POOL 0x00000010 // Alloc & Free's
119 # DEBUG_PAGE 0x00000020 // Alloc & Free's
120 # DEBUG_INFO 0x00000040 // Verbose
121 # DEBUG_DISPATCH 0x00000080 // PEI/DXE Dispatchers
122 # DEBUG_VARIABLE 0x00000100 // Variable
123 # DEBUG_BM 0x00000400 // Boot Manager
124 # DEBUG_BLKIO 0x00001000 // BlkIo Driver
125 # DEBUG_NET 0x00004000 // SNI Driver
126 # DEBUG_UNDI 0x00010000 // UNDI Driver
127 # DEBUG_LOADFILE 0x00020000 // UNDI Driver
128 # DEBUG_EVENT 0x00080000 // Event messages
129 # DEBUG_ERROR 0x80000000 // Error
130 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000004
131
132 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x07
133
134 gEmbeddedTokenSpaceGuid.PcdPrePiTempMemorySize|0
135 gEmbeddedTokenSpaceGuid.PcdPrePiBfvBaseAddress|0
136 gEmbeddedTokenSpaceGuid.PcdPrePiBfvSize|0
137 gEmbeddedTokenSpaceGuid.PcdFlashFvMainBase|0
138 gEmbeddedTokenSpaceGuid.PcdFlashFvMainSize|0
139 gEmbeddedTokenSpaceGuid.PcdPrePiHobBase|0x80001000
140 gEmbeddedTokenSpaceGuid.PcdPrePiStackBase|0x87FE0000 # stack at top of memory
141 gEmbeddedTokenSpaceGuid.PcdPrePiStackSize|0x20000 # 128K stack
142 gArmTokenSpaceGuid.PcdCpuVectorBaseAddress|0x80000000
143 gArmTokenSpaceGuid.PcdCpuResetAddress|0x80008000
144
145 gOmap35xxTokenSpaceGuid.PcdOmap35xxGpmcOffset|0x6E000000
146 gOmap35xxTokenSpaceGuid.PcdOmap35xxMMCHS1Base|0x4809C000
147
148 # Console
149 gOmap35xxTokenSpaceGuid.PcdOmap35xxConsoleUart|3
150
151 # Timers
152 gOmap35xxTokenSpaceGuid.PcdOmap35xxArchTimer|3
153 gOmap35xxTokenSpaceGuid.PcdOmap35xxFreeTimer|4
154 gEmbeddedTokenSpaceGuid.PcdTimerPeriod|100000
155 gEmbeddedTokenSpaceGuid.PcdEmbeddedFdPerformanceCounterPeriodInNanoseconds|77
156 gEmbeddedTokenSpaceGuid.PcdEmbeddedFdPerformanceCounterFrequencyInHz|13000000
157
158 #
159 # ARM Pcds
160 #
161 gArmTokenSpaceGuid.PcdArmUncachedMemoryMask|0x0000000040000000
162
163 ################################################################################
164 #
165 # Components Section - list of all EDK II Modules needed by this Platform
166 #
167 ################################################################################
168 [Components.common]
169 Omap35xxPkg/Library/Omap35xxTimerLib/Omap35xxTimerLib.inf
170 Omap35xxPkg/Library/OmapLib/OmapLib.inf
171
172 Omap35xxPkg/Flash/Flash.inf
173 Omap35xxPkg/MMCHSDxe/MMCHS.inf
174 Omap35xxPkg/SmbusDxe/Smbus.inf
175 Omap35xxPkg/Gpio/Gpio.inf
176 Omap35xxPkg/InterruptDxe/InterruptDxe.inf
177 Omap35xxPkg/TimerDxe/TimerDxe.inf
178 Omap35xxPkg/TPS65950Dxe/TPS65950.inf
179
180
181