diff options
Diffstat (limited to 'arch')
| -rw-r--r-- | arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c | 99 | ||||
| -rw-r--r-- | arch/powerpc/cpu/mpc5xxx/usb_ohci.c | 99 | ||||
| -rw-r--r-- | arch/powerpc/cpu/ppc4xx/usb_ohci.c | 99 | ||||
| -rw-r--r-- | arch/sparc/cpu/leon3/usb_uhci.c | 107 | 
4 files changed, 6 insertions, 398 deletions
| diff --git a/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c b/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c index fd0ec6595..a3dac7079 100644 --- a/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c +++ b/arch/mips/cpu/mips32/au1x00/au1x00_usb_ohci.c @@ -839,104 +839,7 @@ static int dl_done_list (ohci_t *ohci, td_t *td_list)   * Virtual Root Hub   *-------------------------------------------------------------------------*/ -/* Device descriptor */ -static __u8 root_hub_dev_des[] = -{ -	0x12,	    /*	__u8  bLength; */ -	0x01,	    /*	__u8  bDescriptorType; Device */ -	0x10,	    /*	__u16 bcdUSB; v1.1 */ -	0x01, -	0x09,	    /*	__u8  bDeviceClass; HUB_CLASSCODE */ -	0x00,	    /*	__u8  bDeviceSubClass; */ -	0x00,	    /*	__u8  bDeviceProtocol; */ -	0x08,	    /*	__u8  bMaxPacketSize0; 8 Bytes */ -	0x00,	    /*	__u16 idVendor; */ -	0x00, -	0x00,	    /*	__u16 idProduct; */ -	0x00, -	0x00,	    /*	__u16 bcdDevice; */ -	0x00, -	0x00,	    /*	__u8  iManufacturer; */ -	0x01,	    /*	__u8  iProduct; */ -	0x00,	    /*	__u8  iSerialNumber; */ -	0x01	    /*	__u8  bNumConfigurations; */ -}; - - -/* Configuration descriptor */ -static __u8 root_hub_config_des[] = -{ -	0x09,	    /*	__u8  bLength; */ -	0x02,	    /*	__u8  bDescriptorType; Configuration */ -	0x19,	    /*	__u16 wTotalLength; */ -	0x00, -	0x01,	    /*	__u8  bNumInterfaces; */ -	0x01,	    /*	__u8  bConfigurationValue; */ -	0x00,	    /*	__u8  iConfiguration; */ -	0x40,	    /*	__u8  bmAttributes; -		 Bit 7: Bus-powered, 6: Self-powered, 5 Remote-wakwup, 4..0: resvd */ -	0x00,	    /*	__u8  MaxPower; */ - -	/* interface */ -	0x09,	    /*	__u8  if_bLength; */ -	0x04,	    /*	__u8  if_bDescriptorType; Interface */ -	0x00,	    /*	__u8  if_bInterfaceNumber; */ -	0x00,	    /*	__u8  if_bAlternateSetting; */ -	0x01,	    /*	__u8  if_bNumEndpoints; */ -	0x09,	    /*	__u8  if_bInterfaceClass; HUB_CLASSCODE */ -	0x00,	    /*	__u8  if_bInterfaceSubClass; */ -	0x00,	    /*	__u8  if_bInterfaceProtocol; */ -	0x00,	    /*	__u8  if_iInterface; */ - -	/* endpoint */ -	0x07,	    /*	__u8  ep_bLength; */ -	0x05,	    /*	__u8  ep_bDescriptorType; Endpoint */ -	0x81,	    /*	__u8  ep_bEndpointAddress; IN Endpoint 1 */ -	0x03,	    /*	__u8  ep_bmAttributes; Interrupt */ -	0x02,	    /*	__u16 ep_wMaxPacketSize; ((MAX_ROOT_PORTS + 1) / 8 */ -	0x00, -	0xff	    /*	__u8  ep_bInterval; 255 ms */ -}; - -static unsigned char root_hub_str_index0[] = -{ -	0x04,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	0x09,			/*  __u8  lang ID */ -	0x04,			/*  __u8  lang ID */ -}; - -static unsigned char root_hub_str_index1[] = -{ -	28,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	'O',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'C',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'I',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'R',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	't',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'u',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'b',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -}; +#include <usbroothubdes.h>  /* Hub class-specific descriptor is constructed dynamically */ diff --git a/arch/powerpc/cpu/mpc5xxx/usb_ohci.c b/arch/powerpc/cpu/mpc5xxx/usb_ohci.c index a68f9d659..3c8b2d904 100644 --- a/arch/powerpc/cpu/mpc5xxx/usb_ohci.c +++ b/arch/powerpc/cpu/mpc5xxx/usb_ohci.c @@ -842,104 +842,7 @@ static int dl_done_list (ohci_t *ohci, td_t *td_list)   * Virtual Root Hub   *-------------------------------------------------------------------------*/ -/* Device descriptor */ -static __u8 root_hub_dev_des[] = -{ -	0x12,	    /*	__u8  bLength; */ -	0x01,	    /*	__u8  bDescriptorType; Device */ -	0x10,	    /*	__u16 bcdUSB; v1.1 */ -	0x01, -	0x09,	    /*	__u8  bDeviceClass; HUB_CLASSCODE */ -	0x00,	    /*	__u8  bDeviceSubClass; */ -	0x00,	    /*	__u8  bDeviceProtocol; */ -	0x08,	    /*	__u8  bMaxPacketSize0; 8 Bytes */ -	0x00,	    /*	__u16 idVendor; */ -	0x00, -	0x00,	    /*	__u16 idProduct; */ -	0x00, -	0x00,	    /*	__u16 bcdDevice; */ -	0x00, -	0x00,	    /*	__u8  iManufacturer; */ -	0x01,	    /*	__u8  iProduct; */ -	0x00,	    /*	__u8  iSerialNumber; */ -	0x01	    /*	__u8  bNumConfigurations; */ -}; - - -/* Configuration descriptor */ -static __u8 root_hub_config_des[] = -{ -	0x09,	    /*	__u8  bLength; */ -	0x02,	    /*	__u8  bDescriptorType; Configuration */ -	0x19,	    /*	__u16 wTotalLength; */ -	0x00, -	0x01,	    /*	__u8  bNumInterfaces; */ -	0x01,	    /*	__u8  bConfigurationValue; */ -	0x00,	    /*	__u8  iConfiguration; */ -	0x40,	    /*	__u8  bmAttributes; -		 Bit 7: Bus-powered, 6: Self-powered, 5 Remote-wakwup, 4..0: resvd */ -	0x00,	    /*	__u8  MaxPower; */ - -	/* interface */ -	0x09,	    /*	__u8  if_bLength; */ -	0x04,	    /*	__u8  if_bDescriptorType; Interface */ -	0x00,	    /*	__u8  if_bInterfaceNumber; */ -	0x00,	    /*	__u8  if_bAlternateSetting; */ -	0x01,	    /*	__u8  if_bNumEndpoints; */ -	0x09,	    /*	__u8  if_bInterfaceClass; HUB_CLASSCODE */ -	0x00,	    /*	__u8  if_bInterfaceSubClass; */ -	0x00,	    /*	__u8  if_bInterfaceProtocol; */ -	0x00,	    /*	__u8  if_iInterface; */ - -	/* endpoint */ -	0x07,	    /*	__u8  ep_bLength; */ -	0x05,	    /*	__u8  ep_bDescriptorType; Endpoint */ -	0x81,	    /*	__u8  ep_bEndpointAddress; IN Endpoint 1 */ -	0x03,	    /*	__u8  ep_bmAttributes; Interrupt */ -	0x02,	    /*	__u16 ep_wMaxPacketSize; ((MAX_ROOT_PORTS + 1) / 8 */ -	0x00, -	0xff	    /*	__u8  ep_bInterval; 255 ms */ -}; - -static unsigned char root_hub_str_index0[] = -{ -	0x04,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	0x09,			/*  __u8  lang ID */ -	0x04,			/*  __u8  lang ID */ -}; - -static unsigned char root_hub_str_index1[] = -{ -	28,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	'O',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'C',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'I',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'R',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	't',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'u',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'b',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -}; +#include <usbroothubdes.h>  /* Hub class-specific descriptor is constructed dynamically */ diff --git a/arch/powerpc/cpu/ppc4xx/usb_ohci.c b/arch/powerpc/cpu/ppc4xx/usb_ohci.c index fafc15e2e..d1e78f6b0 100644 --- a/arch/powerpc/cpu/ppc4xx/usb_ohci.c +++ b/arch/powerpc/cpu/ppc4xx/usb_ohci.c @@ -847,104 +847,7 @@ static int dl_done_list (ohci_t *ohci, td_t *td_list)   * Virtual Root Hub   *-------------------------------------------------------------------------*/ -/* Device descriptor */ -static __u8 root_hub_dev_des[] = -{ -	0x12,	    /*	__u8  bLength; */ -	0x01,	    /*	__u8  bDescriptorType; Device */ -	0x10,	    /*	__u16 bcdUSB; v1.1 */ -	0x01, -	0x09,	    /*	__u8  bDeviceClass; HUB_CLASSCODE */ -	0x00,	    /*	__u8  bDeviceSubClass; */ -	0x00,	    /*	__u8  bDeviceProtocol; */ -	0x08,	    /*	__u8  bMaxPacketSize0; 8 Bytes */ -	0x00,	    /*	__u16 idVendor; */ -	0x00, -	0x00,	    /*	__u16 idProduct; */ -	0x00, -	0x00,	    /*	__u16 bcdDevice; */ -	0x00, -	0x00,	    /*	__u8  iManufacturer; */ -	0x01,	    /*	__u8  iProduct; */ -	0x00,	    /*	__u8  iSerialNumber; */ -	0x01	    /*	__u8  bNumConfigurations; */ -}; - - -/* Configuration descriptor */ -static __u8 root_hub_config_des[] = -{ -	0x09,	    /*	__u8  bLength; */ -	0x02,	    /*	__u8  bDescriptorType; Configuration */ -	0x19,	    /*	__u16 wTotalLength; */ -	0x00, -	0x01,	    /*	__u8  bNumInterfaces; */ -	0x01,	    /*	__u8  bConfigurationValue; */ -	0x00,	    /*	__u8  iConfiguration; */ -	0x40,	    /*	__u8  bmAttributes; -		 Bit 7: Bus-powered, 6: Self-powered, 5 Remote-wakwup, 4..0: resvd */ -	0x00,	    /*	__u8  MaxPower; */ - -	/* interface */ -	0x09,	    /*	__u8  if_bLength; */ -	0x04,	    /*	__u8  if_bDescriptorType; Interface */ -	0x00,	    /*	__u8  if_bInterfaceNumber; */ -	0x00,	    /*	__u8  if_bAlternateSetting; */ -	0x01,	    /*	__u8  if_bNumEndpoints; */ -	0x09,	    /*	__u8  if_bInterfaceClass; HUB_CLASSCODE */ -	0x00,	    /*	__u8  if_bInterfaceSubClass; */ -	0x00,	    /*	__u8  if_bInterfaceProtocol; */ -	0x00,	    /*	__u8  if_iInterface; */ - -	/* endpoint */ -	0x07,	    /*	__u8  ep_bLength; */ -	0x05,	    /*	__u8  ep_bDescriptorType; Endpoint */ -	0x81,	    /*	__u8  ep_bEndpointAddress; IN Endpoint 1 */ -	0x03,	    /*	__u8  ep_bmAttributes; Interrupt */ -	0x02,	    /*	__u16 ep_wMaxPacketSize; ((MAX_ROOT_PORTS + 1) / 8 */ -	0x00, -	0xff	    /*	__u8  ep_bInterval; 255 ms */ -}; - -static unsigned char root_hub_str_index0[] = -{ -	0x04,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	0x09,			/*  __u8  lang ID */ -	0x04,			/*  __u8  lang ID */ -}; - -static unsigned char root_hub_str_index1[] = -{ -	28,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	'O',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'C',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'I',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'R',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	't',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'u',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -	'b',			/*  __u8  Unicode */ -	0,				/*  __u8  Unicode */ -}; +#include <usbroothubdes.h>  /* Hub class-specific descriptor is constructed dynamically */ diff --git a/arch/sparc/cpu/leon3/usb_uhci.c b/arch/sparc/cpu/leon3/usb_uhci.c index c411ded86..ca7d6e86f 100644 --- a/arch/sparc/cpu/leon3/usb_uhci.c +++ b/arch/sparc/cpu/leon3/usb_uhci.c @@ -757,110 +757,9 @@ static void usb_display_Req(unsigned short req)  }  #endif -static unsigned char root_hub_dev_des[] = { -	0x12,			/*  __u8  bLength; */ -	0x01,			/*  __u8  bDescriptorType; Device */ -	0x00,			/*  __u16 bcdUSB; v1.0 */ -	0x01, -	0x09,			/*  __u8  bDeviceClass; HUB_CLASSCODE */ -	0x00,			/*  __u8  bDeviceSubClass; */ -	0x00,			/*  __u8  bDeviceProtocol; */ -	0x08,			/*  __u8  bMaxPacketSize0; 8 Bytes */ -	0x00,			/*  __u16 idVendor; */ -	0x00, -	0x00,			/*  __u16 idProduct; */ -	0x00, -	0x00,			/*  __u16 bcdDevice; */ -	0x00, -	0x01,			/*  __u8  iManufacturer; */ -	0x00,			/*  __u8  iProduct; */ -	0x00,			/*  __u8  iSerialNumber; */ -	0x01			/*  __u8  bNumConfigurations; */ -}; - -/* Configuration descriptor */ -static unsigned char root_hub_config_des[] = { -	0x09,			/*  __u8  bLength; */ -	0x02,			/*  __u8  bDescriptorType; Configuration */ -	0x19,			/*  __u16 wTotalLength; */ -	0x00, -	0x01,			/*  __u8  bNumInterfaces; */ -	0x01,			/*  __u8  bConfigurationValue; */ -	0x00,			/*  __u8  iConfiguration; */ -	0x40,			/*  __u8  bmAttributes; -				   Bit 7: Bus-powered, 6: Self-powered, 5 Remote-wakwup, 4..0: resvd */ -	0x00,			/*  __u8  MaxPower; */ - -	/* interface */ -	0x09,			/*  __u8  if_bLength; */ -	0x04,			/*  __u8  if_bDescriptorType; Interface */ -	0x00,			/*  __u8  if_bInterfaceNumber; */ -	0x00,			/*  __u8  if_bAlternateSetting; */ -	0x01,			/*  __u8  if_bNumEndpoints; */ -	0x09,			/*  __u8  if_bInterfaceClass; HUB_CLASSCODE */ -	0x00,			/*  __u8  if_bInterfaceSubClass; */ -	0x00,			/*  __u8  if_bInterfaceProtocol; */ -	0x00,			/*  __u8  if_iInterface; */ - -	/* endpoint */ -	0x07,			/*  __u8  ep_bLength; */ -	0x05,			/*  __u8  ep_bDescriptorType; Endpoint */ -	0x81,			/*  __u8  ep_bEndpointAddress; IN Endpoint 1 */ -	0x03,			/*  __u8  ep_bmAttributes; Interrupt */ -	0x08,			/*  __u16 ep_wMaxPacketSize; 8 Bytes */ -	0x00, -	0xff			/*  __u8  ep_bInterval; 255 ms */ -}; - -static unsigned char root_hub_hub_des[] = { -	0x09,			/*  __u8  bLength; */ -	0x29,			/*  __u8  bDescriptorType; Hub-descriptor */ -	0x02,			/*  __u8  bNbrPorts; */ -	0x00,			/* __u16  wHubCharacteristics; */ -	0x00, -	0x01,			/*  __u8  bPwrOn2pwrGood; 2ms */ -	0x00,			/*  __u8  bHubContrCurrent; 0 mA */ -	0x00,			/*  __u8  DeviceRemovable; *** 7 Ports max *** */ -	0xff			/*  __u8  PortPwrCtrlMask; *** 7 ports max *** */ -}; - -static unsigned char root_hub_str_index0[] = { -	0x04,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	0x09,			/*  __u8  lang ID */ -	0x04,			/*  __u8  lang ID */ -}; - -static unsigned char root_hub_str_index1[] = { -	28,			/*  __u8  bLength; */ -	0x03,			/*  __u8  bDescriptorType; String-descriptor */ -	'U',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'C',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'I',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'R',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'o',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	't',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	' ',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'H',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'u',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -	'b',			/*  __u8  Unicode */ -	0,			/*  __u8  Unicode */ -}; +#define WANT_USB_ROOT_HUB_HUB_DES +#include <usbroothubdes.h> +#undef WANT_USB_ROOT_HUB_HUB_DES  /*   * Root Hub Control Pipe (interrupt Pipes are not supported) |