Skip to content

Commit

Permalink
board/rasperrypi: rpi-firmware-generator: exit if partition is 0
Browse files Browse the repository at this point in the history
The firmware of the raspberrypi5 reports invalid partition as 0 causing
the rpi-firmware-generator to generate a mount unit with an unexistant
partition 0.

This exits in error if the boot partition is 0 instead of creating an
invalid mount unit that slows down the boot process.

See:

	RPi: BOOTSYS release VERSION:30de0ba5 DATE: 2023/10/30 TIME: 16:45:10
	BOOTMODE: 0x06 partition 0 build-ts BUILD_TIMESTAMP=1698684310 serial 64b59de4 boardrev d04170 stc 1265055
	AON_RESET: 00000003 PM_RSTS 00001000
	RP1_BOOT chip ID: 0x20001927
	PM_RSTS: 0x00001000
	part 00000000 reset_info 00000000
	PMIC reset-event 00000000 rtc 00000001 alarm 00000000 enabled 0
	uSD voltage 3.3V
	Initialising SDRAM 'Micron' 32Gb x2 total-size: 64 Gbit 4267
	DDR 4267 1 0 64 152
	RP1_BOOT chip ID: 0x20001927

	RP1_BOOT chip ID: 0x20001927
	RP1_BOOT: fw size 25968
	PCI2 init
	PCI2 reset
	PCIe scan 00001de4:00000001
	RP1_CHIP_INFO 20001927

	RPi: BOOTLOADER release VERSION:30de0ba5 DATE: 2023/10/30 TIME: 16:45:10
	BOOTMODE: 0x06 partition 0 build-ts BUILD_TIMESTAMP=1698684310 serial 64b59de4 boardrev d04170 stc 4254551
	AON_RESET: 00000003 PM_RSTS 00001000
	usb_pd_init status 3
	USB_PD CONFIG 0 41
	Boot mode: SD (01) order f4
	SD HOST: 200000000 CTL0: 0x00800000 BUS: 400000 Hz actual: 390625 HZ div: 512 (256) status: 0x1fff0000 delay: 276
	SD HOST: 200000000 CTL0: 0x00800f00 BUS: 400000 Hz actual: 390625 HZ div: 512 (256) status: 0x1fff0000 delay: 276
	SD retry 1 oc 501
	SD HOST: 200000000 CTL0: 0x00800000 BUS: 400000 Hz actual: 390625 HZ div: 512 (256) status: 0x1fff0000 delay: 276
	OCR c0ff8000 [183]
	CID: 0012345653440000000003284d170125
	CSD: 400e00325b590000761f7f800a400000
	SD: bus-width: 4 spec: 2 SCR: 0x02b58443 0x00000000
	SD HOST: 200000000 CTL0: 0x00800f04 BUS: 50000000 Hz actual: 50000000 HZ div: 4 (2) status: 0x1fff0000 delay: 2
	MBR: 0x00002000, 1048576 type: 0x0c
	MBR: 0x00102000,29908992 type: 0x83
	MBR: 0x00000000,       0 type: 0x00
	MBR: 0x00000000,       0 type: 0x00
	USB-PD: src-cap PDO object1 0x0a01912c
	Current 3000 mA
	Voltage 5000 mV
	USB-PD: src-cap PDO object2 0x0002d12c
	Current 3000 mA
	Voltage 9000 mV
	USB-PD: src-cap PDO object3 0x0003c12c
	Current 3000 mA
	Voltage 12000 mV
	USB-PD: src-cap PDO object4 0x0004b12c
	Current 3000 mA
	Voltage 15000 mV
	USB-PD: src-cap PDO object5 0x00064145
	Current 3250 mA
	Voltage 20000 mV
	USB-PD: src-cap PDO object6 0xc1a4213c
	Trying partition: 0
	type: 32 lba: 8192 'mkfs.fat' ' bootfs     ' clusters 261116 (4)
	rsc 32 fat-sectors 2040 root dir cluster 2 sectors 0 entries 0
	FAT32 clusters 261116
	[sdcard] autoboot.txt not found
	Trying partition: 0
	type: 32 lba: 8192 'mkfs.fat' ' bootfs     ' clusters 261115 (4)
	rsc 32 fat-sectors 2040 root dir cluster 2 sectors 0 entries 0
	FAT32 clusters 261115
	Read config.txt bytes     1213 hnd 0x199
	[sdcard] pieeprom.upd not found
	usb_max_current_enable default 0 max-current 3000
	Read bcm2712-rpi-5-b.dtb bytes    77755 hnd 0xe6
	dt-match: compatible: raspberrypi,5-model-b match: brcm,bcm2712
	dt-match: compatible: brcm,bcm2712 match: brcm,bcm2712
	PM_RSTS 00001000
	Selecting USB low current limit

Note: This misbehaviour was reported[1] and it has been fixed[2][3]
since pieeprom-2024-05-13.bin[4].

[1]: raspberrypi/rpi-eeprom#575
[2]: raspberrypi/rpi-eeprom#578
[3]: https://github.com/raspberrypi/rpi-eeprom/blob/2b2c8103ff4b1b6d64345af5864f25841199e2dd/firmware-2712/release-notes.md
[4]: https://github.com/raspberrypi/rpi-eeprom/raw/2b2c8103ff4b1b6d64345af5864f25841199e2dd/firmware-2712/latest/pieeprom-2024-05-13.bin
  • Loading branch information
gportay committed May 15, 2024
1 parent fa51dd8 commit f4df2ce
Showing 1 changed file with 5 additions and 0 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,11 @@ then
exit 1
fi

if [[ "$part" -eq 0 ]]
then
exit 1
fi

if ! unit="$(systemd-escape boot/firmware.mount)"
then
exit 1
Expand Down

0 comments on commit f4df2ce

Please sign in to comment.