Skip to content

Commit 05c2a48

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 aedbd36 commit 05c2a48

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
@@ -298,19 +298,7 @@ board_config() {
298298
NEED_BLOB_TRANSMISSION="false"
299299
PROGRAMMER_BIOS="internal"
300300
PROGRAMMER_EC=""
301-
if check_if_dasharo; then
302-
# if v1.1.1 or older, flash the whole bios region, as per:
303-
# https://docs.dasharo.com/variants/msi_z690/firmware-update/#version-older-than-v110
304-
compare_versions $DASHARO_VERSION 1.1.2
305-
if [ $? -eq 1 ]; then
306-
# For Dasharo version lesser than 1.1.2
307-
NEED_BOOTSPLASH_MIGRATION="true"
308-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
309-
else
310-
# For Dasharo version greater or equal 1.1.2
311-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A -i RW_SECTION_B"
312-
fi
313-
fi
301+
NEED_ROMHOLE_MIGRATION="true"
314302
;;
315303
"PRO Z690-A WIFI (MS-7D25)" | "PRO Z690-A (MS-7D25)")
316304
DASHARO_REL_NAME="msi_ms7d25"
@@ -331,19 +319,7 @@ board_config() {
331319
NEED_BLOB_TRANSMISSION="false"
332320
PROGRAMMER_BIOS="internal"
333321
PROGRAMMER_EC=""
334-
if check_if_dasharo; then
335-
# if v1.1.1 or older, flash the whole bios region, as per:
336-
# https://docs.dasharo.com/variants/msi_z690/firmware-update/#version-older-than-v110
337-
compare_versions $DASHARO_VERSION 1.1.2
338-
if [ $? -eq 1 ]; then
339-
# For Dasharo version lesser than 1.1.2
340-
NEED_BOOTSPLASH_MIGRATION="true"
341-
FLASHROM_ADD_OPT_UPDATE="--ifd -i bios"
342-
else
343-
# For Dasharo version greater or equal 1.1.2
344-
FLASHROM_ADD_OPT_UPDATE="--fmap -i RW_SECTION_A -i RW_SECTION_B"
345-
fi
346-
fi
322+
NEED_ROMHOLE_MIGRATION="true"
347323
;;
348324
*)
349325
error_exit "Board model $BOARD_MODEL is currently not supported"
@@ -371,9 +347,7 @@ board_config() {
371347
NEED_BLOB_TRANSMISSION="false"
372348
PROGRAMMER_BIOS="internal"
373349
PROGRAMMER_EC=""
374-
if ! check_if_dasharo; then
375-
NEED_ROMHOLE_MIGRATION="true"
376-
fi
350+
NEED_ROMHOLE_MIGRATION="true"
377351
;;
378352
"PRO Z790-P WIFI (MS-7E06)" | "PRO Z790-P (MS-7E06)")
379353
DASHARO_REL_NAME="msi_ms7e06"
@@ -394,9 +368,7 @@ board_config() {
394368
NEED_BLOB_TRANSMISSION="false"
395369
PROGRAMMER_BIOS="internal"
396370
PROGRAMMER_EC=""
397-
if ! check_if_dasharo; then
398-
NEED_ROMHOLE_MIGRATION="true"
399-
fi
371+
NEED_ROMHOLE_MIGRATION="true"
400372
;;
401373
*)
402374
error_exit "Board model $BOARD_MODEL is currently not supported"

0 commit comments

Comments
 (0)