blob: a0111169a51f64c6f340af8ab18998174877a72a [file] [log] [blame]
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -03001################################################################################
2#
3# openpower_pnor_p10
4#
5################################################################################
6
hostboot210cacf2023-01-09 00:40:46 -06007OPENPOWER_PNOR_P10_VERSION ?= 38b8d4759092a42d77a4f28939a0e3730f00e1f3
Ilya Smirnovd56cef72021-06-23 09:34:37 -05008OPENPOWER_PNOR_P10_SITE ?= $(call github,open-power,pnor,$(OPENPOWER_PNOR_P10_VERSION))
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -03009
10OPENPOWER_PNOR_P10_LICENSE = Apache-2.0
11OPENPOWER_PNOR_P10_LICENSE_FILES = LICENSE
Adriana Kobylak35a21ce2021-01-19 15:05:25 -060012OPENPOWER_PNOR_P10_DEPENDENCIES = hostboot-binaries skiboot host-openpower-ffs host-openpower-pnor-util host-xz host-sb-signing-utils hostboot-p10 occ-p10 sbe-p10 hcode-p10 ocmb-explorer-fw $(call qstrip,$(BR2_OPENPOWER_P10_XMLS))
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -030013
14ifeq ($(BR2_PACKAGE_IMA_CATALOG),y)
15OPENPOWER_PNOR_P10_DEPENDENCIES += ima-catalog
16endif
17
18ifeq ($(BR2_OPENPOWER_P10_SECUREBOOT_KEY_TRANSITION_TO_DEV),y)
19OPENPOWER_PNOR_P10_KEY_TRANSITION_ARG = -key_transition imprint
20else ifeq ($(BR2_OPENPOWER_P10_SECUREBOOT_KEY_TRANSITION_TO_PROD),y)
21OPENPOWER_PNOR_P10_KEY_TRANSITION_ARG = -key_transition production
22endif
23
24ifneq ($(BR2_OPENPOWER_P10_SECUREBOOT_SIGN_MODE),"")
25OPENPOWER_PNOR_P10_SIGN_MODE_ARG = -sign_mode $(BR2_OPENPOWER_P10_SECUREBOOT_SIGN_MODE)
26endif
27
Mike Baiocchi56e00022022-01-18 22:26:54 -060028ifneq ($(BR2_OPENPOWER_SIGNED_SECURITY_VERSION),"")
29SECURITY_VERSION=-security_version $(BR2_OPENPOWER_SIGNED_SECURITY_VERSION)
30endif
31
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -030032OPENPOWER_PNOR_P10_INSTALL_IMAGES = YES
33OPENPOWER_PNOR_P10_INSTALL_TARGET = NO
34
35# Subpackages we want to include in the version info (do not include openpower-pnor-p10)
36# This is used inside pkg-versions.mk
Adriana Kobylak35a21ce2021-01-19 15:05:25 -060037OPENPOWER_PNOR_P10_VERSIONED_SUBPACKAGES = skiboot linux petitboot hostboot-binaries pdata hostboot-p10 occ-p10 sbe-p10 hcode-p10 ocmb-explorer-fw $(call qstrip,$(BR2_OPENPOWER_P10_XMLS))
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -030038
39OPENPOWER_PNOR_P10_OCMB_URL = $(call qstrip,$(OCMB_EXPLORER_FW_SITE)/$(OCMB_EXPLORER_FW_SOURCE))
40
41#######
42# OPENPOWER_PNOR_P10_UPDATE_IMAGE - process/sign PNOR partitions
43# Arguments:
44# $1 - The target-specific mrw package name (i.e., rainier-2u-xml)
45#######
46define OPENPOWER_PNOR_P10_UPDATE_IMAGE
47 echo "***Signing images for target:$(call qstrip,$(1))"
48
49 $(eval XML_VAR = $$(call UPPERCASE,$$(call qstrip,$(1))))
50 echo "***XML_VAR: $(XML_VAR)"
51
52 $(eval TARGETING_BINARY_SOURCE = $$(BR2_$(XML_VAR)_TARGETING_BIN_FILENAME))
53 echo "***TARGETING_BINARY_SOURCE: $(TARGETING_BINARY_SOURCE)"
54
55 $(eval TARGETING_BINARY_FILENAME = $$(BR2_$(XML_VAR)_TARGETING_ECC_FILENAME))
56 echo "***TARGETING_BINARY_FILENAME: $(TARGETING_BINARY_FILENAME)"
57
58 $(eval XML_FILENAME = $$(call qstrip,$$(BR2_$(XML_VAR)_FILENAME)))
59 echo "***XML_FILENAME: $(XML_FILENAME)"
60
Deb McLemore22d01af2022-11-10 16:01:22 -060061 $(eval PSPD_DATA_FILENAME = $$(patsubst %.xml,%.pspddata,$(XML_FILENAME)))
62 echo "***PSPD_DATA_FILENAME: $(PSPD_DATA_FILENAME)"
63
64 $(eval PSPD_BINARY_FILENAME = $$(patsubst %.xml,%.PSPD.bin,$(XML_FILENAME)))
65 echo "***PSPD_BINARY_FILENAME: $(PSPD_BINARY_FILENAME)"
66
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -030067 $(eval WOF_BINARY_FILENAME = $$(patsubst %.xml,%.wofdata,$(XML_FILENAME)))
68 echo "***WOF_BINARY_FILENAME: $(WOF_BINARY_FILENAME)"
69
70 $(eval MEMD_BINARY_FILENAME = $$(patsubst %.xml,%.memd_output.dat,$(XML_FILENAME)))
71 echo "***MEMD_BINARY_FILENAME: $(MEMD_BINARY_FILENAME)"
72
73 $(eval DEVTREE_BINARY_FILENAME = $$(patsubst %.xml,%.dtb,$(XML_FILENAME)))
74 echo "***DEVTREE_BINARY_FILENAME: $(DEVTREE_BINARY_FILENAME)"
75
76 $(eval PNOR_SCRATCH_DIR = $(STAGING_DIR)/openpower_pnor_scratch.$(XML_VAR))
77 echo "***PNOR scratch directory: $(PNOR_SCRATCH_DIR)"
78 mkdir -p $(PNOR_SCRATCH_DIR)
79
Deb McLemoree6a30482021-09-10 09:31:45 -050080 echo "***BINARIES_DIR: $(BINARIES_DIR)"
81 echo "***STAGING_DIR: $(STAGING_DIR)"
82
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -030083
84 $(TARGET_MAKE_ENV) $(@D)/update_image.pl \
85 -release p10 \
86 -op_target_dir $(STAGING_DIR)/hostboot_build_images \
87 -hb_image_dir $(STAGING_DIR)/hostboot_build_images \
88 -scratch_dir $(PNOR_SCRATCH_DIR) \
89 -hb_binary_dir $(STAGING_DIR)/hostboot_binaries \
90 -hcode_dir $(STAGING_DIR)/hcode \
91 -targeting_binary_filename $(TARGETING_BINARY_FILENAME) \
92 -targeting_binary_source $(TARGETING_BINARY_SOURCE) \
93 -targeting_RO_binary_filename $(TARGETING_BINARY_FILENAME).protected \
94 -targeting_RO_binary_source $(TARGETING_BINARY_SOURCE).protected \
95 -targeting_RW_binary_filename $(TARGETING_BINARY_FILENAME).unprotected \
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -030096 -sbe_binary_filename $(BR2_HOSTBOOT_P10_BINARY_SBE_FILENAME) \
97 -sbe_binary_dir $(STAGING_DIR)/sbe_binaries \
98 -sbec_binary_filename $(BR2_HOSTBOOT_P10_BINARY_SBEC_FILENAME) \
99 -wink_binary_filename $(BR2_HOSTBOOT_P10_BINARY_WINK_FILENAME) \
100 -occ_binary_filename $(OCC_STAGING_DIR)/$(BR2_OCC_P10_BIN_FILENAME) \
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300101 -ima_catalog_binary_filename $(BINARIES_DIR)/$(BR2_IMA_CATALOG_P10_FILENAME) \
102 -openpower_version_filename $(OPENPOWER_PNOR_P10_VERSION_FILE) \
Deb McLemore22d01af2022-11-10 16:01:22 -0600103 -pspd_binary_filename $(STAGING_DIR)/openpower_mrw_scratch/$(PSPD_BINARY_FILENAME) \
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300104 -wof_binary_filename $(STAGING_DIR)/openpower_mrw_scratch/$(WOF_BINARY_FILENAME) \
105 -memd_binary_filename $(STAGING_DIR)/openpower_mrw_scratch/$(MEMD_BINARY_FILENAME) \
106 -payload $(BINARIES_DIR)/$(BR2_SKIBOOT_P10_LID_NAME) \
107 -payload_filename skiboot.lid.xz \
108 -binary_dir $(BINARIES_DIR) \
109 -bootkernel_filename $(LINUX_IMAGE_NAME) \
110 -ocmbfw_version $(OCMB_EXPLORER_FW_VERSION) \
111 -ocmbfw_url $(OPENPOWER_PNOR_P10_OCMB_URL) \
112 -ocmbfw_original_filename $(BINARIES_DIR)/$(BR2_OCMBFW_P10_FILENAME) \
113 -ocmbfw_binary_filename $(PNOR_SCRATCH_DIR)/$(BR2_OCMBFW_P10_PROCESSED_FILENAME) \
114 -pnor_layout $(@D)/p10Layouts/$(BR2_OPENPOWER_P10_PNOR_XML_LAYOUT_FILENAME) \
115 -sbe_img_dir $(BUILD_DIR)/sbe-p10-$(call qstrip,$(BR2_SBE_P10_VERSION))/images \
116 -devtree_binary_filename $(STAGING_DIR)/usr/share/pdata/$(DEVTREE_BINARY_FILENAME) \
117 -xz_compression \
118 $(OPENPOWER_PNOR_P10_KEY_TRANSITION_ARG) \
Mike Baiocchi56e00022022-01-18 22:26:54 -0600119 $(OPENPOWER_PNOR_P10_SIGN_MODE_ARG) \
120 $(SECURITY_VERSION) \
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300121
122 if [ -n "$(BR2_OPENPOWER_PNOR_P10_LEGACY_PNOR_TARGET)" ] ; then \
123 echo "***Generating legacy pnor targets..." ;\
124 mkdir -p $(STAGING_DIR)/pnor.$(XML_VAR) ; \
125 $(TARGET_MAKE_ENV) $(@D)/create_pnor_image.pl \
126 -release p10 \
127 -xml_layout_file $(@D)/p10Layouts/$(BR2_OPENPOWER_P10_PNOR_XML_LAYOUT_FILENAME) \
128 -pnor_filename $(STAGING_DIR)/pnor.$(XML_VAR)/$(XML_VAR).pnor \
129 -hb_image_dir $(STAGING_DIR)/hostboot_build_images \
130 -scratch_dir $(PNOR_SCRATCH_DIR) \
131 -outdir $(STAGING_DIR)/pnor.$(XML_VAR)/ \
132 -payload $(PNOR_SCRATCH_DIR)/$(BR2_SKIBOOT_LID_XZ_NAME) \
133 -bootkernel $(PNOR_SCRATCH_DIR)/$(LINUX_IMAGE_NAME) \
134 -sbe_binary_filename $(BR2_HOSTBOOT_P10_BINARY_SBE_FILENAME) \
135 -sbec_binary_filename $(BR2_HOSTBOOT_P10_BINARY_SBEC_FILENAME) \
136 -wink_binary_filename $(BR2_HOSTBOOT_P10_BINARY_WINK_FILENAME) \
137 -occ_binary_filename $(OCC_STAGING_DIR)/$(BR2_OCC_P10_BIN_FILENAME) \
138 -targeting_binary_filename $(TARGETING_BINARY_FILENAME) \
139 -targeting_RO_binary_filename $(TARGETING_BINARY_FILENAME).protected \
140 -targeting_RW_binary_filename $(TARGETING_BINARY_FILENAME).unprotected \
141 -wofdata_binary_filename $(PNOR_SCRATCH_DIR)/wofdata.bin.ecc \
142 -memddata_binary_filename $(PNOR_SCRATCH_DIR)/memd_extra_data.bin.ecc \
143 -ocmbfw_binary_filename $(PNOR_SCRATCH_DIR)/$(BR2_OCMBFW_P10_PROCESSED_FILENAME) \
144 -openpower_version_filename $(PNOR_SCRATCH_DIR)/openpower_pnor_version.bin \
Deb McLemore22d01af2022-11-10 16:01:22 -0600145 -devtree_binary_filename $(PNOR_SCRATCH_DIR)/DEVTREE.bin \
146 -pspd_binary_filename $(PNOR_SCRATCH_DIR)/PSPD.bin ;\
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300147 $(INSTALL) $(STAGING_DIR)/pnor.$(XML_VAR)/$(XML_VAR).pnor $(BINARIES_DIR) ;\
148 PATH=$(HOST_DIR)/usr/bin:$(PATH) $(HOST_DIR)/usr/bin/generate-tar -i squashfs \
149 -m $(XML_VAR) \
150 -f $(STAGING_DIR)/pnor.$(XML_VAR)/$(XML_VAR).pnor.squashfs.tar \
151 $(STAGING_DIR)/pnor.$(XML_VAR)/$(XML_VAR).pnor -s ;\
152 $(INSTALL) $(STAGING_DIR)/pnor.$(XML_VAR)/$(XML_VAR).pnor.squashfs.tar $(BINARIES_DIR) ;\
153 cd $(STAGING_DIR)/pnor.$(XML_VAR) ;\
154 PATH=$(HOST_DIR)/usr/sbin:$(PATH) $(HOST_DIR)/usr/bin/generate-ubi \
155 $(XML_VAR).pnor.squashfs.tar ;\
156 $(INSTALL) $(STAGING_DIR)/pnor.$(XML_VAR)/$(XML_VAR).pnor.ubi.mtd $(BINARIES_DIR) ;\
Roland Veloz8da41012022-02-17 11:24:08 -0600157 $(INSTALL) -m 0644 -D $(STAGING_DIR)/hostboot_build_images/hbicore.syms $(PNOR_SCRATCH_DIR)/HBICORE_SYMS.ipllid ;\
158 $(INSTALL) -m 0644 -D $(STAGING_DIR)/hostboot_build_images/hbotStringFile $(PNOR_SCRATCH_DIR)/HBOTSTRINGFILE.ipllid ;\
Sunil Kumarf1a08662022-03-25 10:40:52 -0500159 $(INSTALL) -m 0644 -D $(STAGING_DIR)/sbe_sim_data/sbeMeasurementStringFile $(PNOR_SCRATCH_DIR)/SBEMSTRINGFILE.ipllid ;\
160 $(INSTALL) -m 0644 -D $(STAGING_DIR)/sbe_sim_data/sbeStringFile_DD1 $(PNOR_SCRATCH_DIR)/SBESTRINGFILE.ipllid ;\
161 $(INSTALL) -m 0644 -D $(STAGING_DIR)/sbe_sim_data/sbeVerificationStringFile $(PNOR_SCRATCH_DIR)/SBEVSTRINGFILE.ipllid ;\
Chris Cain6600fc32022-07-19 16:30:41 -0500162 $(INSTALL) -m 0644 -D $(OCC_STAGING_DIR)/occStringFile $(PNOR_SCRATCH_DIR)/OCCSTRINGFILE.ipllid ;\
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300163 $(TARGET_MAKE_ENV) $(@D)/makelidpkg \
164 $(BINARIES_DIR)/$(XML_VAR).ebmc_lids.tar.gz \
165 $(PNOR_SCRATCH_DIR); \
166 if [ -e $(STAGING_DIR)/openpower_pnor_scratch ] ; then \
167 echo "*** Reusing existing $(STAGING_DIR)/openpower_pnor_scratch => $$(readlink -f $(STAGING_DIR)/openpower_pnor_scratch)";\
168 else \
169 ln -rs $(PNOR_SCRATCH_DIR) $(STAGING_DIR)/openpower_pnor_scratch ;\
170 ln -rs $(BINARIES_DIR)/$(XML_VAR).ebmc_lids.tar.gz \
171 $(BINARIES_DIR)/ebmc_lids.tar.gz ;\
172 ln -rs $(BINARIES_DIR)/$(XML_VAR).pnor \
173 $(BINARIES_DIR)/$(BR2_OPENPOWER_PNOR_P10_LEGACY_PNOR_TARGET).pnor ;\
174 ln -rs $(BINARIES_DIR)/$(XML_VAR).pnor.squashfs.tar \
175 $(BINARIES_DIR)/$(BR2_OPENPOWER_PNOR_P10_LEGACY_PNOR_TARGET).pnor.squashfs.tar ;\
176 ln -rs $(BINARIES_DIR)/$(XML_VAR).pnor.ubi.mtd \
177 $(BINARIES_DIR)/$(BR2_OPENPOWER_PNOR_P10_LEGACY_PNOR_TARGET).pnor.ubi.mtd ;\
178 fi ;\
179 fi
Roland Veloz8da41012022-02-17 11:24:08 -0600180 # Copy images to mmc dir
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300181 # HBBL
182 test -f "$(BINARIES_DIR)/mmc/HBBL.P10" ||\
183 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/hbbl.bin.ecc \
184 $(BINARIES_DIR)/mmc/HBBL.P10
185
186 # HBB
187 test -f "$(BINARIES_DIR)/mmc/HBB.P10" ||\
188 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/hostboot.header.bin.ecc \
189 $(BINARIES_DIR)/mmc/HBB.P10
190
191 # HBI
192 test -f "$(BINARIES_DIR)/mmc/HBI.P10" ||\
193 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/hostboot_extended.header.bin.ecc \
194 $(BINARIES_DIR)/mmc/HBI.P10
195
Deb McLemoree6a30482021-09-10 09:31:45 -0500196 # HBD.bin SECTION is the COMBO (RO and RW) as built by genPnorImages.pl
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300197 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/$(TARGETING_BINARY_FILENAME) \
198 $(BINARIES_DIR)/mmc/HBD.$(XML_VAR)
199
Deb McLemoree6a30482021-09-10 09:31:45 -0500200 # HBD_RW.bin SECTION conditionally built by genPnorImages.pl
201 # Not consumed as a LID today since its a PNOR partition
202 if [ -e $(PNOR_SCRATCH_DIR)/$(TARGETING_BINARY_FILENAME).unprotected ]; then \
203 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/$(TARGETING_BINARY_FILENAME).unprotected \
204 $(BINARIES_DIR)/mmc/HBD_RW.$(XML_VAR) ; \
205 fi
206
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300207 # SBE
208 test -f "$(BINARIES_DIR)/mmc/SBE.P10" ||\
209 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/$(BR2_HOSTBOOT_P10_BINARY_SBE_FILENAME) \
210 $(BINARIES_DIR)/mmc/SBE.P10
211
212 # PAYLOAD
213 test -f "$(BINARIES_DIR)/mmc/PAYLOAD.P10" ||\
214 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/skiboot.lid.xz \
215 $(BINARIES_DIR)/mmc/PAYLOAD.P10
216
217 # HCODE
218 test -f "$(BINARIES_DIR)/mmc/HCODE.P10" ||\
219 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/$(BR2_HOSTBOOT_P10_BINARY_WINK_FILENAME) \
220 $(BINARIES_DIR)/mmc/HCODE.P10
221
222 # HBRT
223 test -f "$(BINARIES_DIR)/mmc/HBRT.P10" ||\
224 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/hostboot_runtime.header.bin.ecc \
225 $(BINARIES_DIR)/mmc/HBRT.P10
226
227 # OCC
228 test -f "$(BINARIES_DIR)/mmc/OCC.P10" ||\
229 $(INSTALL) -m 0644 -D $(OCC_STAGING_DIR)/$(BR2_OCC_P10_BIN_FILENAME).ecc \
230 $(BINARIES_DIR)/mmc/OCC.P10
231
232 # BOOTKERNEL
233 test -f "$(BINARIES_DIR)/mmc/BOOTKERNEL.P10" ||\
234 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/$(LINUX_IMAGE_NAME) \
235 $(BINARIES_DIR)/mmc/BOOTKERNEL.P10
236
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300237 # VERSION
238 test -f "$(BINARIES_DIR)/mmc/VERSION.P10" ||\
239 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/openpower_pnor_version.bin \
240 $(BINARIES_DIR)/mmc/VERSION.P10
241
242 # IMA_CATALOG
243 test -f "$(BINARIES_DIR)/mmc/IMA_CATALOG.P10" ||\
244 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/ima_catalog.bin.ecc \
245 $(BINARIES_DIR)/mmc/IMA_CATALOG.P10
246
247 # SBKT (special content)
248 test -f "$(BINARIES_DIR)/mmc/SBKT.P10" ||\
249 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/SBKT.bin \
250 $(BINARIES_DIR)/mmc/SBKT.P10
251
252 # HBEL (blank)
253 test -f "$(BINARIES_DIR)/mmc/HBEL.P10" ||\
254 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/hbel.bin.ecc \
255 $(BINARIES_DIR)/mmc/HBEL.P10
256
257 # GUARD (blank)
258 test -f "$(BINARIES_DIR)/mmc/GUARD.P10" ||\
259 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/guard.bin.ecc \
260 $(BINARIES_DIR)/mmc/GUARD.P10
261
262 # HB_VOLATILE (blank)
263 test -f "$(BINARIES_DIR)/mmc/HB_VOLATILE.P10" ||\
264 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/hb_volatile.bin \
265 $(BINARIES_DIR)/mmc/HB_VOLATILE.P10
266
267 # NVRAM (blank)
268 test -f "$(BINARIES_DIR)/mmc/NVRAM.P10" ||\
269 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/nvram.bin \
270 $(BINARIES_DIR)/mmc/NVRAM.P10
271
272 # ATTR_TMP (blank)
273 test -f "$(BINARIES_DIR)/mmc/ATTR_TMP.P10" ||\
274 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/attr_tmp.bin.ecc \
275 $(BINARIES_DIR)/mmc/ATTR_TMP.P10
276
277 # ATTR_PERM (blank)
278 test -f "$(BINARIES_DIR)/mmc/ATTR_PERM.P10" ||\
279 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/attr_perm.bin.ecc \
280 $(BINARIES_DIR)/mmc/ATTR_PERM.P10
281
282 # FIRDATA (blank, optional)
283 if [ -f "$(PNOR_SCRATCH_DIR)/firdata.bin.ecc" ] ; then \
284 test -f "$(BINARIES_DIR)/mmc/FIRDATA.P10" || \
285 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/firdata.bin.ecc \
286 $(BINARIES_DIR)/mmc/FIRDATA.P10 ; \
287 fi
288
289 # SECBOOT (blank)
290 test -f "$(BINARIES_DIR)/mmc/SECBOOT.P10" ||\
291 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/secboot.bin.ecc \
292 $(BINARIES_DIR)/mmc/SECBOOT.P10
293
294 # RINGOVD (blank)
295 test -f "$(BINARIES_DIR)/mmc/RINGOVD.P10" ||\
296 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/ringOvd.bin \
297 $(BINARIES_DIR)/mmc/RINGOVD.P10
298
299 # CVPD (blank, optional)
300 if [ -f "$(PNOR_SCRATCH_DIR)/cvpd.bin.ecc" ] ; then \
301 test -f "$(BINARIES_DIR)/mmc/CVPD.P10" ||\
302 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/cvpd.bin.ecc \
303 $(BINARIES_DIR)/mmc/CVPD.P10 ; \
304 fi
305
306 # DJVPD (blank, optional)
307 if [ -f "$(PNOR_SCRATCH_DIR)/djvpd_fill.bin.ecc" ] ; then \
308 test -f "$(BINARIES_DIR)/mmc/DJVPD.P10" ||\
309 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/djvpd_fill.bin.ecc \
310 $(BINARIES_DIR)/mmc/DJVPD.P10 ; \
311 fi
312
313 # MVPD (blank, optional)
314 if [ -f "$(PNOR_SCRATCH_DIR)/mvpd_fill.bin.ecc" ] ; then \
315 test -f "$(BINARIES_DIR)/mmc/MVPD.P10" ||\
316 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/mvpd_fill.bin.ecc \
317 $(BINARIES_DIR)/mmc/MVPD.P10 ; \
318 fi
319
320 # EECACHE (blank, optional)
321 if [ -f "$(PNOR_SCRATCH_DIR)/eecache_fill.bin.ecc" ] ; then \
322 test -f "$(BINARIES_DIR)/mmc/EECACHE.P10" ||\
323 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/eecache_fill.bin.ecc \
324 $(BINARIES_DIR)/mmc/EECACHE.P10 ; \
325 fi
326
327 # WOFDATA
328 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/wofdata.bin.ecc \
329 $(BINARIES_DIR)/mmc/WOFDATA.$(XML_VAR)
330
331 # MEMD (optional)
332 if [ -f "$(PNOR_SCRATCH_DIR)/memd_extra_data.bin.ecc" ] ; then \
333 test -f "$(BINARIES_DIR)/mmc/MEMD.P10" ||\
334 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/memd_extra_data.bin.ecc \
335 $(BINARIES_DIR)/mmc/MEMD.P10 ; \
336 fi
337
338 # HDAT
339 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/hdat.bin.ecc \
340 $(BINARIES_DIR)/mmc/HDAT.$(XML_VAR)
341
342 # OCMBFW (optional)
343 if [ -f "$(PNOR_SCRATCH_DIR)/$(BR2_OCMBFW_P10_PROCESSED_FILENAME)" ] ; then \
344 test -f "$(BINARIES_DIR)/mmc/OCMBFW.P10" ||\
345 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/$(BR2_OCMBFW_P10_PROCESSED_FILENAME) \
346 $(BINARIES_DIR)/mmc/OCMBFW.P10 ; \
347 fi
348
349 # DEVTREE
350 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/DEVTREE.bin \
351 $(BINARIES_DIR)/mmc/DEVTREE.$(XML_VAR)
352
Deb McLemore22d01af2022-11-10 16:01:22 -0600353 # PSPD.bin SECTION conditionally built by genPnorImages.pl
354 if [ -e $(PNOR_SCRATCH_DIR)/PSPD.bin ]; then \
355 $(INSTALL) -m 0644 -D $(PNOR_SCRATCH_DIR)/PSPD.bin \
356 $(BINARIES_DIR)/mmc/PSPD.$(XML_VAR) ; \
357 fi
358
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300359endef
360
361define OPENPOWER_PNOR_P10_INSTALL_IMAGES_CMDS
362
Deb McLemoree6a30482021-09-10 09:31:45 -0500363 # CLEANUP OLD IMAGES
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300364 if [ -n "$(BR2_OPENPOWER_PNOR_P10_LEGACY_PNOR_TARGET)" ] ; then \
365 rm -f $(BINARIES_DIR)/*.pnor \
366 $(BINARIES_DIR)/*.pnor.squashfs.tar \
367 $(BINARIES_DIR)/*.ubi.mtd ;\
368 rm -rf $(BINARIES_DIR)/ebmc_lids.tar.gz \
369 $(BINARIES_DIR)/*.ebmc_lids.tar.gz ;\
370 rm -rf $(STAGING_DIR)/openpower_pnor_scratch \
371 $(STAGING_DIR)/openpower_pnor_scratch.* ;\
Deb McLemoree6a30482021-09-10 09:31:45 -0500372 rm -rf $(BINARIES_DIR)/mmc \
373 $(BINARIES_DIR)/mmc.tar.gz ;\
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300374 fi
375
376 $(foreach xmlpkg,$(BR2_OPENPOWER_P10_XMLS),\
377 $(call OPENPOWER_PNOR_P10_UPDATE_IMAGE,\
378 $(xmlpkg)))
379
Klaus Heinrich Kiwi78620d82020-10-06 15:33:25 -0300380 # Create MMC Tarball
381 tar -zcvf $(BINARIES_DIR)/mmc.tar.gz -C $(BINARIES_DIR) mmc
382
Klaus Heinrich Kiwid2551242020-07-16 16:59:04 -0300383 # Create Debug Tarball (target-agnostic)
384 mkdir -p $(STAGING_DIR)/pnor/host_fw_debug_tarball_files/
385 cp -r $(STAGING_DIR)/hostboot_build_images/* \
386 $(BUILD_DIR)/skiboot-$(SKIBOOT_VERSION)/skiboot.elf \
387 $(BUILD_DIR)/skiboot-$(SKIBOOT_VERSION)/skiboot.map \
388 $(BUILD_DIR)/linux-$(LINUX_VERSION)/.config \
389 $(BUILD_DIR)/linux-$(LINUX_VERSION)/vmlinux \
390 $(BUILD_DIR)/linux-$(LINUX_VERSION)/System.map \
391 $(STAGING_DIR)/fsp-trace/fsp-trace \
392 $(BINARIES_DIR)/zImage.epapr \
393 $(STAGING_DIR)/pnor/host_fw_debug_tarball_files/
394 tar -zcvf $(BINARIES_DIR)/host_fw_debug.tar -C $(STAGING_DIR)/pnor/host_fw_debug_tarball_files/ .
395
396endef
397
398$(eval $(generic-package))
399# Generate openPOWER pnor version string by combining subpackage version string files
400$(eval $(OPENPOWER_VERSION))
401