Skip to content

Commit aedbd36

Browse files
committed
meta-dts-distro/recipes-dts/dts: Add option to override flashrom update parameters
Signed-off-by: Michał Żygowski <michal.zygowski@3mdeb.com>
1 parent 9911b0c commit aedbd36

File tree

2 files changed

+22
-31
lines changed

2 files changed

+22
-31
lines changed

meta-dts-distro/recipes-dts/dts/dasharo-deploy/dasharo-deploy

Lines changed: 14 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -530,13 +530,21 @@ update() {
530530

531531
echo "Updating Dasharo firmware..."
532532
print_warning "This may take several minutes. Please be patient and do not reset your computer, or touch the keyboard!"
533-
flashrom -p "$PROGRAMMER_BIOS" ${FLASH_CHIP_SELECT} ${FLASHROM_ADD_OPT_UPDATE} -w "$BIOS_UPDATE_FILE" >> $FLASHROM_LOG_FILE 2>> $ERR_LOG_FILE
534-
error_check "Failed to update Dasharo firmware"
535533

536-
if [ $BINARY_HAS_RW_B -eq 0 ]; then
537-
echo "Updating second firmware partition..."
538-
flashrom -p "$PROGRAMMER_BIOS" ${FLASH_CHIP_SELECT} --fmap -N -i RW_SECTION_B -w "$BIOS_UPDATE_FILE" >> $FLASHROM_LOG_FILE 2>> $ERR_LOG_FILE
539-
error_check "Failed to update second firmware partition"
534+
# FLASHROM_ADD_OPT_UPDATE_OVERRIDE takes priority over auto-detected udpate params.
535+
# It set only by platform-specific and firmware version-specific conditions
536+
if [ -v FLASHROM_ADD_OPT_UPDATE_OVERRIDE ]; then
537+
flashrom -p "$PROGRAMMER_BIOS" ${FLASH_CHIP_SELECT} ${FLASHROM_ADD_OPT_UPDATE_OVERRIDE} -w "$BIOS_UPDATE_FILE" >> $FLASHROM_LOG_FILE 2>> $ERR_LOG_FILE
538+
error_check "Failed to update Dasharo firmware"
539+
else
540+
flashrom -p "$PROGRAMMER_BIOS" ${FLASH_CHIP_SELECT} ${FLASHROM_ADD_OPT_UPDATE} -w "$BIOS_UPDATE_FILE" >> $FLASHROM_LOG_FILE 2>> $ERR_LOG_FILE
541+
error_check "Failed to update Dasharo firmware"
542+
543+
if [ $BINARY_HAS_RW_B -eq 0 ]; then
544+
echo "Updating second firmware partition..."
545+
flashrom -p "$PROGRAMMER_BIOS" ${FLASH_CHIP_SELECT} --fmap -N -i RW_SECTION_B -w "$BIOS_UPDATE_FILE" >> $FLASHROM_LOG_FILE 2>> $ERR_LOG_FILE
546+
error_check "Failed to update second firmware partition"
547+
fi
540548
fi
541549

542550
# We use FLASHROM_ADD_OPT_REGIONS for updating ME and IFD.

meta-dts-distro/recipes-dts/dts/dts/dts-functions.sh

Lines changed: 8 additions & 25 deletions
Original file line numberDiff line numberDiff line change
@@ -176,16 +176,12 @@ board_config() {
176176
PROGRAMMER_BIOS="internal"
177177
PROGRAMMER_EC="ite_ec"
178178
if check_if_dasharo; then
179-
# if v1.4.0 or older, flash the whole bios region, as per:
180-
# TBD
179+
# if v1.4.0 or older, flash the whole bios region
181180
compare_versions $DASHARO_VERSION 1.5.0
182181
if [ $? -eq 1 ]; then
183182
# For Dasharo version lesser than 1.5.0
184183
NEED_BOOTSPLASH_MIGRATION="true"
185-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
186-
else
187-
# For Dasharo version greater or equal 1.5.0
188-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A"
184+
FLASHROM_ADD_OPT_UPDATE_OVERRIDE="--ifd -i bios"
189185
fi
190186
fi
191187
;;
@@ -209,16 +205,12 @@ board_config() {
209205
PROGRAMMER_BIOS="internal"
210206
PROGRAMMER_EC="ite_ec"
211207
if check_if_dasharo; then
212-
# if v1.4.0 or older, flash the whole bios region, as per:
213-
# TBD
208+
# if v1.4.0 or older, flash the whole bios region
214209
compare_versions $DASHARO_VERSION 1.5.0
215210
if [ $? -eq 1 ]; then
216211
# For Dasharo version lesser than 1.5.0
217212
NEED_BOOTSPLASH_MIGRATION="true"
218-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
219-
else
220-
# For Dasharo version greater or equal 1.5.0
221-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A"
213+
FLASHROM_ADD_OPT_UPDATE_OVERRIDE="--ifd -i bios"
222214
fi
223215
fi
224216
;;
@@ -241,16 +233,12 @@ board_config() {
241233
PROGRAMMER_BIOS="internal"
242234
PROGRAMMER_EC="ite_ec"
243235
if check_if_dasharo; then
244-
# if v1.7.2 or older, flash the whole bios region, as per:
245-
# TBD
236+
# if v1.7.2 or older, flash the whole bios region
246237
compare_versions $DASHARO_VERSION 1.7.2
247238
if [ $? -eq 1 ]; then
248239
# For Dasharo version lesser than 1.7.2
249240
NEED_BOOTSPLASH_MIGRATION="true"
250-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
251-
else
252-
# For Dasharo version greater or equal 1.7.2
253-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A"
241+
FLASHROM_ADD_OPT_UPDATE_OVERRIDE="--ifd -i bios"
254242
fi
255243
fi
256244
;;
@@ -274,17 +262,12 @@ board_config() {
274262
PROGRAMMER_BIOS="internal"
275263
PROGRAMMER_EC="ite_ec"
276264
if check_if_dasharo; then
277-
# if v1.7.2 or older, flash the whole bios region, as per:
278-
# TBD
265+
# if v1.7.2 or older, flash the whole bios region
279266
compare_versions $DASHARO_VERSION 1.7.2
280267
if [ $? -eq 1 ]; then
281268
# For Dasharo version lesser than 1.7.2
282269
NEED_BOOTSPLASH_MIGRATION="true"
283-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
284-
else
285-
# For Dasharo version greater or equal 1.7.2
286-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A"
287-
fi
270+
FLASHROM_ADD_OPT_UPDATE_OVERRIDE="--ifd -i bios"
288271
fi
289272
;;
290273
*)

0 commit comments

Comments
 (0)