[U-Boot] [RFC PATCH v1 0/5] Add fastboot UDP support

Alex Kiernan
2018-04-24T09:37:02Z

This series merges the fastboot UDP support from AOSP into mainline
U-Boot.

Open questions:

- what's the correct way of attributing the original authors? I've added
Co-authored-by, is that right? checkpatch doesn't seem to know any
of the co- tags
- currently there's no NAND support and I've no way of testing that, so
my inclination is towards leaving it like that until someone with that
particular itch to scratch can look at it
- you can select both USB and UDP fastboot, but the comments in the
AOSP code suggest that needs fixing - again, I've no board I can test
USB fastboot on
- the USB and UDP code want consolidating, with this series there would
then be two separate implementations of the same protocol
- the syntax for the USB fastboot command changes from `fastboot <controller>`
to `fastboot usb <controller>`, that feels unacceptable and we probably
want something like `fastboot <controller>` or `fastboot udp`?
- unrelated to this series, but a show-stopper for me, there's no FIT image
support, but that doesn't feel unsolveable - something like add an option
to pass in the load address and/or use loadaddr, then something else to
let you override the bootm invocation on the server side

I've not tested all the code paths yet, but the obvious stuff works
(basic interaction, download, boot) - every interaction elicits a
`WARNING: unknown variable: slot-count` on the console; I'm guessing that
my local end is sending a getvar for that, but I've not investigated.

Without any way of testing any of the USB/NAND code I'm nervous of wading
into that kind of refactoring, would that be a pre-requisite for merging?

Alex Kiernan (5):
dfu: Refactor fastboot_okay/fail to take response
dfu: Extract fastboot_okay/fail to fb_common.c
net: dfu: Merge AOSP UDP fastboot
dfu: Resolve Kconfig dependency loops
net: dfu: Support building without MMC

cmd/fastboot.c | 32 ++-
cmd/fastboot/Kconfig | 21 +-
cmd/net.c | 6 +
common/Makefile | 4 +
common/fb_common.c | 44 ++++
common/fb_mmc.c | 114 ++++++---
common/fb_nand.c | 31 +--
common/image-sparse.c | 41 ++-
drivers/usb/gadget/f_fastboot.c | 36 +--
include/fastboot.h | 17 +-
include/fb_mmc.h | 4 +-
include/fb_nand.h | 4 +-
include/image-sparse.h | 2 +-
include/net.h | 6 +-
include/net/fastboot.h | 27 ++
net/Makefile | 1 +
net/fastboot.c | 548 ++++++++++++++++++++++++++++++++++++++++
net/net.c | 9 +
18 files changed, 824 insertions(+), 123 deletions(-)
create mode 100644 common/fb_common.c
create mode 100644 include/net/fastboot.h
create mode 100644 net/fastboot.c

--
2.7.4