[U-Boot] [PATCH 0/2] am335x_boneblack: Enable fastboot flash support
Sam Protsenko
semen.protsenko at linaro.org
Tue Feb 27 21:45:02 UTC 2018
Standard and recommended way to upgrade the firmware is DFU. But DFU has
extremely low transmission speed (around 150 KiB/sec), thus it's a bad
fit for flashing big images (like rootfs). Low DFU speed is mostly due to
next reasons (kudos to Ruslan Bilovol for investigation):
1. DFU works only via EP0, per DFU specification [1]. But AM335x
doesn't have DMA for EP0, according to AM335x TRM [2]: from
section 16.2:
"The CPPI DMA can be used to service Endpoints 1 to 15 not
Endpoint 0. CPU access method is used to service Endpoint 0
transactions."
2. Max transmission packet size via EP0 is 64 bytes, whereas for other
endpoints max transmission packet size is 512 bytes
fastboot specification [3], on the other hand, says nothing about which
EP should be used (and I see that EP1 is used on BBB board). So let's
enable fastboot flash support on BeagleBone Black board to provide a
better way to flash big images via USB.
[1] www.usb.org/developers/docs/devclass_docs/DFU_1.1.pdf
[2] www.ti.com/lit/ug/spruh73p/spruh73p.pdf
[3] https://android.googlesource.com/platform/system/core/+/master/fastboot/README.md
Sam Protsenko (2):
omap: Fix AM335x build with enabled fastboot flash
configs: am335x_boneblack: Enable fastboot flash capability
arch/arm/mach-omap2/utils.c | 2 ++
configs/am335x_boneblack_defconfig | 2 ++
2 files changed, 4 insertions(+)
--
2.16.1
More information about the U-Boot
mailing list