Booting vim2 using fastboot protocol over USB OTG


#1

Hi,

I’m attempting to do the following:

  • creating a bootable android image using mkbootimg, including a kernel, cmdline, dtb, and (optional) initramfs
  • booting through USB OTG without flashing, using the fastboot command in uboot, followed by ‘fastboot boot’ on host side

however, my attempts fail with the following traces in uboot:

gxm_q201_v1#fastboot
g_dnl_register: g_dnl_driver.name = usb_dnl_fastboot

USB RESET
SPEED ENUM
cmd is download:02000000
Starting download of 33554432 bytes
..........................................................................
..........................................................................
..........................................................................
..................................
downloading of 33554432 bytes finished
Booting kernel..
ee_gate_off ...
"Synchronous Abort" handler, esr 0x96000004
ELR:     77f33fc8
LR:      77f34694
x0 : aaaaaaaaaaaaaaaa x1 : aaaaaaaaaaaaaaa9
x2 : aaaaaaaaaaaaaaaa x3 : 00000000ffffffff
x4 : 0000000000000000 x5 : 0000000000000000
x6 : 0000000073ea8968 x7 : 0000000000000044
x8 : 0000000000000000 x9 : 0000000000000000
x10: 0000000000000000 x11: 0000000000000000
x12: 0000000000000000 x13: 0000000000000000
x14: 0000000000000000 x15: 0000000000000000
x16: 0000000000000000 x17: 0000000000000000
x18: 0000000073ea8e28 x19: 0000000073ea8697
x20: aaaaaaaaaaaaaaaa x21: 00000000ffffffff
x22: 0000000077f411da x23: 00000000ffffffd0
x24: 0000000073ea89a0 x25: 0000000073ea8680
x26: 0000000077f3cd60 x27: 0000000000000000
x28: 0000000077f3a6d0 x29: 0000000073ea8530

Resetting CPU ...

resetting ...
GXM:BL1:dc8b51:76f1a5;FEAT:ADFC318C:80;POC:3;RCY:0;EMMC:0;READ:0;0.0;CHK:0;

any insights about what could be wrong, or how to do it properly ?

also, it’s not clear to me how the DTB file should be included in the mkbootimg command…


#2

I’ve also tried to load the contents of /dev/boot directly, but the same result happens…


#3

this code seems to indicate the fastboot command can’t work without modifying uboot: https://github.com/khadas/u-boot/blob/ubuntu/drivers/usb/gadget/f_fastboot.c#L575

are there any other options to load and boot a kernel over USB-OTG ?