blob: 3d45af50b2dda39cfe91f30af96db34a361bd970 [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 Shriramd5d169f2018-04-20 16:09:10 -070098 GCC:*_*_*_CC_FLAGS = -DPRODUCT_NAME=\"$(BOARD_BOOTLOADER_PRODUCT_NAME)\"
Jeevan Shriramfdd1e4a2017-05-22 10:25:00 -070099
Jeevan Shriram2eb8ded2016-08-17 14:35:17 -0700100 !if $(VERIFIED_BOOT)
101 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT
102 !endif
Shivaprasad Hongal3860bbf2017-04-27 17:40:13 -0700103 !if $(VERIFIED_BOOT_2)
104 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT_2
105 !endif
Zhen Kongdd5c5e32017-07-05 13:44:45 -0700106 !if $(VERIFIED_BOOT_LE)
107 GCC:*_*_*_CC_FLAGS = -DVERIFIED_BOOT_LE
108 !endif
vijay.rayabarapu18a64042018-08-08 02:23:27 +0530109 !if $(VERITY_LE)
110 GCC:*_*_*_CC_FLAGS = -DVERITY_LE
111 !endif
Vijay Kumar Pendoti9946e042016-09-16 17:38:51 +0530112 !if $(USER_BUILD_VARIANT) == 0
113 GCC:*_*_*_CC_FLAGS = -DENABLE_UPDATE_PARTITIONS_CMDS -DENABLE_BOOT_CMD -DENABLE_DEVICE_CRITICAL_LOCK_UNLOCK_CMDS
lijuangd5482892016-12-13 17:46:31 +0800114 !else
115 GCC:*_*_*_CC_FLAGS = -DUSER_BUILD_VARIANT
Vijay Kumar Pendoti9946e042016-09-16 17:38:51 +0530116 !endif
Jeevan Shriram995c2312017-10-10 14:25:00 -0700117 !if $(ENABLE_LE_VARIANT) == 1
118 GCC:*_*_*_CC_FLAGS = -DENABLE_LE_VARIANT
119 !endif
Mukesh Ojha8dc65f52018-03-27 00:59:30 +0530120 !if $(BUILD_SYSTEM_ROOT_IMAGE)
121 GCC:*_*_*_CC_FLAGS = -DBUILD_SYSTEM_ROOT_IMAGE
122 !endif
Mukesh Ojhad29676a2018-04-10 17:37:56 +0530123 !if $(DISABLE_PARALLEL_DOWNLOAD_FLASH) == 1
124 GCC:*_*_*_CC_FLAGS = -DDISABLE_PARALLEL_DOWNLOAD_FLASH
125 !endif
S A Muqthyarb25e5b32018-04-26 16:02:41 +0530126 !ifdef $(INIT_BIN)
127 GCC:*_*_*_CC_FLAGS = -DINIT_BIN='$(INIT_BIN)'
128 !endif
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800129
130[PcdsFixedAtBuild.common]
131
132# DEBUG_ASSERT_ENABLED 0x01
133# DEBUG_PRINT_ENABLED 0x02
134# DEBUG_CODE_ENABLED 0x04
135# CLEAR_MEMORY_ENABLED 0x08
136# ASSERT_BREAKPOINT_ENABLED 0x10
137# ASSERT_DEADLOOP_ENABLED 0x20
138
139 gEfiMdePkgTokenSpaceGuid.PcdDebugPropertyMask|0x2f
Jeevan Shriram5d2531c2016-08-19 13:34:56 -0700140 gEfiMdePkgTokenSpaceGuid.PcdDebugPrintErrorLevel|0x80000042
141 gEfiMdePkgTokenSpaceGuid.PcdReportStatusCodePropertyMask|0x06
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800142
143################################################################################
144#
145# Components Section - list of all EDK II Modules needed by this Platform
146#
147################################################################################
148[Components.common]
149
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800150 QcomModulePkg/Application/LinuxLoader/LinuxLoader.inf {
151 <LibraryClasses>
152 FdtLib|EmbeddedPkg/Library/FdtLib/FdtLib.inf
Vijay Kumar Pendoti19aa5bd2017-03-15 19:27:50 +0530153 LibUfdt|EmbeddedPkg/Library/LibUfdt/LibUfdt.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800154 ArmSmcLib|ArmPkg/Library/ArmSmcLib/ArmSmcLib.inf
155 BootLib|QcomModulePkg/Library/BootLib/BootLib.inf
Jeevan Shriram410e7b42017-01-19 16:43:08 -0800156 StackCanary|QcomModulePkg/Library/StackCanary/StackCanary.inf
lijuang4a9163b2016-11-16 20:01:34 +0800157 FastbootLib|QcomModulePkg/Library/FastbootLib/FastbootLib.inf
Shivaprasad Hongala2c4dd72017-04-27 14:33:18 -0700158 AvbLib|QcomModulePkg/Library/avb/AvbLib.inf
Trilok Sonieb1ca962017-08-15 17:17:14 -0700159 UbsanLib|QcomModulePkg/Library/UbsanLib/UbsanLib.inf
Sridhar Parasuram2ac5a1f2015-11-06 13:34:08 -0800160 }