raspberrypi / usbboot

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

Unable to flash CM5 eMMC #262

Closed jiribrejcha closed 2 days ago

jiribrejcha commented 2 days ago

Describe the bug

On macOS 15.1.1 (24B91) I am unable to flash CM5 eMMC. rpiboot compiles successfully but it fails with this message. My carrier board has the BOOT jumper shorted and the CM5 is connected via USB-C to USB-C cable to a MacBook Pro M2.

jiri@MacBook usbboot % sudo ./rpiboot RPIBOOT: build-date Nov 29 2024 version 20240422~085300 294e74f0 Waiting for BCM2835/6/7/2711/2712... 2712: Directory not specified using default /usr/share/rpiboot/mass-storage-gadget64/ read_file: Failed to read "2712/bootcode5.bin" from "/usr/share/rpiboot/mass-storage-gadget64//bootfiles.bin" - No such file or directory Failed to open bootcode5.bin

Steps to reproduce the behaviour

git clone --depth=1 https://github.com/raspberrypi/usbboot cd usbboot make sudo ./rpiboot

Device(s)

Other

Compute Module IO board.

CM5 + Mcuzone WiFi 6 carrier board

RPIBOOT logs

jiri@MacBook usbboot % sudo ./rpiboot RPIBOOT: build-date Nov 29 2024 version 20240422~085300 294e74f0 Waiting for BCM2835/6/7/2711/2712... 2712: Directory not specified using default /usr/share/rpiboot/mass-storage-gadget64/ read_file: Failed to read "2712/bootcode5.bin" from "/usr/share/rpiboot/mass-storage-gadget64//bootfiles.bin" - No such file or directory Failed to open bootcode5.bin

Kernel logs

No response

Device UART logs

No response

jiribrejcha commented 2 days ago

This did the trick:

jiri@MacBook usbboot % sudo ./rpiboot -d /Users/jiri/usbboot/mass-storage-gadget64/

pelwell commented 2 days ago

There's a clue in the error message:

Directory not specified using default /usr/share/rpiboot/mass-storage-gadget64/

It sounds like you haven't installed rpiboot, just built it, in which case you will need to specify the directory:

$ sudo ./rpiboot -d mass-storage-gadget64
igiannakas commented 1 hour ago

I've run into the same issue and the above from @pelwell resolved it. The user guide really should state that step...