On 04/06/13 22:50, Oleksandr Tymoshenko wrote:

This is first iteration of Host Mode support for Mentor Graphics
OTG USB controller. I tested it by building kernel with USB memory
stick mounted as /usr/obj, resulting kernel was bootable and worked fine.
I reused some ideas (mostly for channel-management) from
DWT OTG driver.

Some pieces are still missing:
- Support for SPLIT transactions, I don not have high speed hub
     right now to test it, but implementing it should be really
- Isochronous transfers. I do not have hardware to test this. Does
     anybody have any suggestion about simple use case?
- Control Data OUT transaction
- Wrapper for atmel HW has not ben synced with new core logic requirements

Please review and test. I tested it only with gcc-built kernel/world.
Now when
first iteration is finished I'm going to update all my boards to new
world order
(clang/EABI) and re-test this stuff.



Supporting split transactions is required:

+               /* SPLIT transaction */
+               MUSB2_WRITE_1(sc, MUSB2_REG_RXHADDR(0), 0);
+               MUSB2_WRITE_1(sc, MUSB2_REG_RXHUBPORT(0), 0);

See EHCI driver:

            EHCI_QH_SET_HUBA(xfer->xroot->udev->hs_hub_addr) |

This feature should be enabled when:

Connected root HUB port is running HIGH speed, and the connected device is LOW or FULL speed. Try connecting a USB keyboard through any high speed USB HUB.

freebsd-usb@freebsd.org mailing list
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"

Reply via email to