Dear John Rigby,
In message BANLkTin6bvvn1_JCBk5zB3j5biYXZgBY5g@mail.gmail.com you wrote:
Ok, I had already read both of those posts and when I read "design" I was thinking that Android Fastboot exists and the feature list is already set as is the wire protocol, so I don't see that we have a lot of flexibility in those areas. The only design I see that is up for definition is how it can be implemented in U-Boot, that was why I brought up sharing with DFU.
Well, this is certainly one aspect of the implementation for U-Boot.
I will follow up in a separate email with summary design docs of what fastboot is including what the wire protocol is and what services it needs from the environment it is running in. Along with this I will have pointers to more detailed docs.
Does that sound reasonable?
It's probably sufficient to just provide pointers to these documents. What I'm really looking for is not the protocol, but how you design the implementation for U-Boot. There are several aspects that probably should be covered, for example the user interface (how to start it, how to handle errors, how to handle timeouts, etc.), the integration into the USB subsystem (which parts can be shared with others like serial console, how to handle device IDs, ...) and so on and on.
Best regards,
Wolfgang Denk