>> I did find a _little_ doc on the protocol fastboot speaks over USB, >> but it assumes knowledge of concepts I don't have, saying things >> like
>> Basic Requirements</h2><ul><li><p>USB</p><ul><li>Two bulk >> endpoints (in, out) are required</li><li>Max packet size must >> be 64 bytes for full-speed, 512 bytes for high-speed and 1024 >> bytes for Super Speed USB.</li><li>The protocol is entirely >> host-driven and synchronous [...]. > So.. what you have there is the physical description of the USB > endpoints that are being used. That is a start, but mostly just the > flea on the tick on the dog. You will need the dog. That matches my expectations. That same page did provide more description of the protocol, but that part of it made sense to me; it spoke of how you put _this_ content in _that_ packet to make something specific happen. (It also spoke of the same protocol having implementations over TCP and UDP, but as far as I can tell the Teracube bootloader doesn't provide either of those.) I didn't feel I needed any explanations of concepts to make sense of that. > If you want to see kernel code that works at this level, you can look > at src/sys/dev/usb/if_rum.c in a recentish NetBSD source tree around > line 349 or so in the attach function. The if_rum device uses bulk > endpoints to send and receive network traffic. That sounds promising, yes. Thank you for the pointer; I'll have a look at some point when I have a bit more time; family things will be claiming my attention for, likely, the rest of the day. /~\ The ASCII Mouse \ / Ribbon Campaign X Against HTML [email protected] / \ Email! 7D C8 61 52 5D E7 2D 39 4E F1 31 3E E8 B3 27 4B
