Implementing an xHCI that supports USB3.0 only

Question about which tools to use, bugs, the best way to implement a function, etc should go here. Don't forget to see if your question is answered in the wiki first! When in doubt post here.
Post Reply
bizzigul
Posts: 4
Joined: Fri Jan 25, 2013 9:18 pm

Implementing an xHCI that supports USB3.0 only

Post by bizzigul »

I'd like first to thank you all for this fantastic website.

I'm planning to implement an xHCI for my OS; but I don't want to implement previous OHCI, UHCI and EHCI specifications.

I'm currently reading the specs. If I understood the thing correctly, I can have an USBD with only an xHCI behind it. Am I correct?

I'd like to have support for USB3.0 only, but I read that implementing previous versions is necessary for full support of this specification...

Thanks for your advice
User avatar
Jonatan44
Posts: 24
Joined: Fri Sep 11, 2009 1:22 am

Re: Implementing an xHCI that supports USB3.0 only

Post by Jonatan44 »

I haven't been took in-depth look of xhci.
but form what i know - yes, the xhci backward support is now in-chip (instead of companion chips)
i have no ideal what does it mean from implementation point of view.
bizzigul
Posts: 4
Joined: Fri Jan 25, 2013 9:18 pm

Re: Implementing an xHCI that supports USB3.0 only

Post by bizzigul »

I'm on the way to read the whole USB/xHCI specs, so I'll post what I find out later.
User avatar
ehenkes
Member
Member
Posts: 124
Joined: Mon Mar 23, 2009 3:15 am
Location: Germany
Contact:

Re: Implementing an xHCI that supports USB3.0 only

Post by ehenkes »

At http://prettyos.de we are just developing an xHCI driver. We are going to try to integrate it into the general usb interface already working with UHCI, OHCI, EHCI.
User avatar
ehenkes
Member
Member
Posts: 124
Joined: Mon Mar 23, 2009 3:15 am
Location: Germany
Contact:

Re: Implementing an xHCI that supports USB3.0 only

Post by ehenkes »

update xhci/usb3:
PrettyOS has now a testwise working xhci module. With vmware we observed correct usb enumeration (slot state: enabled (0) ==> addressed (0)). With real hardware there are still "parameter errors". Perhaps anybody could help to sort that out.

PS: For a working xhci we had to implement acpi, apic, msi (for interrupts).

http://prettyos.de
Post Reply