blob: 9ed72092ea741aee1b5ffff45612da6fd14d07b9 [file] [log] [blame]
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -08001#/*
Mukesh Ojha8dc65f52018-03-27 00:59:30 +05302# * Copyright (c) 2015-2018, The Linux Foundation. All rights reserved.
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -08003# *
4# * Redistribution and use in source and binary forms, with or without
5# * modification, are permitted provided that the following conditions are
6# * met:
7# * * Redistributions of source code must retain the above copyright
8# * notice, this list of conditions and the following disclaimer.
9# * * Redistributions in binary form must reproduce the above
10# * copyright notice, this list of conditions and the following
11# * disclaimer in the documentation and/or other materials provided
12# * with the distribution.
13# * * Neither the name of The Linux Foundation nor the names of its
14# * contributors may be used to endorse or promote products derived
15# * from this software without specific prior written permission.
16# *
17# * THIS SOFTWARE IS PROVIDED "AS IS" AND ANY EXPRESS OR IMPLIED
18# * WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF
19# * MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NON-INFRINGEMENT
20# * ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT OWNER OR CONTRIBUTORS
21# * BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR
22# * CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF
23# * SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR PROFITS; OR
24# * BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY,
25# * WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE
26# * OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN
27# * IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
28#*/
29
30#/** @file QcomModulePkg.dsc
31# QcomModule package.
32
33################################################################################
34#
35# Defines Section - statements that will be processed to create a Makefile.
36#
37################################################################################
38[Defines]
39 PLATFORM_NAME = QcomModulePkg
40 PLATFORM_GUID = 4476742F-4C2D-BA9D-992A-CB82914F5E58
41 PLATFORM_VERSION = 0.1
42 DSC_SPECIFICATION = 0x00010005
43 OUTPUT_DIRECTORY = $(ABL_OUT_DIR)
44 SUPPORTED_ARCHITECTURES = ARM|AARCH64
45 BUILD_TARGETS = DEBUG|RELEASE
46 SKUID_IDENTIFIER = DEFAULT
47 FLASH_DEFINITION = QcomModulePkg/QcomModulePkg.fdf
48
49[LibraryClasses.common]
50 DebugLib|MdePkg/Library/UefiDebugLibConOut/UefiDebugLibConOut.inf
51 BaseStackCheckLib|MdePkg/Library/BaseStackCheckLib/BaseStackCheckLib.inf
52 DebugPrintErrorLevelLib|MdePkg/Library/BaseDebugPrintErrorLevelLib/BaseDebugPrintErrorLevelLib.inf
53 MemoryAllocationLib|MdePkg/Library/UefiMemoryAllocationLib/UefiMemoryAllocationLib.inf
54 BaseLib|MdePkg/Library/BaseLib/BaseLib.inf
55 BaseMemoryLib|ArmPkg/Library/BaseMemoryLibStm/BaseMemoryLibStm.inf
56 PrintLib|MdePkg/Library/BasePrintLib/BasePrintLib.inf
57 CacheMaintenanceLib|ArmPkg/Library/ArmCacheMaintenanceLib/ArmCacheMaintenanceLib.inf
58 IoLib|MdePkg/Library/BaseIoLibIntrinsic/BaseIoLibIntrinsic.inf
59 UefiLib|MdePkg/Library/UefiLib/UefiLib.inf
60 HobLib|MdePkg/Library/DxeHobLib/DxeHobLib.inf
61 UefiRuntimeServicesTableLib|MdePkg/Library/UefiRuntimeServicesTableLib/UefiRuntimeServicesTableLib.inf
62 DevicePathLib|MdePkg/Library/UefiDevicePathLib/UefiDevicePathLib.inf
63 UefiBootServicesTableLib|MdePkg/Library/UefiBootServicesTableLib/UefiBootServicesTableLib.inf
64 DxeServicesTableLib|MdePkg/Library/DxeServicesTableLib/DxeServicesTableLib.inf
65 UefiApplicationEntryPoint|MdePkg/Library/UefiApplicationEntryPoint/UefiApplicationEntryPoint.inf
66 PcdLib|MdePkg/Library/BasePcdLibNull/BasePcdLibNull.inf
67 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
Vijay Kumar Pendoti19aa5bd2017-03-15 19:27:50 +053068 LibUfdt|EmbeddedPkg/Library/LibUfdt/LibUfdt.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -080069 EfiFileLib|EmbeddedPkg/Library/EfiFileLib/EfiFileLib.inf
70 EblNetworkLib|EmbeddedPkg/Library/EblNetworkLib/EblNetworkLib.inf
71 TimerLib|ArmPkg/Library/ArmArchTimerLib/ArmArchTimerLib.inf
72 ArmGenericTimerCounterLib|ArmPkg/Library/ArmGenericTimerPhyCounterLib/ArmGenericTimerPhyCounterLib.inf
73 Zlib|QcomModulePkg/Library/zlib/zlib.inf
Jeevan Shriram5d2531c2016-08-19 13:34:56 -070074 DebugLib|MdeModulePkg/Library/PeiDxeDebugLibReportStatusCode/PeiDxeDebugLibReportStatusCode.inf
75 ReportStatusCodeLib|MdeModulePkg/Library/DxeReportStatusCodeLib/DxeReportStatusCodeLib.inf
76 DebugPrintErrorLevelLib|MdeModulePkg/Library/DxeDebugPrintErrorLevelLib/DxeDebugPrintErrorLevelLib.inf
Reut Zysmandd8774a2016-10-27 17:48:20 +030077 UefiDriverEntryPoint|MdePkg/Library/UefiDriverEntryPoint/UefiDriverEntryPoint.inf
78 PerformanceLib|MdeModulePkg/Library/DxePerformanceLib/DxePerformanceLib.inf
79 UefiHiiServicesLib|MdeModulePkg/Library/UefiHiiServicesLib/UefiHiiServicesLib.inf
Shivaprasad Hongala2c4dd72017-04-27 14:33:18 -070080 AvbLib|QcomModulePkg/Library/avb/AvbLib.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -080081
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070082[LibraryClasses.ARM]
83 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf
84 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
85
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -080086[LibraryClasses.AARCH64]
87 ArmLib|ArmPkg/Library/ArmLib/AArch64/AArch64Lib.inf
88 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
89
90[LibraryClasses.common.UEFI_APPLICATION]
91 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -080092 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
93
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070094[BuildOptions.common]
Jeevan Shriramd9ff7eb2017-07-28 12:00:18 -070095 GCC:*_*_*_ARCHCC_FLAGS = -Wno-shift-negative-value -fstack-protector-all -Wno-varargs -fno-common
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070096 GCC:*_*_*_DLINK_FLAGS = -Ttext=0x0
Jeevan Shriramd9ff7eb2017-07-28 12:00:18 -070097 GCC:*_*_*_CC_FLAGS = -DZ_SOLO
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070098
Jeevan Shriram2eb8ded2016-08-17 14:35:17 -070099 !if $(VERIFIED_BOOT)
100 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT
101 !endif
Shivaprasad Hongal3860bbf2017-04-27 17:40:13 -0700102 !if $(VERIFIED_BOOT_2)
103 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT_2
104 !endif
Zhen Kongdd5c5e32017-07-05 13:44:45 -0700105 !if $(VERIFIED_BOOT_LE)
106 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT_LE
107 !endif
Vijay Kumar Pendoti9946e042016-09-16 17:38:51 +0530108 !if $(USER_BUILD_VARIANT) == 0
109 GCC:*_*_*_CC_FLAGS = -DENABLE_UPDATE_PARTITIONS_CMDS -DENABLE_BOOT_CMD -DENABLE_DEVICE_CRITICAL_LOCK_UNLOCK_CMDS
lijuangd5482892016-12-13 17:46:31 +0800110 !else
111 GCC:*_*_*_CC_FLAGS = -DUSER_BUILD_VARIANT
Vijay Kumar Pendoti9946e042016-09-16 17:38:51 +0530112 !endif
Jeevan Shriram995c2312017-10-10 14:25:00 -0700113 !if $(ENABLE_LE_VARIANT) == 1
114 GCC:*_*_*_CC_FLAGS = -DENABLE_LE_VARIANT
115 !endif
Mukesh Ojha8dc65f52018-03-27 00:59:30 +0530116 !if $(BUILD_SYSTEM_ROOT_IMAGE)
117 GCC:*_*_*_CC_FLAGS = -DBUILD_SYSTEM_ROOT_IMAGE
118 !endif
Mukesh Ojhad29676a2018-04-10 17:37:56 +0530119 !if $(DISABLE_PARALLEL_DOWNLOAD_FLASH) == 1
120 GCC:*_*_*_CC_FLAGS = -DDISABLE_PARALLEL_DOWNLOAD_FLASH
121 !endif
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800122
123[PcdsFixedAtBuild.common]
124
125# DEBUG_ASSERT_ENABLED 0x01
126# DEBUG_PRINT_ENABLED 0x02
127# DEBUG_CODE_ENABLED 0x04
128# CLEAR_MEMORY_ENABLED 0x08
129# ASSERT_BREAKPOINT_ENABLED 0x10
130# ASSERT_DEADLOOP_ENABLED 0x20
131
132 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
Jeevan Shriram5d2531c2016-08-19 13:34:56 -0700133 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000042
134 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800135
136################################################################################
137#
138# Components Section - list of all EDK II Modules needed by this Platform
139#
140################################################################################
141[Components.common]
142
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800143 QcomModulePkg/Application/LinuxLoader/LinuxLoader.inf {
144 <LibraryClasses>
145 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
Vijay Kumar Pendoti19aa5bd2017-03-15 19:27:50 +0530146 LibUfdt|EmbeddedPkg/Library/LibUfdt/LibUfdt.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800147 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
148 BootLib|QcomModulePkg/Library/BootLib/BootLib.inf
Jeevan Shriram410e7b42017-01-19 16:43:08 -0800149 StackCanary|QcomModulePkg/Library/StackCanary/StackCanary.inf
lijuang4a9163b2016-11-16 20:01:34 +0800150 FastbootLib|QcomModulePkg/Library/FastbootLib/FastbootLib.inf
Shivaprasad Hongala2c4dd72017-04-27 14:33:18 -0700151 AvbLib|QcomModulePkg/Library/avb/AvbLib.inf
Trilok Sonieb1ca962017-08-15 17:17:14 -0700152 UbsanLib|QcomModulePkg/Library/UbsanLib/UbsanLib.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800153 }