Weekly report - Week 1
Status:
- Managed to build Angstrom's console-image, as well as the kernel (outside OpenEmbedded), both work well on the BeagleBoard.
- Wrote a prototype kernel proxy driver, and managed to get USB data to be forwarded properly between a USB mouse and a Linux PC, with the BeagleBoard in between (git tree here, but no really usable yet).
- Modified the MUSB controller driver to disable high-speed USB if the gadget asks for full-speed (commit here).
Plans:
- Get the proxy driver more generic, and get completely rid of the static descriptor copy.
- Dynamically connect endpoints, according to the endpoint descriptor.
Risks:
- Differences between low-speed, full-speed, high-speed, for example in the meaning of some descriptor fields (e.g., bInterval for endpoints): since the BeagleBoard MUSB cannot operate in low-speed, this would require some "rewriting" of the descriptors to get the device to work.
- Also, my Linux PC asks for the Device_Qualifier descriptor (a high-speed only descriptor) when connected to the BB, but not when connected directly to the mouse, even though the device is advertised and detected as full-speed.
No comments:
Post a Comment