raspberrypi / usbboot

Raspberry Pi USB booting code, moved from tools repository
Apache License 2.0
905 stars 229 forks source link

Non MSD boot on Pi4-CM #75

Closed tetofonta closed 2 years ago

tetofonta commented 3 years ago

I cannot figure out how to boot a kernel from rpiboot. As mentioned in README file, I've copied the boot partition and run rpiboot with -d option without any joy. I had to include the bootcode4.bin from the msd directory, which is what seems the only bootcode available online.

Any suggestion or can anyone point out what I'm doing wrong?

In any case, this is the output of rpiboot:

sudo ./rpiboot -v -v -d boot
Boot directory 'boot'
Loading: boot/bootcode4.bin
Waiting for BCM2835/6/7/2711...
Loading: boot/bootcode4.bin
Device located successfully
libusb: error [udev_hotplug_event] ignoring udev action bind
Initialised device correctly
Found serial number 3
Sending bootcode.bin
libusb_bulk_transfer sent 24 bytes; returned 0
Writing 99540 bytes
libusb_bulk_transfer sent 99540 bytes; returned 0
Successful read 4 bytes 
Waiting for BCM2835/6/7/2711...
Loading: boot/bootcode4.bin
Device located successfully
Failed to open the requested device
Loading: boot/bootcode4.bin
Device located successfully
libusb: error [udev_hotplug_event] ignoring udev action bind
Initialised device correctly
Found serial number 1
Second stage boot server
Received message GetFileSize: config.txt
Loading: boot/config.txt
File size = 212 bytes
Received message ReadFile: config.txt
File read: config.txt
libusb_bulk_transfer sent 212 bytes; returned 0
Received message GetFileSize: pieeprom.sig
libusb_bulk_transfer sent 0 bytes; returned 0
Cannot open file pieeprom.sig
Received message GetFileSize: recover4.elf
libusb_bulk_transfer sent 0 bytes; returned 0
Cannot open file recover4.elf
Received message GetFileSize: recovery.elf
libusb_bulk_transfer sent 0 bytes; returned 0
Cannot open file recovery.elf
Received message GetFileSize: start4.elf
Loading: boot/start4.elf
File size = 2230848 bytes
Received message ReadFile: start4.elf
File read: start4.elf
libusb_bulk_transfer sent 2230848 bytes; returned 0
Received message GetFileSize: fixup4.dat
Loading: boot/fixup4.dat
File size = 5429 bytes
Received message ReadFile: fixup4.dat
File read: fixup4.dat
libusb_bulk_transfer sent 5429 bytes; returned 0
Second stage boot server done
timg236 commented 2 years ago

You need to add the -l server so that it keeps on running after starting the GPU firmware.