Re: uBoot broken on RPI2 Model B?
- Reply: Mark Millard : "Re: uBoot broken on RPI2 Model B?"
- In reply to: Karl Denninger : "uBoot broken on RPI2 Model B?"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 03 Mar 2023 22:50:21 UTC
On 3/3/2023 16:12, Karl Denninger wrote: > > Just tried to build -13STABLE for the RPi2 and ran into this (I'm > using Crochet and have had to make some changes to the board-specific > files, but it appears the problem that results in it not working is in > uboot; I've made a number of changes since it looks like the system > now wants to boot off EFI as opposed to what worked in -12, which > would be ok if it can find the boot device -- I think (may be wrong here) > > U-Boot 2023.01 (Jan 26 2023 - 04:25:18 +0000) > > DRAM: 948 MiB > RPI 2 Model B (0xa21041) > Core: 70 devices, 13 uclasses, devicetree: board > MMC: mmc@7e300000: 1 > Loading Environment from FAT... ** Bad device specification mmc 0 ** > In: serial > Out: vidconsole > Err: vidconsole > Net: No ethernet found. > starting USB... > Bus usb@7e980000: USB DWC2 > scanning bus usb@7e980000 for devices... 3 USB Device(s) found > scanning usb for storage devices... 0 Storage Device(s) found > Hit any key to stop autoboot: 0 > U-Boot> > > Needless to say if I let it try to continue it fails as it can't find > the SD card and "mmc dev" shows nothing present. > > Obviously going to dig into this further myself but I recalled > something about this uBoot version being broken on older Pis... > > The layout of the disk on the boot partition is thus: > > root@NewFS:/mnt # ls -la > total 12679 > drwxr-xr-x 1 root wheel 16384 Dec 31 1979 . > drwxr-xr-x 35 root wheel 42 Jan 20 10:16 .. > drwxr-xr-x 1 root wheel 4096 Feb 13 11:09 EFI > -rwxr-xr-x 1 root wheel 709 Feb 13 11:09 README > -rwxr-xr-x 1 root wheel 26745 Feb 13 11:09 bcm2709-rpi-2-b.dtb > -rwxr-xr-x 1 root wheel 52456 Feb 13 11:09 bootcode.bin > -rwxr-xr-x 1 root wheel 141 Feb 13 11:09 config.txt > -rwxr-xr-x 1 root wheel 7314 Feb 13 11:09 fixup.dat > -rwxr-xr-x 1 root wheel 3187 Feb 13 11:09 fixup_cd.dat > -rwxr-xr-x 1 root wheel 10298 Feb 13 11:09 fixup_db.dat > -rwxr-xr-x 1 root wheel 10298 Feb 13 11:09 fixup_x.dat > drwxr-xr-x 1 root wheel 20480 Feb 13 11:09 overlays > -rwxr-xr-x 1 root wheel 21169 Feb 13 11:09 rpi2.dtb > -rwxr-xr-x 1 root wheel 2952960 Feb 13 11:09 start.elf > -rwxr-xr-x 1 root wheel 793116 Feb 13 11:09 start_cd.elf > -rwxr-xr-x 1 root wheel 4794472 Feb 13 11:09 start_db.elf > -rwxr-xr-x 1 root wheel 3704808 Feb 13 11:09 start_x.elf > -rwxr-xr-x 1 root wheel 521916 Feb 13 11:09 u-boot.bin > > root@NewFS:/mnt # ls -laR EFI > total 24 > drwxr-xr-x 1 root wheel 4096 Feb 13 11:09 . > drwxr-xr-x 1 root wheel 16384 Dec 31 1979 .. > drwxr-xr-x 1 root wheel 4096 Feb 13 11:09 BOOT > > EFI/BOOT: > total 140 > drwxr-xr-x 1 root wheel 4096 Feb 13 11:09 . > drwxr-xr-x 1 root wheel 4096 Feb 13 11:09 .. > -rwxr-xr-x 1 root wheel 133812 Feb 13 11:09 bootarm.efi > > root@NewFS:/mnt # more config.txt > init_uart_clock=3000000 > enable_uart=1 > kernel=u-boot.bin > kernel7=u-boot.bin > dtoverlay=mmc > audio_pwm_mode=2 > dtparam=audio=on,i2c_arm=on,spi=on > > root@NewFS:/mnt # ls -la overlays | grep mmc > -rwxr-xr-x 1 root wheel 1221 Feb 13 11:09 mmc.dtbo > > Which I BELIEVE should work -- assuming that I can get "see" the SD > card from u-boot that is.... > > Installed rpi-related packages: > > root@NewFS:/mnt # pkg info|grep rpi > rpi-firmware-1.20210303.g20210303 Firmware for RaspberryPi Single > Board Computer > u-boot-rpi2-2023.01 Cross-build das u-boot for model rpi2 > u-boot-rpi3-2023.01 Cross-build das u-boot for model rpi3 > u-boot-rpi4-2023.01 Cross-build das u-boot for model rpi4 > I found a copy of the 2022-10 uboot: U-Boot 2022.10 (Oct 24 2022 - 02:01:47 +0000) DRAM: 948 MiB RPI 2 Model B (0xa21041) Core: 70 devices, 13 uclasses, devicetree: board MMC: mmc@7e300000: 1 Loading Environment from FAT... ** Bad device specification mmc 0 ** In: serial Out: vidconsole Err: vidconsole Net: No ethernet found. starting USB... Bus usb@7e980000: USB DWC2 scanning bus usb@7e980000 for devices... 3 USB Device(s) found scanning usb for storage devices... 0 Storage Device(s) found Hit any key to stop autoboot: 0 >> FreeBSD EFI boot block Loader path: /boot/loader.efi Initializing modules: ZFS UFS Load Path: /efi\boot\bootarm.efi Load Device: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b)/SD(1)/SD(0)/HD(1,MBR,0xb5048a37,0x3f,0x18fe7) Probing 3 block devices...not supported not supported not supported done ZFS found no pools UFS found no partitions Failed to load '/boot/loader.efi' panic: No bootable partitions found! ## Application failed, r = 1 Can't remove invalid handle 00000000 EFI LOAD FAILED: continuing... MMC Device 2 not found no mmc device at slot 2 Device 0: unknown device Waiting for Ethernet connection... unable to connect. missing environment variable: pxeuuid Retrieving file: pxelinux.cfg/01-b8-27-eb-0d-05-01 Waiting for Ethernet connection... Hmmm... going back and looking at the 2023-01 version boot sequence again... same thing it appears; the u-boot DOES load the EFI loader, but dies there. Am I trying to be too cute by half and should stick ubldr.bin in that boot partition and get rid of the EFI loader entirely? -- Karl Denninger karl@denninger.net /The Market Ticker/ /[S/MIME encrypted email preferred]/