On Wed, 25 Apr 2018 13:50:50 +0100 Alex Kiernan <alex.kier...@gmail.com> wrote:
> On Wed, Apr 25, 2018 at 8:53 AM, Alex Kiernan > <alex.kier...@gmail.com> wrote: > > On Tue, Apr 24, 2018 at 6:10 PM, Jocelyn Bohr <b...@verily.com> > > wrote: > >> Thanks so much for porting this, Alex! > >> > > ... > > >> > >> You can select both network and USB fastboot to be enabled with > >> the Kconfig, but at runtime you have to select to wait on either > >> USB or network by running > >> "fastboot udp" or "fastboot usb <USB_controller>". When the Android > >> bootloader > >> gets the command to reboot back to fastboot, it will read the > >> "fastbootcmd" env > >> variable and run that as a command > >> (common/android_bootloader.c:151). > > > > Thanks for that (especially the detail on android_bootloader which > > I'd not read through). The bit that concerns me is in > > timed_send_info: > > > > +/** > > + * Send an INFO packet during long commands based on timer. If > > + * CONFIG_UDP_FUNCTION_FASTBOOT is defined, an INFO packet is > > sent > > + * if the time is 30 seconds after start. Else, noop. > > + * > > + * TODO: Handle the situation where both UDP and USB fastboot are > > + * enabled. > > + * > > + * @param start: Time since last INFO packet was sent. > > + * @param msg: String describing the reason for waiting > > + */ > > +void timed_send_info(ulong *start, const char *msg); > > > > The code in timed_send_info is guarded with an ifdef, rather than > > based on the transport that's been selected at runtime. Do we need > > to make timed_send_info work based on the runtime state, rather > > than the compile time, or can we drop the ifdef guard and remove > > the TODO? I guess I'm assuming the former, but with no way to test > > USB I don't want head off down the wrong road! > > > > Having started digging through how we'd merge the two code paths, it's > clear if you had UDP and USB both enabled at compile time and then try > and run the USB path it'll try and do UDP things in timed_send_info, > which can't be good! > I think that we can assume operation of only one medium in a time - i.e. when you issue fastboot usb then no UDP support (and opposite). Best regards, Lukasz Majewski -- DENX Software Engineering GmbH, Managing Director: Wolfgang Denk HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: w...@denx.de
pgprr61J8cEhD.pgp
Description: OpenPGP digital signature
_______________________________________________ U-Boot mailing list U-Boot@lists.denx.de https://lists.denx.de/listinfo/u-boot