Hi,
I’ve generated a bootable yocto image using this: Google Coral Dev Board
The device boots fine from an sd card, and I can create a snapshot of a modified filesystem with the command
“mender snapshot dump > /media/x/rootfs.ext4”, where x is a mounted usb stick.
From that snapshot I was able to create an artifact on a different computer with the command:
mender-artifact write rootfs-image -f rootfs.ext4
-n release-2
-o release-2.mender
-t coral-dev
I was also able to upload that image to the mender hosted service and begin the update to an unmodified yocto image on a new sd card. The update seems to be applied to the system, but when the system reboots, it ends up in a loop where the power gets cut before any output is visible on a monitor. The board seems to attempt a reboot as the fan stops for a moment and is started again after each power cut.
When I look at the sd card’s two root partitions,they don’t seem to be corrupted. Are there any logs to look at for the uboot, in case it has somehow gotten corrupted during the update process?
mirzak
November 30, 2020, 7:26am
2
Best is probably to attach to the serial console. It would the the micro USB connector on the Coral board.
Thank you for the response.
I took a look at the serial console, this is a dump when it fails to boot:
U-Boot SPL 2017.03.4-release-day+g8523a101cd (Nov 17 2020 - 18:22:46)
power_bd71837_init
pmic debug: name=BD71837
Board id: 6
check ddr4_pmu_train_imem code
check ddr4_pmu_train_imem code pass
check ddr4_pmu_train_dmem code
check ddr4_pmu_train_dmem code pass
Training PASS
check ddr4_pmu_train_imem code
check ddr4_pmu_train_imem code pass
check ddr4_pmu_train_dmem code
check ddr4_pmu_train_dmem code pass
Training PASS
check ddr4_pmu_train_imem code
check ddr4_pmu_train_imem code pass
check ddr4_pmu_train_dmem code
check ddr4_pmu_train_dmem code pass
Training PASS
Normal Boot
Trying to boot from MMC2
hdr read sector 300, count=1
U-Boot 2017.03.4-release-day+g8523a101cd (Nov 17 2020 - 18:22:46 +0000)
CPU: Freescale i.MX8MQ rev2.0 1500 MHz (running at 1000 MHz)
CPU: Commercial temperature grade (0C to 95C) at 32C
Reset cause: POR
Model: Freescale i.MX8MQ Phanbell
DRAM: 992 MiB
Board id: 6
Baseboard id: 1
MMC: FSL_SDHC: 0, FSL_SDHC: 1
In: serial
Out: serial
Err: serial
BuildInfo:
- ATF 1cb68fa
- U-Boot 2017.03.4-release-day+g8523a101cd
flash target is MMC:1
Net: eth0: ethernet@30be0000
can't find partition: misc, dump the partition table
idx 0, ptn 0 name='gpt' start=0 len=2048
idx 1, ptn 0 name='tos' start=0 len=2047
idx 2, ptn 0 name='bootloader0' start=66 len=4094
idx 3, ptn 1 name='mmcsdb1' start=49152 len=32768
idx 4, ptn 2 name='mmcsdb2' start=81920 len=442368
idx 5, ptn 3 name='mmcsdb3' start=524288 len=442368
idx 6, ptn 4 name='mmcsdb4' start=966656 len=58439680
cannot get the partion info for misc
Cannot find partition 4080
do_raw_read failed, ret 1
read_bootctl, bcb_rw_block read failed
read command failed
Fastboot: Normal
Hit any key to stop autoboot: 0
reading boot.scr
1627 bytes read in 12 ms (131.8 KiB/s)
## Executing script at 40480000
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
libfdt fdt_check_header(): FDT_ERR_BADMAGIC
No FDT memory address configured. Please configure
the FDT address via "fdt addr <address>" command.
Aborting!
Failed to mount ext2 filesystem...
** Unrecognized filesystem type **
Bad Linux ARM64 Image magic!
resetting ...
U-Boot SPL 2017.03.4-release-day+g8523a101cd (Nov 17 2020 - 18:22:46)
power_bd71837_init
pmic debug: name=BD71837
Board id: 6
check ddr4_pmu_train_imem code
check ddr4_pmu_train_imem code pass
check ddr4_pmu_train_dmem code
check ddr4_pmu_train_dmem code pass
Training PASS
check ddr4_pmu_train_imem code
check ddr4_pmu_train_imem code pass
check ddr4_pmu_train_dmem code
check ddr4_pmu_train_dmem code pass
Training PASS
check ddr4_pmu_train_imem code
check ddr4_pmu_train_imem code pass
check ddr4_pmu_train_dmem code
check ddr4_pmu_train_dmem code pass
Training PASS
Normal Boot
Trying to boot from MMC2
hdr read sector 300, count=1
U-Boot 2017.03.4-release-day+g8523a101cd (Nov 17 2020 - 18:22:46 +0000)
CPU: Freescale i.MX8MQ rev2.0 1500 MHz (running at 1000 MHz)
CPU: Commercial temperature grade (0C to 95C) at 33C
Reset cause: POR
Model: Freescale i.MX8MQ Phanbell
DRAM: 992 MiB
Board id: 6
Baseboard id: 1
MMC: FSL_SDHC: 0, FSL_SDHC: 1
In: serial
Out: serial
Err: serial
BuildInfo:
- ATF 1cb68fa
- U-Boot 2017.03.4-release-day+g8523a101cd
flash target is MMC:1
Net: eth0: ethernet@30be0000
can't find partition: misc, dump the partition table
idx 0, ptn 0 name='gpt' start=0 len=2048
idx 1, ptn 0 name='tos' start=0 len=2047
idx 2, ptn 0 name='bootloader0' start=66 len=4094
idx 3, ptn 1 name='mmcsdb1' start=49152 len=32768
idx 4, ptn 2 name='mmcsdb2' start=81920 len=442368
idx 5, ptn 3 name='mmcsdb3' start=524288 len=442368
idx 6, ptn 4 name='mmcsdb4' start=966656 len=58439680
cannot get the partion info for misc
Cannot find partition 4080
do_raw_read failed, ret 1
read_bootctl, bcb_rw_block read failed
read command failed
Fastboot: Normal
Hit any key to stop autoboot: 0
When looking at the uboot console result for the printenv command, the environment is missing values of
mender_boot_part & mender_boot_part_hex
after the update. When I redefine these variables, the system boots up fine. Is there way configure mender so that it doesn’t do this or is this unintentional behavior?
Every time an update is installed those values disappear.