blob: b9ac2d202ca66bf4af6e7376ff5d1568ded0746e [file] [log] [blame]
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -08001#/*
Venkata Narendra Kumar Gutta5e03cad2020-01-07 14:17:28 -08002# * Copyright (c) 2015-2020, 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
Shivaprasad Hongala2c4dd72017-04-27 14:33:18 -070079 AvbLib|QcomModulePkg/Library/avb/AvbLib.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -080080
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070081[LibraryClasses.ARM]
82 ArmLib|ArmPkg/Library/ArmLib/ArmV7/ArmV7Lib.inf
83 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
84
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -080085[LibraryClasses.AARCH64]
86 ArmLib|ArmPkg/Library/ArmLib/AArch64/AArch64Lib.inf
87 NULL|ArmPkg/Library/CompilerIntrinsicsLib/CompilerIntrinsicsLib.inf
88
89[LibraryClasses.common.UEFI_APPLICATION]
90 ReportStatusCodeLib|IntelFrameworkModulePkg/Library/DxeReportStatusCodeLibFramework/DxeReportStatusCodeLib.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -080091 ExtractGuidedSectionLib|MdePkg/Library/DxeExtractGuidedSectionLib/DxeExtractGuidedSectionLib.inf
92
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070093[BuildOptions.common]
Mayank Groverb54c9702020-03-18 15:12:36 +053094 GCC:*_*_*_ARCHCC_FLAGS = -Wno-shift-negative-value -fstack-protector-all -Wno-varargs -fno-common -Wno-misleading-indentation -Wno-unknown-warning-option
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070095 GCC:*_*_*_DLINK_FLAGS = -Ttext=0x0
Jeevan Shriramd9ff7eb2017-07-28 12:00:18 -070096 GCC:*_*_*_CC_FLAGS = -DZ_SOLO
Jeevan Shriramd5d169f2018-04-20 16:09:10 -070097 GCC:*_*_*_CC_FLAGS = -DPRODUCT_NAME=\"$(BOARD_BOOTLOADER_PRODUCT_NAME)\"
Alexander Martinz968ec912020-06-02 14:06:24 +020098 GCC:*_*_*_CC_FLAGS = -DPRODUCT_MODEL=\"$(BOARD_BOOTLOADER_PRODUCT_MODEL)\"
Alexander Martinza5ea42b2021-09-10 19:50:46 +020099 GCC:*_*_*_CC_FLAGS = -DPRODUCT_BOOTLOADER_VERSION=\"$(BOARD_BOOTLOADER_VERSION)\"
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -0700100
Jeevan Shriram2eb8ded2016-08-17 14:35:17 -0700101 !if $(VERIFIED_BOOT)
102 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT
103 !endif
Shivaprasad Hongal3860bbf2017-04-27 17:40:13 -0700104 !if $(VERIFIED_BOOT_2)
105 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT_2
106 !endif
Zhen Kongdd5c5e32017-07-05 13:44:45 -0700107 !if $(VERIFIED_BOOT_LE)
108 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT_LE
109 !endif
Jeevan Shriram0a3ba0b2019-01-02 23:21:12 -0800110 !if $(AB_RETRYCOUNT_DISABLE)
111 GCC:*_*_*_CC_FLAGS = -DAB_RETRYCOUNT_DISABLE
112 !endif
Anuj Gargae409552020-06-03 19:21:55 +0530113 !if $(TARGET_BOARD_TYPE_AUTO) == 1
114 GCC:*_*_*_CC_FLAGS = -DTARGET_BOARD_TYPE_AUTO
115 !endif
vijay.rayabarapu18a64042018-08-08 02:23:27 +0530116 !if $(VERITY_LE)
117 GCC:*_*_*_CC_FLAGS = -DVERITY_LE
118 !endif
Vijay Kumar Pendoti9946e042016-09-16 17:38:51 +0530119 !if $(USER_BUILD_VARIANT) == 0
120 GCC:*_*_*_CC_FLAGS = -DENABLE_UPDATE_PARTITIONS_CMDS -DENABLE_BOOT_CMD -DENABLE_DEVICE_CRITICAL_LOCK_UNLOCK_CMDS
lijuangd5482892016-12-13 17:46:31 +0800121 !else
Alexander Martinz33456a52020-04-13 08:03:46 +0200122 GCC:*_*_*_CC_FLAGS = -DENABLE_UPDATE_PARTITIONS_CMDS -DENABLE_BOOT_CMD -DENABLE_DEVICE_CRITICAL_LOCK_UNLOCK_CMDS -DUSER_BUILD_VARIANT
Vijay Kumar Pendoti9946e042016-09-16 17:38:51 +0530123 !endif
Jeevan Shriram995c2312017-10-10 14:25:00 -0700124 !if $(ENABLE_LE_VARIANT) == 1
125 GCC:*_*_*_CC_FLAGS = -DENABLE_LE_VARIANT
126 !endif
Mukesh Ojha8dc65f52018-03-27 00:59:30 +0530127 !if $(BUILD_SYSTEM_ROOT_IMAGE)
128 GCC:*_*_*_CC_FLAGS = -DBUILD_SYSTEM_ROOT_IMAGE
129 !endif
Mukesh Ojhad29676a2018-04-10 17:37:56 +0530130 !if $(DISABLE_PARALLEL_DOWNLOAD_FLASH) == 1
131 GCC:*_*_*_CC_FLAGS = -DDISABLE_PARALLEL_DOWNLOAD_FLASH
132 !endif
Saranya Chidura30eb6292019-02-20 15:27:37 +0530133 !if $(DYNAMIC_PARTITION_SUPPORT)
134 GCC:*_*_*_CC_FLAGS = -DDYNAMIC_PARTITION_SUPPORT
135 !endif
Jeevan Shriram91492b42020-01-20 17:34:53 -0800136 !if $(VIRTUAL_AB_OTA)
137 GCC:*_*_*_CC_FLAGS = -DVIRTUAL_AB_OTA
138 !endif
Raghavendra Rao Ananta508792f2019-12-09 14:11:21 -0800139 !if $(BUILD_USES_RECOVERY_AS_BOOT)
140 GCC:*_*_*_CC_FLAGS = -DBUILD_USES_RECOVERY_AS_BOOT
141 !endif
S A Muqthyarb25e5b32018-04-26 16:02:41 +0530142 !ifdef $(INIT_BIN)
143 GCC:*_*_*_CC_FLAGS = -DINIT_BIN='$(INIT_BIN)'
144 !endif
Sourabh Banerjee54a5bd72019-03-15 15:16:24 +0530145 !if $(NAND_SQUASHFS_SUPPORT)
146 GCC:*_*_*_CC_FLAGS = -DNAND_SQUASHFS_SUPPORT
147 !endif
Nagireddy Annemab587982020-01-30 16:02:15 +0530148 !if $(ENABLE_SYSTEMD_BOOTSLOT)
149 GCC:*_*_*_CC_FLAGS = -DENABLE_SYSTEMD_BOOTSLOT
150 !endif
Prateek Soodc86ef5d2020-01-30 00:18:13 +0530151 !if $(USERDATAIMAGE_FILE_SYSTEM_TYPE)
152 GCC:*_*_*_CC_FLAGS = -DUSERDATA_FS_TYPE=\"$(USERDATAIMAGE_FILE_SYSTEM_TYPE)\"
153 !endif
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800154
155[PcdsFixedAtBuild.common]
156
157# DEBUG_ASSERT_ENABLED 0x01
158# DEBUG_PRINT_ENABLED 0x02
159# DEBUG_CODE_ENABLED 0x04
160# CLEAR_MEMORY_ENABLED 0x08
161# ASSERT_BREAKPOINT_ENABLED 0x10
162# ASSERT_DEADLOOP_ENABLED 0x20
163
164 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
Jeevan Shriram5d2531c2016-08-19 13:34:56 -0700165 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000042
166 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800167
168################################################################################
169#
170# Components Section - list of all EDK II Modules needed by this Platform
171#
172################################################################################
173[Components.common]
174
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800175 QcomModulePkg/Application/LinuxLoader/LinuxLoader.inf {
176 <LibraryClasses>
177 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
Vijay Kumar Pendoti19aa5bd2017-03-15 19:27:50 +0530178 LibUfdt|EmbeddedPkg/Library/LibUfdt/LibUfdt.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800179 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
180 BootLib|QcomModulePkg/Library/BootLib/BootLib.inf
Jeevan Shriram410e7b42017-01-19 16:43:08 -0800181 StackCanary|QcomModulePkg/Library/StackCanary/StackCanary.inf
lijuang4a9163b2016-11-16 20:01:34 +0800182 FastbootLib|QcomModulePkg/Library/FastbootLib/FastbootLib.inf
Shivaprasad Hongala2c4dd72017-04-27 14:33:18 -0700183 AvbLib|QcomModulePkg/Library/avb/AvbLib.inf
Trilok Sonieb1ca962017-08-15 17:17:14 -0700184 UbsanLib|QcomModulePkg/Library/UbsanLib/UbsanLib.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800185 }