Difference between revisions of "USB Stack"

From ReactOS Wiki
Jump to: navigation, search
(Source code template)
m (Update links)
Line 1: Line 1:
 
The USB stack is the component which provides the communication between USB devices and their respective drivers and applications. It consists of multiple files, each with a distinct function. The USB stack in ReactOS is currently extremely limited. This page documents the development of the new USB stack. Development work on a USB 3 stack is not planned at this time.
 
The USB stack is the component which provides the communication between USB devices and their respective drivers and applications. It consists of multiple files, each with a distinct function. The USB stack in ReactOS is currently extremely limited. This page documents the development of the new USB stack. Development work on a USB 3 stack is not planned at this time.
 
  
 
== Overview ==
 
== Overview ==
 
 
The goal is to develop a USB stack which:
 
The goal is to develop a USB stack which:
 
* is USB 1.1 - 2.0 compliant
 
* is USB 1.1 - 2.0 compliant
Line 10: Line 8:
  
 
The entire stack will be fully documented and the implementation progress detailed on this page.
 
The entire stack will be fully documented and the implementation progress detailed on this page.
 
  
 
== Goals ==
 
== Goals ==
 
 
* Primary Goal: USB HID (human input devices) and storage functionality working (Alpha).
 
* Primary Goal: USB HID (human input devices) and storage functionality working (Alpha).
 
* Secondary Goal: Audio and other support added.
 
* Secondary Goal: Audio and other support added.
Line 21: Line 17:
  
 
== Status ==
 
== Status ==
 
 
'''2010-01-08''' - [[Michael Martin]] has started re-implementation. The plan is to start with the EHCI controller and then work up the stack. Drivers will be developed against Win2k and WinXP for starting off. Progress can be found [http://cia.vc/stats/author/mjmartin here].
 
'''2010-01-08''' - [[Michael Martin]] has started re-implementation. The plan is to start with the EHCI controller and then work up the stack. Drivers will be developed against Win2k and WinXP for starting off. Progress can be found [http://cia.vc/stats/author/mjmartin here].
  
Line 31: Line 26:
  
 
== References ==
 
== References ==
 
 
* [http://www.usb.org/developers/docs/ USB.org specifications]
 
* [http://www.usb.org/developers/docs/ USB.org specifications]
 
* [http://xenbits.xensource.com/ext/win-pvdrivers.hg XEN PV Usb Drivers]
 
* [http://xenbits.xensource.com/ext/win-pvdrivers.hg XEN PV Usb Drivers]
* [http://msdn.microsoft.com/en-us/library/ee621942.aspx How to start USB Driver Development]
+
* [http://msdn.microsoft.com/en-us/library/ff537858.aspx Roadmap for Developing USB Drivers]
 
* Windows Driver Kit (Driver Development Kit).
 
* Windows Driver Kit (Driver Development Kit).
 
* various books and sites on the WDM model, to be expanded later.
 
* various books and sites on the WDM model, to be expanded later.
 
* [http://www.microsoft.com/whdc/archive/usb2support.mspx?pf=true USB Driver Stack for Windows XP and later]
 
* [http://www.microsoft.com/whdc/archive/usb2support.mspx?pf=true USB Driver Stack for Windows XP and later]
* [http://msdn.microsoft.com/en-us/library/ms794302.aspx USB Device Stack for Windows XP and later]
+
* [http://msdn.microsoft.com/en-us/library/ff539301.aspx USB Device Stack for Windows XP and later]
 +
 
 
[[Category:Documentation]]
 
[[Category:Documentation]]

Revision as of 16:15, 25 August 2010

The USB stack is the component which provides the communication between USB devices and their respective drivers and applications. It consists of multiple files, each with a distinct function. The USB stack in ReactOS is currently extremely limited. This page documents the development of the new USB stack. Development work on a USB 3 stack is not planned at this time.

Overview

The goal is to develop a USB stack which:

  • is USB 1.1 - 2.0 compliant
  • uses WDM (NT 5) API
  • is compatible with all USB devices and drivers (which adhere to the standard)

The entire stack will be fully documented and the implementation progress detailed on this page.

Goals

  • Primary Goal: USB HID (human input devices) and storage functionality working (Alpha).
  • Secondary Goal: Audio and other support added.
  • Beyond: testing and debugging.

Due to the complexity and size, no release dates will be provided as of now.

Status

2010-01-08 - Michael Martin has started re-implementation. The plan is to start with the EHCI controller and then work up the stack. Drivers will be developed against Win2k and WinXP for starting off. Progress can be found here.

Outdated information

See here.

See Also

USB Stack Template

References