On 04/06/13 22:50, Oleksandr Tymoshenko wrote:
Hello,
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
straighforward.
- 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
yet
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.
Patch:
http://people.freebsd.org/~gonzo/arm/patches/beaglebone-musb.diff
Hi,
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) |
EHCI_QH_SET_PORT(xfer->xroot->udev->hs_port_no));
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.
--HPS
_______________________________________________
freebsd-usb@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/freebsd-usb
To unsubscribe, send any mail to "freebsd-usb-unsubscr...@freebsd.org"