tech-kern archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

Preparing to write new USB Host Controller driver



Hello tech-kern.
        I'm preparing to write a driver for SUBWAY USB controller[1]. It is 
intended to be used with Amiga 1200 (and some compatible clockports). SUBWAY is 
based on TransDimensions/Oxford UHC124 chip[2], which is a low-cost, non-PCI 
USB host controller for embedded applications. 
        This topic was discussed briefly on port-amiga list, where kind guys 
explained me how to interface properly to subsystems of Amiga port. Driver will 
be split into MI driver for UHC124, and Amiga-specific frontend for SUBWAY.
        As UHC124 does not support OHCI/UHCI, I need to write my own interface 
to USB stack. This looks a bit... complicated. It was already done in SL811HS 
driver, but implementation is a bit unclear to me. Looks like there are some 
ugly hacks. For example NetBSD's USB stack assumes that Host Controller is DMA 
capable - and UHC124 is not capable of DMA transfers. DMA was "faked" by 
SL811HS driver. Is this the proper way to resolve the problem?

Driver skeleton: http://c0ff33.net/svn/netbsd-subway/src/sys/ . 

[1] http://www.e3b.de/usb/main_subway_e.html
[2] http://www.farnell.com/datasheets/80773.pdf

Best regards,
Radoslaw Kujawa



Home | Main Index | Thread Index | Old Index