Re: looking for open tasks
Travis Geiselbrecht <[email protected]> Thu, 01 Mar 2007 09:20:50 -0800
| Newsgroups | gmane.os.openbeos.kernel.devel |
|---|---|
| Message-ID | <[email protected]> |
Niels Reedijk wrote: > 2007/2/28, jan matejek <matejcik-IaeKGDb/[email protected]>: >> >> Niels Reedijk napsal(a): >>> * USB OHCI driver is also still open. Got some more code llingering >>> about, but my issue is that I'm in Spain and my development computer >>> is in Holland. >>> >>> I can give some pointers on how to proceed. >>> >>> Niels >>> >> we liked this one too. >> can you please be more specific about what needs to be done, how big it >> is etc. ? > > Well, basically, the task is to write the driver of the OHCI > controller. That is the piece of software between the usb stack, which > communicates with individual drivers and does much of the high level > USB protocol stuff, and the OHCI bus that actually communicates with > the individual devices. > > Size of the task: > - Even though the higher level part of the USB protocol is already > implemented by Michael, you will still need to get the bigger picture. > Expect at least two weeks or more to get acquainted with the usb spec, > the code etcetera. > - The ohci spec is quite clear and has a lot of example metacode on > how to implement various subparts of the driver > - The big advantage is that Michael already wrote the UHCI driver, so > you basically have a manual on how the stack interacts with your > driver. > - Especially the OHCI driver of solaris is very well-written and might > prove some insight in how to implement certain parts, even though > you'll be doing different stuff because the interface will have to be > different. > > What's already there: > - Initialisation routine > - Code for emulation of the root hub. > > On my computer in Holland, which I won't access for four months since > I'm in Spain for the time being, I have the beginnings of transmitting > packets. I remember much of that process and I'd be able to help you > getting started on that. > > Now to the crucial question, will you be able to do it? Three people, > eight weeks (by now only seven?), perhaps it can be done, but it all > depends on you level, your skills and the available time. I'm not a > kernel programmer, I haven't actually gotten any education as a > programmer before, so my progress is very slowly. It's good that I'm > persistent, else I would have given up on it before. You might make > it, if you understand kernel programming (which I had to learn). And > don't forget that you need the hardware for it. > > The task Waldemar proposed, isochronous streams in USB, is perhaps a > viable alternative, however it will require changing the high level > stack and the low level drivers for UHCI and EHCI, plus learning all > about the USB protocol. You'd have to communicate with Michael Lotz on > this one, you shouldn't get in his way. I'd say the OHCI stack is more > self-contained and probably more rewarding if finished. I also had a start of an OHCI driver working in newos. It got far enough to do enough transfers to enumerate the busses, etc. It might be helpful to look at it. IIRC, OHCI was pretty straightforward. The only really tricky part was dealing with the weird way it handles interrupt transfer scheduling, but once you figure it out it's quite nifty. OHCI is definitely a bit more sane than UHCI, from what I understand. Travis ------------------------------------------------------------------------- Take Surveys. Earn Cash. Influence the Future of IT Join SourceForge.net's Techsay panel and you'll get the chance to share your opinions on IT & business topics through brief surveys-and earn cash http://www.techsay.com/default.php?page=join.php&p=sourceforge&CID=DEVDEV