Skip to content

Commit b9fd39b

Browse files
committed
meta-dts-distro/recipes-dts/dts: Handle all migration and update operations automatically
Signed-off-by: Michał Żygowski <[email protected]>
1 parent b419a50 commit b9fd39b

File tree

2 files changed

+15
-34
lines changed

2 files changed

+15
-34
lines changed

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

Lines changed: 11 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -197,11 +197,20 @@ backup() {
197197
}
198198

199199
romhole_migration() {
200+
cbfstool $BIOS_UPDATE_FILE layout -w | grep -q "ROMHOLE" || return
201+
200202
echo "Beginning ROM hole migration process..."
201203
flashrom -p "$PROGRAMMER_BIOS" ${FLASH_CHIP_SELECT} -r /tmp/rom.bin --ifd -i bios >> $FLASHROM_LOG_FILE 2>> $ERR_LOG_FILE
202-
dd if=/tmp/rom.bin of=/tmp/romhole.bin skip=$((0x17C0000)) bs=128K count=1 iflag=skip_bytes
204+
error_check "Failed to read current firmware"
205+
if check_if_dasharo; then
206+
cbfstool /tmp/rom.bin layout -w | grep -q "ROMHOLE" || return
207+
cbfstool /tmp/rom.bin read -r ROMHOLE -f /tmp/romhole.bin || return
208+
else
209+
dd if=/tmp/rom.bin of=/tmp/romhole.bin skip=$((0x17C0000)) bs=128K count=1 iflag=skip_bytes
210+
fi
211+
203212
echo "Migrate to ROMHOLE section."
204-
cbfstool "$BIOS_UPDATE_FILE" write -r ROMHOLE -f /tmp/romhole.bin -u
213+
cbfstool "$BIOS_UPDATE_FILE" write -r ROMHOLE -f /tmp/romhole.bin -u 2> /dev/null
205214
}
206215

207216
smbios_migration() {

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

Lines changed: 4 additions & 32 deletions
Original file line numberDiff line numberDiff line change
@@ -301,19 +301,7 @@ board_config() {
301301
NEED_BLOB_TRANSMISSION="false"
302302
PROGRAMMER_BIOS="internal"
303303
PROGRAMMER_EC=""
304-
if check_if_dasharo; then
305-
# if v1.1.1 or older, flash the whole bios region, as per:
306-
# https://docs.dasharo.com/variants/msi_z690/firmware-update/#version-older-than-v110
307-
compare_versions $DASHARO_VERSION 1.1.2
308-
if [ $? -eq 1 ]; then
309-
# For Dasharo version lesser than 1.1.2
310-
NEED_BOOTSPLASH_MIGRATION="true"
311-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
312-
else
313-
# For Dasharo version greater or equal 1.1.2
314-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A -i RW_SECTION_B"
315-
fi
316-
fi
304+
NEED_ROMHOLE_MIGRATION="true"
317305
;;
318306
"PRO Z690-A WIFI (MS-7D25)" | "PRO Z690-A (MS-7D25)")
319307
DASHARO_REL_NAME="msi_ms7d25"
@@ -334,19 +322,7 @@ board_config() {
334322
NEED_BLOB_TRANSMISSION="false"
335323
PROGRAMMER_BIOS="internal"
336324
PROGRAMMER_EC=""
337-
if check_if_dasharo; then
338-
# if v1.1.1 or older, flash the whole bios region, as per:
339-
# https://docs.dasharo.com/variants/msi_z690/firmware-update/#version-older-than-v110
340-
compare_versions $DASHARO_VERSION 1.1.2
341-
if [ $? -eq 1 ]; then
342-
# For Dasharo version lesser than 1.1.2
343-
NEED_BOOTSPLASH_MIGRATION="true"
344-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
345-
else
346-
# For Dasharo version greater or equal 1.1.2
347-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A -i RW_SECTION_B"
348-
fi
349-
fi
325+
NEED_ROMHOLE_MIGRATION="true"
350326
;;
351327
*)
352328
error_exit "Board model $BOARD_MODEL is currently not supported"
@@ -374,9 +350,7 @@ board_config() {
374350
NEED_BLOB_TRANSMISSION="false"
375351
PROGRAMMER_BIOS="internal"
376352
PROGRAMMER_EC=""
377-
if ! check_if_dasharo; then
378-
NEED_ROMHOLE_MIGRATION="true"
379-
fi
353+
NEED_ROMHOLE_MIGRATION="true"
380354
;;
381355
"PRO Z790-P WIFI (MS-7E06)" | "PRO Z790-P (MS-7E06)")
382356
DASHARO_REL_NAME="msi_ms7e06"
@@ -397,9 +371,7 @@ board_config() {
397371
NEED_BLOB_TRANSMISSION="false"
398372
PROGRAMMER_BIOS="internal"
399373
PROGRAMMER_EC=""
400-
if ! check_if_dasharo; then
401-
NEED_ROMHOLE_MIGRATION="true"
402-
fi
374+
NEED_ROMHOLE_MIGRATION="true"
403375
;;
404376
*)
405377
error_exit "Board model $BOARD_MODEL is currently not supported"

0 commit comments

Comments
 (0)