[U-Boot] [RFC PATCH v1 0/6] SPL: DFU Support in SPL
Ravi Babu
ravibabu at ti.com
Tue Jun 14 13:02:18 CEST 2016
Traditionally the DFU support is available only
as part 2nd stage boot loader(u-boot) and DFU
is not supported in SPL.
The SPL-DFU feature is useful for boards which has
only USB inteface and do not have external interface
like ethernet or MMC/SD to boot the board.
This feature enable DFU to be builtin part of SPL and
boot the u-boot directly by loading u-boot image
to RAM from PC using dfu-util.
This patch series adds DFU support in SPL to flash binary
images to factory or bare-metal boards to memory
devices like SPI, RAM, eMMC, MMC/SD card using
USB interface.
As a reference, refer to application note [3] on SPL-DFU
support based on 2014.07 u-boot.
steps for SPL-DFU/RAM:
1) Soc ROMcode loads the u-boot-spl.bin(+DFU) to IRAM
from PC host via usb interface and execute DFU(RAM/SPI).
2) if DFU/RAM is selected, then load u-boot.img
to RAM using dfu-util from PC-host.
3) After loading u-boot, press ctrl+c to exit to jump
to u-boot. Once u-boot
steps for SPL-DFU/SPI:
1) Soc ROMcode loads the u-boot-spl.bin(+DFU) to IRAM
from PC host via usb interface and execute DFU(RAM/SPI).
2) If DFU/SPI is selected, then load MLO/u-boot/kernel/dtb
images directly to spi partitions.
Note: I could not find better option to isolate dfu source
to include/exclude in Makefile when SPL-DFU feature
enabled/disabled, please suggest any better option.
Tested on dra7xx SoCs family.
[1] is EVM console output with SPL-DFU/SPI enabled.
[2] is ubuntu host console output.
references:
[1] http://pastebin.ubuntu.com/16730701/
[2] http://pastebin.ubuntu.com/16730765/
[3] http://www.ti.com/lit/an/sprac33/sprac33.pdf
Ravi Babu (6):
spl: dfu: add dfu support in SPL
spl: dfu: adding dfu support functions for SPL-DFU
dfu: spl: add generic spl-dfu function in common-spl
dra7x: spl: dfu: adding SPL-DFU support for dra7x platform
dfu: spl: dra7x: enable SPL-dfu support for dra7x platform
dfu: spl: am335x: SPL-DFU support for am335x
Kconfig | 33 ++++++++
board/ti/am335x/board.c | 15 ++++
board/ti/dra7xx/evm.c | 17 ++++
common/Makefile | 26 +++++--
common/command.c | 2 +-
common/spl/Makefile | 1 +
common/spl/spl.c | 9 +++
common/spl/spl_dfu.c | 154 +++++++++++++++++++++++++++++++++++++
include/configs/am335x_evm.h | 17 +++-
include/configs/dra7xx_evm.h | 8 +-
include/configs/ti_omap5_common.h | 2 -
include/spl.h | 11 +++
scripts/Makefile.spl | 13 ++++
13 files changed, 293 insertions(+), 15 deletions(-)
create mode 100644 common/spl/spl_dfu.c
--
1.7.9.5
More information about the U-Boot
mailing list