XenevaOS
Loading...
Searching...
No Matches
Classes | Macros | Enumerations
ch9.h File Reference
#include <linux/kernel.h>
#include <linux/list.h>
Include dependency graph for ch9.h:
This graph shows which files directly or indirectly include this file:

Go to the source code of this file.

Classes

struct  usb_endpoint_descriptor
 
struct  usb_ep
 
struct  usb_request
 
struct  urb
 
struct  usb_host_endpoint
 
struct  usb_device
 
struct  usb_bus
 

Macros

#define USB_ENDPOINT_XFER_CONTROL   0
 
#define USB_ENDPOINT_XFER_ISOC   1
 
#define USB_ENDPOINT_XFER_BULK   2
 
#define USB_ENDPOINT_XFER_INT   3
 
#define USB_DIR_OUT   0x00
 
#define USB_DIR_IN   0x80
 
#define URB_SHORT_NOT_OK   0x0001
 
#define URB_ISO_ASAP   0x0002
 
#define URB_NO_TRANSFER_DMA_MAP   0x0004
 
#define URB_ZERO_PACKET   0x0040
 
#define URB_NO_INTERRUPT   0x0080
 
#define usb_pipein(pipe)   ((pipe) & USB_DIR_IN)
 
#define usb_pipeout(pipe)   (!usb_pipein(pipe))
 
#define usb_pipedevice(pipe)   (((pipe) >> 8) & 0x7f)
 
#define usb_pipeendpoint(pipe)   (((pipe) >> 15) & 0xf)
 
#define usb_pipetype(pipe)   (((pipe) >> 30) & 3)
 
#define usb_pipecontrol(pipe)   (usb_pipetype(pipe) == USB_ENDPOINT_XFER_CONTROL)
 
#define usb_pipebulk(pipe)   (usb_pipetype(pipe) == USB_ENDPOINT_XFER_BULK)
 
#define usb_pipeint(pipe)   (usb_pipetype(pipe) == USB_ENDPOINT_XFER_INT)
 
#define usb_pipeisoc(pipe)   (usb_pipetype(pipe) == USB_ENDPOINT_XFER_ISOC)
 

Enumerations

enum  usb_device_speed {
  USB_SPEED_UNKNOWN = 0 , USB_SPEED_LOW , USB_SPEED_FULL , USB_SPEED_HIGH ,
  USB_SPEED_WIRELESS , USB_SPEED_SUPER , USB_SPEED_SUPER_PLUS
}
 
enum  usb_device_state {
  USB_STATE_NOTATTACHED = 0 , USB_STATE_ATTACHED , USB_STATE_POWERED , USB_STATE_RECONNECTING ,
  USB_STATE_UNAUTHENTICATED , USB_STATE_DEFAULT , USB_STATE_ADDRESS , USB_STATE_CONFIGURED ,
  USB_STATE_SUSPENDED
}
 

Macro Definition Documentation

◆ URB_ISO_ASAP

#define URB_ISO_ASAP   0x0002

◆ URB_NO_INTERRUPT

#define URB_NO_INTERRUPT   0x0080

◆ URB_NO_TRANSFER_DMA_MAP

#define URB_NO_TRANSFER_DMA_MAP   0x0004

◆ URB_SHORT_NOT_OK

#define URB_SHORT_NOT_OK   0x0001

◆ URB_ZERO_PACKET

#define URB_ZERO_PACKET   0x0040

◆ USB_DIR_IN

#define USB_DIR_IN   0x80

◆ USB_DIR_OUT

#define USB_DIR_OUT   0x00

◆ USB_ENDPOINT_XFER_BULK

#define USB_ENDPOINT_XFER_BULK   2

◆ USB_ENDPOINT_XFER_CONTROL

#define USB_ENDPOINT_XFER_CONTROL   0

◆ USB_ENDPOINT_XFER_INT

#define USB_ENDPOINT_XFER_INT   3

◆ USB_ENDPOINT_XFER_ISOC

#define USB_ENDPOINT_XFER_ISOC   1

◆ usb_pipebulk

#define usb_pipebulk (   pipe)    (usb_pipetype(pipe) == USB_ENDPOINT_XFER_BULK)

◆ usb_pipecontrol

#define usb_pipecontrol (   pipe)    (usb_pipetype(pipe) == USB_ENDPOINT_XFER_CONTROL)

◆ usb_pipedevice

#define usb_pipedevice (   pipe)    (((pipe) >> 8) & 0x7f)

◆ usb_pipeendpoint

#define usb_pipeendpoint (   pipe)    (((pipe) >> 15) & 0xf)

◆ usb_pipein

#define usb_pipein (   pipe)    ((pipe) & USB_DIR_IN)

◆ usb_pipeint

#define usb_pipeint (   pipe)    (usb_pipetype(pipe) == USB_ENDPOINT_XFER_INT)

◆ usb_pipeisoc

#define usb_pipeisoc (   pipe)    (usb_pipetype(pipe) == USB_ENDPOINT_XFER_ISOC)

◆ usb_pipeout

#define usb_pipeout (   pipe)    (!usb_pipein(pipe))

◆ usb_pipetype

#define usb_pipetype (   pipe)    (((pipe) >> 30) & 3)

Enumeration Type Documentation

◆ usb_device_speed

Enumerator
USB_SPEED_UNKNOWN 
USB_SPEED_LOW 
USB_SPEED_FULL 
USB_SPEED_HIGH 
USB_SPEED_WIRELESS 
USB_SPEED_SUPER 
USB_SPEED_SUPER_PLUS 

◆ usb_device_state

Enumerator
USB_STATE_NOTATTACHED 
USB_STATE_ATTACHED 
USB_STATE_POWERED 
USB_STATE_RECONNECTING 
USB_STATE_UNAUTHENTICATED 
USB_STATE_DEFAULT 
USB_STATE_ADDRESS 
USB_STATE_CONFIGURED 
USB_STATE_SUSPENDED