diff options
Diffstat (limited to 'target/linux/bcm27xx/patches-5.10/950-0362-dwc_otg-Minimise-header-and-fix-build-warnings.patch')
-rw-r--r-- | target/linux/bcm27xx/patches-5.10/950-0362-dwc_otg-Minimise-header-and-fix-build-warnings.patch | 887 |
1 files changed, 0 insertions, 887 deletions
diff --git a/target/linux/bcm27xx/patches-5.10/950-0362-dwc_otg-Minimise-header-and-fix-build-warnings.patch b/target/linux/bcm27xx/patches-5.10/950-0362-dwc_otg-Minimise-header-and-fix-build-warnings.patch deleted file mode 100644 index b075bf4c64..0000000000 --- a/target/linux/bcm27xx/patches-5.10/950-0362-dwc_otg-Minimise-header-and-fix-build-warnings.patch +++ /dev/null @@ -1,887 +0,0 @@ -From 649f8fd1bdd0eb3830ecc32a8e6905e6925952a1 Mon Sep 17 00:00:00 2001 -From: Phil Elwell <phil@raspberrypi.com> -Date: Tue, 27 Oct 2020 09:59:49 +0000 -Subject: [PATCH] dwc_otg: Minimise header and fix build warnings - -Delete a large amount of unused declaration from "usb.h", some of which -were causing build warnings, and get the module building cleanly. - -Signed-off-by: Phil Elwell <phil@raspberrypi.com> ---- - drivers/usb/host/dwc_common_port/usb.h | 664 ------------------- - drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c | 10 +- - drivers/usb/host/dwc_otg/dwc_otg_hcd.c | 23 +- - drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c | 3 +- - drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c | 8 +- - drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c | 4 +- - drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c | 2 +- - 7 files changed, 30 insertions(+), 684 deletions(-) - ---- a/drivers/usb/host/dwc_common_port/usb.h -+++ b/drivers/usb/host/dwc_common_port/usb.h -@@ -55,12 +55,6 @@ typedef u_int8_t uByte; - typedef u_int8_t uWord[2]; - typedef u_int8_t uDWord[4]; - --#define USETW2(w,h,l) ((w)[0] = (u_int8_t)(l), (w)[1] = (u_int8_t)(h)) --#define UCONSTW(x) { (x) & 0xff, ((x) >> 8) & 0xff } --#define UCONSTDW(x) { (x) & 0xff, ((x) >> 8) & 0xff, \ -- ((x) >> 16) & 0xff, ((x) >> 24) & 0xff } -- --#if 1 - #define UGETW(w) ((w)[0] | ((w)[1] << 8)) - #define USETW(w,v) ((w)[0] = (u_int8_t)(v), (w)[1] = (u_int8_t)((v) >> 8)) - #define UGETDW(w) ((w)[0] | ((w)[1] << 8) | ((w)[2] << 16) | ((w)[3] << 24)) -@@ -68,31 +62,6 @@ typedef u_int8_t uDWord[4]; - (w)[1] = (u_int8_t)((v) >> 8), \ - (w)[2] = (u_int8_t)((v) >> 16), \ - (w)[3] = (u_int8_t)((v) >> 24)) --#else --/* -- * On little-endian machines that can handle unanliged accesses -- * (e.g. i386) these macros can be replaced by the following. -- */ --#define UGETW(w) (*(u_int16_t *)(w)) --#define USETW(w,v) (*(u_int16_t *)(w) = (v)) --#define UGETDW(w) (*(u_int32_t *)(w)) --#define USETDW(w,v) (*(u_int32_t *)(w) = (v)) --#endif -- --/* -- * Macros for accessing UAS IU fields, which are big-endian -- */ --#define IUSETW2(w,h,l) ((w)[0] = (u_int8_t)(h), (w)[1] = (u_int8_t)(l)) --#define IUCONSTW(x) { ((x) >> 8) & 0xff, (x) & 0xff } --#define IUCONSTDW(x) { ((x) >> 24) & 0xff, ((x) >> 16) & 0xff, \ -- ((x) >> 8) & 0xff, (x) & 0xff } --#define IUGETW(w) (((w)[0] << 8) | (w)[1]) --#define IUSETW(w,v) ((w)[0] = (u_int8_t)((v) >> 8), (w)[1] = (u_int8_t)(v)) --#define IUGETDW(w) (((w)[0] << 24) | ((w)[1] << 16) | ((w)[2] << 8) | (w)[3]) --#define IUSETDW(w,v) ((w)[0] = (u_int8_t)((v) >> 24), \ -- (w)[1] = (u_int8_t)((v) >> 16), \ -- (w)[2] = (u_int8_t)((v) >> 8), \ -- (w)[3] = (u_int8_t)(v)) - - #define UPACKED __attribute__((__packed__)) - -@@ -119,29 +88,6 @@ typedef struct { - #define UT_ENDPOINT 0x02 - #define UT_OTHER 0x03 - --#define UT_READ_DEVICE (UT_READ | UT_STANDARD | UT_DEVICE) --#define UT_READ_INTERFACE (UT_READ | UT_STANDARD | UT_INTERFACE) --#define UT_READ_ENDPOINT (UT_READ | UT_STANDARD | UT_ENDPOINT) --#define UT_WRITE_DEVICE (UT_WRITE | UT_STANDARD | UT_DEVICE) --#define UT_WRITE_INTERFACE (UT_WRITE | UT_STANDARD | UT_INTERFACE) --#define UT_WRITE_ENDPOINT (UT_WRITE | UT_STANDARD | UT_ENDPOINT) --#define UT_READ_CLASS_DEVICE (UT_READ | UT_CLASS | UT_DEVICE) --#define UT_READ_CLASS_INTERFACE (UT_READ | UT_CLASS | UT_INTERFACE) --#define UT_READ_CLASS_OTHER (UT_READ | UT_CLASS | UT_OTHER) --#define UT_READ_CLASS_ENDPOINT (UT_READ | UT_CLASS | UT_ENDPOINT) --#define UT_WRITE_CLASS_DEVICE (UT_WRITE | UT_CLASS | UT_DEVICE) --#define UT_WRITE_CLASS_INTERFACE (UT_WRITE | UT_CLASS | UT_INTERFACE) --#define UT_WRITE_CLASS_OTHER (UT_WRITE | UT_CLASS | UT_OTHER) --#define UT_WRITE_CLASS_ENDPOINT (UT_WRITE | UT_CLASS | UT_ENDPOINT) --#define UT_READ_VENDOR_DEVICE (UT_READ | UT_VENDOR | UT_DEVICE) --#define UT_READ_VENDOR_INTERFACE (UT_READ | UT_VENDOR | UT_INTERFACE) --#define UT_READ_VENDOR_OTHER (UT_READ | UT_VENDOR | UT_OTHER) --#define UT_READ_VENDOR_ENDPOINT (UT_READ | UT_VENDOR | UT_ENDPOINT) --#define UT_WRITE_VENDOR_DEVICE (UT_WRITE | UT_VENDOR | UT_DEVICE) --#define UT_WRITE_VENDOR_INTERFACE (UT_WRITE | UT_VENDOR | UT_INTERFACE) --#define UT_WRITE_VENDOR_OTHER (UT_WRITE | UT_VENDOR | UT_OTHER) --#define UT_WRITE_VENDOR_ENDPOINT (UT_WRITE | UT_VENDOR | UT_ENDPOINT) -- - /* Requests */ - #define UR_GET_STATUS 0x00 - #define USTAT_STANDARD_STATUS 0x00 -@@ -243,71 +189,6 @@ typedef struct { - typedef struct { - uByte bLength; - uByte bDescriptorType; -- uByte bDescriptorSubtype; --} UPACKED usb_descriptor_t; -- --typedef struct { -- uByte bLength; -- uByte bDescriptorType; --} UPACKED usb_descriptor_header_t; -- --typedef struct { -- uByte bLength; -- uByte bDescriptorType; -- uWord bcdUSB; --#define UD_USB_2_0 0x0200 --#define UD_IS_USB2(d) (UGETW((d)->bcdUSB) >= UD_USB_2_0) -- uByte bDeviceClass; -- uByte bDeviceSubClass; -- uByte bDeviceProtocol; -- uByte bMaxPacketSize; -- /* The fields below are not part of the initial descriptor. */ -- uWord idVendor; -- uWord idProduct; -- uWord bcdDevice; -- uByte iManufacturer; -- uByte iProduct; -- uByte iSerialNumber; -- uByte bNumConfigurations; --} UPACKED usb_device_descriptor_t; --#define USB_DEVICE_DESCRIPTOR_SIZE 18 -- --typedef struct { -- uByte bLength; -- uByte bDescriptorType; -- uWord wTotalLength; -- uByte bNumInterface; -- uByte bConfigurationValue; -- uByte iConfiguration; --#define UC_ATT_ONE (1 << 7) /* must be set */ --#define UC_ATT_SELFPOWER (1 << 6) /* self powered */ --#define UC_ATT_WAKEUP (1 << 5) /* can wakeup */ --#define UC_ATT_BATTERY (1 << 4) /* battery powered */ -- uByte bmAttributes; --#define UC_BUS_POWERED 0x80 --#define UC_SELF_POWERED 0x40 --#define UC_REMOTE_WAKEUP 0x20 -- uByte bMaxPower; /* max current in 2 mA units */ --#define UC_POWER_FACTOR 2 --} UPACKED usb_config_descriptor_t; --#define USB_CONFIG_DESCRIPTOR_SIZE 9 -- --typedef struct { -- uByte bLength; -- uByte bDescriptorType; -- uByte bInterfaceNumber; -- uByte bAlternateSetting; -- uByte bNumEndpoints; -- uByte bInterfaceClass; -- uByte bInterfaceSubClass; -- uByte bInterfaceProtocol; -- uByte iInterface; --} UPACKED usb_interface_descriptor_t; --#define USB_INTERFACE_DESCRIPTOR_SIZE 9 -- --typedef struct { -- uByte bLength; -- uByte bDescriptorType; - uByte bEndpointAddress; - #define UE_GET_DIR(a) ((a) & 0x80) - #define UE_SET_DIR(a,d) ((a) | (((d)&1) << 7)) -@@ -332,27 +213,6 @@ typedef struct { - } UPACKED usb_endpoint_descriptor_t; - #define USB_ENDPOINT_DESCRIPTOR_SIZE 7 - --typedef struct ss_endpoint_companion_descriptor { -- uByte bLength; -- uByte bDescriptorType; -- uByte bMaxBurst; --#define USSE_GET_MAX_STREAMS(a) ((a) & 0x1f) --#define USSE_SET_MAX_STREAMS(a, b) ((a) | ((b) & 0x1f)) --#define USSE_GET_MAX_PACKET_NUM(a) ((a) & 0x03) --#define USSE_SET_MAX_PACKET_NUM(a, b) ((a) | ((b) & 0x03)) -- uByte bmAttributes; -- uWord wBytesPerInterval; --} UPACKED ss_endpoint_companion_descriptor_t; --#define USB_SS_ENDPOINT_COMPANION_DESCRIPTOR_SIZE 6 -- --typedef struct { -- uByte bLength; -- uByte bDescriptorType; -- uWord bString[127]; --} UPACKED usb_string_descriptor_t; --#define USB_MAX_STRING_LEN 128 --#define USB_LANGUAGE_TABLE 0 /* # of the string language id table */ -- - /* Hub specific request */ - #define UR_GET_BUS_STATE 0x02 - #define UR_CLEAR_TT_BUFFER 0x08 -@@ -411,530 +271,6 @@ typedef struct { - } UPACKED usb_hub_descriptor_t; - #define USB_HUB_DESCRIPTOR_SIZE 9 /* includes deprecated PortPowerCtrlMask */ - --typedef struct { -- uByte bLength; -- uByte bDescriptorType; -- uWord bcdUSB; -- uByte bDeviceClass; -- uByte bDeviceSubClass; -- uByte bDeviceProtocol; -- uByte bMaxPacketSize0; -- uByte bNumConfigurations; -- uByte bReserved; --} UPACKED usb_device_qualifier_t; --#define USB_DEVICE_QUALIFIER_SIZE 10 -- --typedef struct { -- uByte bLength; -- uByte bDescriptorType; -- uByte bmAttributes; --#define UOTG_SRP 0x01 --#define UOTG_HNP 0x02 --} UPACKED usb_otg_descriptor_t; -- --/* OTG feature selectors */ --#define UOTG_B_HNP_ENABLE 3 --#define UOTG_A_HNP_SUPPORT 4 --#define UOTG_A_ALT_HNP_SUPPORT 5 -- --typedef struct { -- uWord wStatus; --/* Device status flags */ --#define UDS_SELF_POWERED 0x0001 --#define UDS_REMOTE_WAKEUP 0x0002 --/* Endpoint status flags */ --#define UES_HALT 0x0001 --} UPACKED usb_status_t; -- --typedef struct { -- uWord wHubStatus; --#define UHS_LOCAL_POWER 0x0001 --#define UHS_OVER_CURRENT 0x0002 -- uWord wHubChange; --} UPACKED usb_hub_status_t; -- --typedef struct { -- uWord wPortStatus; --#define UPS_CURRENT_CONNECT_STATUS 0x0001 --#define UPS_PORT_ENABLED 0x0002 --#define UPS_SUSPEND 0x0004 --#define UPS_OVERCURRENT_INDICATOR 0x0008 --#define UPS_RESET 0x0010 --#define UPS_PORT_POWER 0x0100 --#define UPS_LOW_SPEED 0x0200 --#define UPS_HIGH_SPEED 0x0400 --#define UPS_PORT_TEST 0x0800 --#define UPS_PORT_INDICATOR 0x1000 -- uWord wPortChange; --#define UPS_C_CONNECT_STATUS 0x0001 --#define UPS_C_PORT_ENABLED 0x0002 --#define UPS_C_SUSPEND 0x0004 --#define UPS_C_OVERCURRENT_INDICATOR 0x0008 --#define UPS_C_PORT_RESET 0x0010 --} UPACKED usb_port_status_t; -- --#ifdef _MSC_VER --#include <poppack.h> --#endif -- --/* Device class codes */ --#define UDCLASS_IN_INTERFACE 0x00 --#define UDCLASS_COMM 0x02 --#define UDCLASS_HUB 0x09 --#define UDSUBCLASS_HUB 0x00 --#define UDPROTO_FSHUB 0x00 --#define UDPROTO_HSHUBSTT 0x01 --#define UDPROTO_HSHUBMTT 0x02 --#define UDCLASS_DIAGNOSTIC 0xdc --#define UDCLASS_WIRELESS 0xe0 --#define UDSUBCLASS_RF 0x01 --#define UDPROTO_BLUETOOTH 0x01 --#define UDCLASS_VENDOR 0xff -- --/* Interface class codes */ --#define UICLASS_UNSPEC 0x00 -- --#define UICLASS_AUDIO 0x01 --#define UISUBCLASS_AUDIOCONTROL 1 --#define UISUBCLASS_AUDIOSTREAM 2 --#define UISUBCLASS_MIDISTREAM 3 -- --#define UICLASS_CDC 0x02 /* communication */ --#define UISUBCLASS_DIRECT_LINE_CONTROL_MODEL 1 --#define UISUBCLASS_ABSTRACT_CONTROL_MODEL 2 --#define UISUBCLASS_TELEPHONE_CONTROL_MODEL 3 --#define UISUBCLASS_MULTICHANNEL_CONTROL_MODEL 4 --#define UISUBCLASS_CAPI_CONTROLMODEL 5 --#define UISUBCLASS_ETHERNET_NETWORKING_CONTROL_MODEL 6 --#define UISUBCLASS_ATM_NETWORKING_CONTROL_MODEL 7 --#define UIPROTO_CDC_AT 1 -- --#define UICLASS_HID 0x03 --#define UISUBCLASS_BOOT 1 --#define UIPROTO_BOOT_KEYBOARD 1 -- --#define UICLASS_PHYSICAL 0x05 -- --#define UICLASS_IMAGE 0x06 -- --#define UICLASS_PRINTER 0x07 --#define UISUBCLASS_PRINTER 1 --#define UIPROTO_PRINTER_UNI 1 --#define UIPROTO_PRINTER_BI 2 --#define UIPROTO_PRINTER_1284 3 -- --#define UICLASS_MASS 0x08 --#define UISUBCLASS_RBC 1 --#define UISUBCLASS_SFF8020I 2 --#define UISUBCLASS_QIC157 3 --#define UISUBCLASS_UFI 4 --#define UISUBCLASS_SFF8070I 5 --#define UISUBCLASS_SCSI 6 --#define UIPROTO_MASS_CBI_I 0 --#define UIPROTO_MASS_CBI 1 --#define UIPROTO_MASS_BBB_OLD 2 /* Not in the spec anymore */ --#define UIPROTO_MASS_BBB 80 /* 'P' for the Iomega Zip drive */ -- --#define UICLASS_HUB 0x09 --#define UISUBCLASS_HUB 0 --#define UIPROTO_FSHUB 0 --#define UIPROTO_HSHUBSTT 0 /* Yes, same as previous */ --#define UIPROTO_HSHUBMTT 1 -- --#define UICLASS_CDC_DATA 0x0a --#define UISUBCLASS_DATA 0 --#define UIPROTO_DATA_ISDNBRI 0x30 /* Physical iface */ --#define UIPROTO_DATA_HDLC 0x31 /* HDLC */ --#define UIPROTO_DATA_TRANSPARENT 0x32 /* Transparent */ --#define UIPROTO_DATA_Q921M 0x50 /* Management for Q921 */ --#define UIPROTO_DATA_Q921 0x51 /* Data for Q921 */ --#define UIPROTO_DATA_Q921TM 0x52 /* TEI multiplexer for Q921 */ --#define UIPROTO_DATA_V42BIS 0x90 /* Data compression */ --#define UIPROTO_DATA_Q931 0x91 /* Euro-ISDN */ --#define UIPROTO_DATA_V120 0x92 /* V.24 rate adaption */ --#define UIPROTO_DATA_CAPI 0x93 /* CAPI 2.0 commands */ --#define UIPROTO_DATA_HOST_BASED 0xfd /* Host based driver */ --#define UIPROTO_DATA_PUF 0xfe /* see Prot. Unit Func. Desc.*/ --#define UIPROTO_DATA_VENDOR 0xff /* Vendor specific */ -- --#define UICLASS_SMARTCARD 0x0b -- --/*#define UICLASS_FIRM_UPD 0x0c*/ -- --#define UICLASS_SECURITY 0x0d -- --#define UICLASS_DIAGNOSTIC 0xdc -- --#define UICLASS_WIRELESS 0xe0 --#define UISUBCLASS_RF 0x01 --#define UIPROTO_BLUETOOTH 0x01 -- --#define UICLASS_APPL_SPEC 0xfe --#define UISUBCLASS_FIRMWARE_DOWNLOAD 1 --#define UISUBCLASS_IRDA 2 --#define UIPROTO_IRDA 0 -- --#define UICLASS_VENDOR 0xff -- --#define USB_HUB_MAX_DEPTH 5 -- --/* -- * Minimum time a device needs to be powered down to go through -- * a power cycle. XXX Are these time in the spec? -- */ --#define USB_POWER_DOWN_TIME 200 /* ms */ --#define USB_PORT_POWER_DOWN_TIME 100 /* ms */ -- --#if 0 --/* These are the values from the spec. */ --#define USB_PORT_RESET_DELAY 10 /* ms */ --#define USB_PORT_ROOT_RESET_DELAY 50 /* ms */ --#define USB_PORT_RESET_RECOVERY 10 /* ms */ --#define USB_PORT_POWERUP_DELAY 100 /* ms */ --#define USB_SET_ADDRESS_SETTLE 2 /* ms */ --#define USB_RESUME_DELAY (20*5) /* ms */ --#define USB_RESUME_WAIT 10 /* ms */ --#define USB_RESUME_RECOVERY 10 /* ms */ --#define USB_EXTRA_POWER_UP_TIME 0 /* ms */ --#else --/* Allow for marginal (i.e. non-conforming) devices. */ --#define USB_PORT_RESET_DELAY 50 /* ms */ --#define USB_PORT_ROOT_RESET_DELAY 250 /* ms */ --#define USB_PORT_RESET_RECOVERY 250 /* ms */ --#define USB_PORT_POWERUP_DELAY 300 /* ms */ --#define USB_SET_ADDRESS_SETTLE 10 /* ms */ --#define USB_RESUME_DELAY (50*5) /* ms */ --#define USB_RESUME_WAIT 50 /* ms */ --#define USB_RESUME_RECOVERY 50 /* ms */ --#define USB_EXTRA_POWER_UP_TIME 20 /* ms */ --#endif -- --#define USB_MIN_POWER 100 /* mA */ --#define USB_MAX_POWER 500 /* mA */ -- --#define USB_BUS_RESET_DELAY 100 /* ms XXX?*/ -- --#define USB_UNCONFIG_NO 0 --#define USB_UNCONFIG_INDEX (-1) -- --/*** ioctl() related stuff ***/ -- --struct usb_ctl_request { -- int ucr_addr; -- usb_device_request_t ucr_request; -- void *ucr_data; -- int ucr_flags; --#define USBD_SHORT_XFER_OK 0x04 /* allow short reads */ -- int ucr_actlen; /* actual length transferred */ --}; -- --struct usb_alt_interface { -- int uai_config_index; -- int uai_interface_index; -- int uai_alt_no; --}; -- --#define USB_CURRENT_CONFIG_INDEX (-1) --#define USB_CURRENT_ALT_INDEX (-1) -- --struct usb_config_desc { -- int ucd_config_index; -- usb_config_descriptor_t ucd_desc; --}; -- --struct usb_interface_desc { -- int uid_config_index; -- int uid_interface_index; -- int uid_alt_index; -- usb_interface_descriptor_t uid_desc; --}; -- --struct usb_endpoint_desc { -- int ued_config_index; -- int ued_interface_index; -- int ued_alt_index; -- int ued_endpoint_index; -- usb_endpoint_descriptor_t ued_desc; --}; -- --struct usb_full_desc { -- int ufd_config_index; -- u_int ufd_size; -- u_char *ufd_data; --}; -- --struct usb_string_desc { -- int usd_string_index; -- int usd_language_id; -- usb_string_descriptor_t usd_desc; --}; -- --struct usb_ctl_report_desc { -- int ucrd_size; -- u_char ucrd_data[1024]; /* filled data size will vary */ --}; -- --typedef struct { u_int32_t cookie; } usb_event_cookie_t; -- --#define USB_MAX_DEVNAMES 4 --#define USB_MAX_DEVNAMELEN 16 --struct usb_device_info { -- u_int8_t udi_bus; -- u_int8_t udi_addr; /* device address */ -- usb_event_cookie_t udi_cookie; -- char udi_product[USB_MAX_STRING_LEN]; -- char udi_vendor[USB_MAX_STRING_LEN]; -- char udi_release[8]; -- u_int16_t udi_productNo; -- u_int16_t udi_vendorNo; -- u_int16_t udi_releaseNo; -- u_int8_t udi_class; -- u_int8_t udi_subclass; -- u_int8_t udi_protocol; -- u_int8_t udi_config; -- u_int8_t udi_speed; --#define USB_SPEED_UNKNOWN 0 --#define USB_SPEED_LOW 1 --#define USB_SPEED_FULL 2 --#define USB_SPEED_HIGH 3 --#define USB_SPEED_VARIABLE 4 --#define USB_SPEED_SUPER 5 -- int udi_power; /* power consumption in mA, 0 if selfpowered */ -- int udi_nports; -- char udi_devnames[USB_MAX_DEVNAMES][USB_MAX_DEVNAMELEN]; -- u_int8_t udi_ports[16];/* hub only: addresses of devices on ports */ --#define USB_PORT_ENABLED 0xff --#define USB_PORT_SUSPENDED 0xfe --#define USB_PORT_POWERED 0xfd --#define USB_PORT_DISABLED 0xfc --}; -- --struct usb_ctl_report { -- int ucr_report; -- u_char ucr_data[1024]; /* filled data size will vary */ --}; -- --struct usb_device_stats { -- u_long uds_requests[4]; /* indexed by transfer type UE_* */ --}; -- --#define WUSB_MIN_IE 0x80 --#define WUSB_WCTA_IE 0x80 --#define WUSB_WCONNECTACK_IE 0x81 --#define WUSB_WHOSTINFO_IE 0x82 --#define WUHI_GET_CA(_bmAttributes_) ((_bmAttributes_) & 0x3) --#define WUHI_CA_RECONN 0x00 --#define WUHI_CA_LIMITED 0x01 --#define WUHI_CA_ALL 0x03 --#define WUHI_GET_MLSI(_bmAttributes_) (((_bmAttributes_) & 0x38) >> 3) --#define WUSB_WCHCHANGEANNOUNCE_IE 0x83 --#define WUSB_WDEV_DISCONNECT_IE 0x84 --#define WUSB_WHOST_DISCONNECT_IE 0x85 --#define WUSB_WRELEASE_CHANNEL_IE 0x86 --#define WUSB_WWORK_IE 0x87 --#define WUSB_WCHANNEL_STOP_IE 0x88 --#define WUSB_WDEV_KEEPALIVE_IE 0x89 --#define WUSB_WISOCH_DISCARD_IE 0x8A --#define WUSB_WRESETDEVICE_IE 0x8B --#define WUSB_WXMIT_PACKET_ADJUST_IE 0x8C --#define WUSB_MAX_IE 0x8C -- --/* Device Notification Types */ -- --#define WUSB_DN_MIN 0x01 --#define WUSB_DN_CONNECT 0x01 --# define WUSB_DA_OLDCONN 0x00 --# define WUSB_DA_NEWCONN 0x01 --# define WUSB_DA_SELF_BEACON 0x02 --# define WUSB_DA_DIR_BEACON 0x04 --# define WUSB_DA_NO_BEACON 0x06 --#define WUSB_DN_DISCONNECT 0x02 --#define WUSB_DN_EPRDY 0x03 --#define WUSB_DN_MASAVAILCHANGED 0x04 --#define WUSB_DN_REMOTEWAKEUP 0x05 --#define WUSB_DN_SLEEP 0x06 --#define WUSB_DN_ALIVE 0x07 --#define WUSB_DN_MAX 0x07 -- --#ifdef _MSC_VER --#include <pshpack1.h> --#endif -- --/* WUSB Handshake Data. Used during the SET/GET HANDSHAKE requests */ --typedef struct wusb_hndshk_data { -- uByte bMessageNumber; -- uByte bStatus; -- uByte tTKID[3]; -- uByte bReserved; -- uByte CDID[16]; -- uByte Nonce[16]; -- uByte MIC[8]; --} UPACKED wusb_hndshk_data_t; --#define WUSB_HANDSHAKE_LEN_FOR_MIC 38 -- --/* WUSB Connection Context */ --typedef struct wusb_conn_context { -- uByte CHID [16]; -- uByte CDID [16]; -- uByte CK [16]; --} UPACKED wusb_conn_context_t; -- --/* WUSB Security Descriptor */ --typedef struct wusb_security_desc { -- uByte bLength; -- uByte bDescriptorType; -- uWord wTotalLength; -- uByte bNumEncryptionTypes; --} UPACKED wusb_security_desc_t; -- --/* WUSB Encryption Type Descriptor */ --typedef struct wusb_encrypt_type_desc { -- uByte bLength; -- uByte bDescriptorType; -- -- uByte bEncryptionType; --#define WUETD_UNSECURE 0 --#define WUETD_WIRED 1 --#define WUETD_CCM_1 2 --#define WUETD_RSA_1 3 -- -- uByte bEncryptionValue; -- uByte bAuthKeyIndex; --} UPACKED wusb_encrypt_type_desc_t; -- --/* WUSB Key Descriptor */ --typedef struct wusb_key_desc { -- uByte bLength; -- uByte bDescriptorType; -- uByte tTKID[3]; -- uByte bReserved; -- uByte KeyData[1]; /* variable length */ --} UPACKED wusb_key_desc_t; -- --/* WUSB BOS Descriptor (Binary device Object Store) */ --typedef struct wusb_bos_desc { -- uByte bLength; -- uByte bDescriptorType; -- uWord wTotalLength; -- uByte bNumDeviceCaps; --} UPACKED wusb_bos_desc_t; -- --#define USB_DEVICE_CAPABILITY_20_EXTENSION 0x02 --typedef struct usb_dev_cap_20_ext_desc { -- uByte bLength; -- uByte bDescriptorType; -- uByte bDevCapabilityType; --#define USB_20_EXT_LPM 0x02 -- uDWord bmAttributes; --} UPACKED usb_dev_cap_20_ext_desc_t; -- --#define USB_DEVICE_CAPABILITY_SS_USB 0x03 --typedef struct usb_dev_cap_ss_usb { -- uByte bLength; -- uByte bDescriptorType; -- uByte bDevCapabilityType; --#define USB_DC_SS_USB_LTM_CAPABLE 0x02 -- uByte bmAttributes; --#define USB_DC_SS_USB_SPEED_SUPPORT_LOW 0x01 --#define USB_DC_SS_USB_SPEED_SUPPORT_FULL 0x02 --#define USB_DC_SS_USB_SPEED_SUPPORT_HIGH 0x04 --#define USB_DC_SS_USB_SPEED_SUPPORT_SS 0x08 -- uWord wSpeedsSupported; -- uByte bFunctionalitySupport; -- uByte bU1DevExitLat; -- uWord wU2DevExitLat; --} UPACKED usb_dev_cap_ss_usb_t; -- --#define USB_DEVICE_CAPABILITY_CONTAINER_ID 0x04 --typedef struct usb_dev_cap_container_id { -- uByte bLength; -- uByte bDescriptorType; -- uByte bDevCapabilityType; -- uByte bReserved; -- uByte containerID[16]; --} UPACKED usb_dev_cap_container_id_t; -- --/* Device Capability Type Codes */ --#define WUSB_DEVICE_CAPABILITY_WIRELESS_USB 0x01 -- --/* Device Capability Descriptor */ --typedef struct wusb_dev_cap_desc { -- uByte bLength; -- uByte bDescriptorType; -- uByte bDevCapabilityType; -- uByte caps[1]; /* Variable length */ --} UPACKED wusb_dev_cap_desc_t; -- --/* Device Capability Descriptor */ --typedef struct wusb_dev_cap_uwb_desc { -- uByte bLength; -- uByte bDescriptorType; -- uByte bDevCapabilityType; -- uByte bmAttributes; -- uWord wPHYRates; /* Bitmap */ -- uByte bmTFITXPowerInfo; -- uByte bmFFITXPowerInfo; -- uWord bmBandGroup; -- uByte bReserved; --} UPACKED wusb_dev_cap_uwb_desc_t; -- --/* Wireless USB Endpoint Companion Descriptor */ --typedef struct wusb_endpoint_companion_desc { -- uByte bLength; -- uByte bDescriptorType; -- uByte bMaxBurst; -- uByte bMaxSequence; -- uWord wMaxStreamDelay; -- uWord wOverTheAirPacketSize; -- uByte bOverTheAirInterval; -- uByte bmCompAttributes; --} UPACKED wusb_endpoint_companion_desc_t; -- --/* Wireless USB Numeric Association M1 Data Structure */ --typedef struct wusb_m1_data { -- uByte version; -- uWord langId; -- uByte deviceFriendlyNameLength; -- uByte sha_256_m3[32]; -- uByte deviceFriendlyName[256]; --} UPACKED wusb_m1_data_t; -- --typedef struct wusb_m2_data { -- uByte version; -- uWord langId; -- uByte hostFriendlyNameLength; -- uByte pkh[384]; -- uByte hostFriendlyName[256]; --} UPACKED wusb_m2_data_t; -- --typedef struct wusb_m3_data { -- uByte pkd[384]; -- uByte nd; --} UPACKED wusb_m3_data_t; -- --typedef struct wusb_m4_data { -- uDWord _attributeTypeIdAndLength_1; -- uWord associationTypeId; -- -- uDWord _attributeTypeIdAndLength_2; -- uWord associationSubTypeId; -- -- uDWord _attributeTypeIdAndLength_3; -- uDWord length; -- -- uDWord _attributeTypeIdAndLength_4; -- uDWord associationStatus; -- -- uDWord _attributeTypeIdAndLength_5; -- uByte chid[16]; -- -- uDWord _attributeTypeIdAndLength_6; -- uByte cdid[16]; -- -- uDWord _attributeTypeIdAndLength_7; -- uByte bandGroups[2]; --} UPACKED wusb_m4_data_t; -- - #ifdef _MSC_VER - #include <poppack.h> - #endif ---- a/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c -+++ b/drivers/usb/host/dwc_otg/dwc_otg_fiq_fsm.c -@@ -240,7 +240,8 @@ static int notrace fiq_increment_dma_buf - hcdma_data_t hcdma; - int i = st->channel[n].dma_info.index; - int len; -- struct fiq_dma_blob *blob = (struct fiq_dma_blob *) st->dma_base; -+ struct fiq_dma_blob *blob = -+ (struct fiq_dma_blob *)(uintptr_t)st->dma_base; - - len = fiq_get_xfer_len(st, n); - fiq_print(FIQDBG_INT, st, "LEN: %03d", len); -@@ -249,7 +250,7 @@ static int notrace fiq_increment_dma_buf - if (i > 6) - BUG(); - -- hcdma.d32 = (dma_addr_t) &blob->channel[n].index[i].buf[0]; -+ hcdma.d32 = (u32)(uintptr_t)&blob->channel[n].index[i].buf[0]; - FIQ_WRITE(st->dwc_regs_base + HC_START + (HC_OFFSET * n) + HC_DMA, hcdma.d32); - st->channel[n].dma_info.index = i; - return 0; -@@ -289,7 +290,8 @@ static int notrace fiq_iso_out_advance(s - hcsplt_data_t hcsplt; - hctsiz_data_t hctsiz; - hcdma_data_t hcdma; -- struct fiq_dma_blob *blob = (struct fiq_dma_blob *) st->dma_base; -+ struct fiq_dma_blob *blob = -+ (struct fiq_dma_blob *)(uintptr_t)st->dma_base; - int last = 0; - int i = st->channel[n].dma_info.index; - -@@ -301,7 +303,7 @@ static int notrace fiq_iso_out_advance(s - last = 1; - - /* New DMA address - address of bounce buffer referred to in index */ -- hcdma.d32 = (dma_addr_t) blob->channel[n].index[i].buf; -+ hcdma.d32 = (u32)(uintptr_t)blob->channel[n].index[i].buf; - //hcdma.d32 = FIQ_READ(st->dwc_regs_base + HC_START + (HC_OFFSET * n) + HC_DMA); - //hcdma.d32 += st->channel[n].dma_info.slot_len[i]; - fiq_print(FIQDBG_INT, st, "LAST: %01d ", last); ---- a/drivers/usb/host/dwc_otg/dwc_otg_hcd.c -+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd.c -@@ -1270,7 +1270,8 @@ static void assign_and_init_hc(dwc_otg_h - hc->multi_count = 1; - - if (hcd->core_if->dma_enable) { -- hc->xfer_buff = (uint8_t *) urb->dma + urb->actual_length; -+ hc->xfer_buff = -+ (uint8_t *)(uintptr_t)urb->dma + urb->actual_length; - - /* For non-dword aligned case */ - if (((unsigned long)hc->xfer_buff & 0x3) -@@ -1314,7 +1315,8 @@ static void assign_and_init_hc(dwc_otg_h - hc->ep_is_in = 0; - hc->data_pid_start = DWC_OTG_HC_PID_SETUP; - if (hcd->core_if->dma_enable) { -- hc->xfer_buff = (uint8_t *) urb->setup_dma; -+ hc->xfer_buff = -+ (uint8_t *)(uintptr_t)urb->setup_dma; - } else { - hc->xfer_buff = (uint8_t *) urb->setup_packet; - } -@@ -1362,7 +1364,8 @@ static void assign_and_init_hc(dwc_otg_h - - hc->xfer_len = 0; - if (hcd->core_if->dma_enable) { -- hc->xfer_buff = (uint8_t *) hcd->status_buf_dma; -+ hc->xfer_buff = (uint8_t *) -+ (uintptr_t)hcd->status_buf_dma; - } else { - hc->xfer_buff = (uint8_t *) hcd->status_buf; - } -@@ -1390,7 +1393,7 @@ static void assign_and_init_hc(dwc_otg_h - frame_desc->status = 0; - - if (hcd->core_if->dma_enable) { -- hc->xfer_buff = (uint8_t *) urb->dma; -+ hc->xfer_buff = (uint8_t *)(uintptr_t)urb->dma; - } else { - hc->xfer_buff = (uint8_t *) urb->buf; - } -@@ -1571,8 +1574,10 @@ int fiq_fsm_setup_periodic_dma(dwc_otg_h - * Pointer arithmetic on hcd->fiq_state->dma_base (a dma_addr_t) - * to point it to the correct offset in the allocated buffers. - */ -- blob = (struct fiq_dma_blob *) hcd->fiq_state->dma_base; -- st->hcdma_copy.d32 = (dma_addr_t) blob->channel[hc->hc_num].index[0].buf; -+ blob = (struct fiq_dma_blob *) -+ (uintptr_t)hcd->fiq_state->dma_base; -+ st->hcdma_copy.d32 =(u32)(uintptr_t) -+ blob->channel[hc->hc_num].index[0].buf; - - /* Calculate the max number of CSPLITS such that the FIQ can time out - * a transaction if it fails. -@@ -1627,8 +1632,10 @@ int fiq_fsm_setup_periodic_dma(dwc_otg_h - * dma_addr_t) to point it to the correct offset in the - * allocated buffers. - */ -- blob = (struct fiq_dma_blob *) hcd->fiq_state->dma_base; -- st->hcdma_copy.d32 = (dma_addr_t) blob->channel[hc->hc_num].index[0].buf; -+ blob = (struct fiq_dma_blob *) -+ (uintptr_t)hcd->fiq_state->dma_base; -+ st->hcdma_copy.d32 = (u32)(uintptr_t) -+ blob->channel[hc->hc_num].index[0].buf; - - /* fixup xfersize to the actual packet size */ - st->hctsiz_copy.b.pid = 0; ---- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c -+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_ddma.c -@@ -620,7 +620,8 @@ static void init_non_isoc_dma_desc(dwc_o - - if (n_desc) { - /* SG request - more than 1 QTDs */ -- hc->xfer_buff = (uint8_t *)qtd->urb->dma + qtd->urb->actual_length; -+ hc->xfer_buff = (uint8_t *)(uintptr_t)qtd->urb->dma + -+ qtd->urb->actual_length; - hc->xfer_len = qtd->urb->length - qtd->urb->actual_length; - } - ---- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c -+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_intr.c -@@ -1857,10 +1857,10 @@ static int32_t handle_hc_ahberr_intr(dwc - DWC_ERROR(" Max packet size: %d\n", - dwc_otg_hcd_get_mps(&urb->pipe_info)); - DWC_ERROR(" Data buffer length: %d\n", urb->length); -- DWC_ERROR(" Transfer buffer: %p, Transfer DMA: %p\n", -- urb->buf, (void *)urb->dma); -- DWC_ERROR(" Setup buffer: %p, Setup DMA: %p\n", -- urb->setup_packet, (void *)urb->setup_dma); -+ DWC_ERROR(" Transfer buffer: %p, Transfer DMA: %pad\n", -+ urb->buf, &urb->dma); -+ DWC_ERROR(" Setup buffer: %p, Setup DMA: %pad\n", -+ urb->setup_packet, &urb->setup_dma); - DWC_ERROR(" Interval: %d\n", urb->interval); - - /* Core haltes the channel for Descriptor DMA mode */ ---- a/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c -+++ b/drivers/usb/host/dwc_otg/dwc_otg_hcd_linux.c -@@ -482,8 +482,8 @@ static void hcd_init_fiq(void *cookie) - otg_dev->os_dep.mphi_base + 0x1f0; - dwc_otg_hcd->fiq_state->mphi_regs.swirq_clr = - otg_dev->os_dep.mphi_base + 0x1f4; -- DWC_WARN("Fake MPHI regs_base at 0x%08x", -- (int)dwc_otg_hcd->fiq_state->mphi_regs.base); -+ DWC_WARN("Fake MPHI regs_base at %px", -+ dwc_otg_hcd->fiq_state->mphi_regs.base); - } else { - dwc_otg_hcd->fiq_state->mphi_regs.ctrl = - otg_dev->os_dep.mphi_base + 0x4c; ---- a/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c -+++ b/drivers/usb/host/dwc_otg/dwc_otg_pcd_intr.c -@@ -3377,7 +3377,7 @@ void predict_nextep_seq( dwc_otg_core_if - dtknq1_data_t dtknqr1; - uint32_t in_tkn_epnums[4]; - uint8_t seqnum[MAX_EPS_CHANNELS]; -- uint8_t intkn_seq[TOKEN_Q_DEPTH]; -+ uint8_t intkn_seq[1 << 5]; - grstctl_t resetctl = {.d32 = 0 }; - uint8_t temp; - int ndx = 0; |