summaryrefslogtreecommitdiff
path: root/drivers/usb/cdns3/cdnsp-gadget.h
diff options
context:
space:
mode:
authorPawel Laszczak <pawell@cadence.com>2020-12-14 13:03:44 +0100
committerPeter Chen <peter.chen@nxp.com>2020-12-29 12:36:13 +0800
commit16e3610154d0c992a0558d684213201f5355bd76 (patch)
tree208965307f82a96acd770c0a09ff07ad5fb197b3 /drivers/usb/cdns3/cdnsp-gadget.h
parentfba8701baed76eac00b84b59f09f6a077f24c534 (diff)
usb: cdnsp: Fixes for sparse warnings
Patch fixes all sparse warnings in cdsnp driver. It fixes the following warnings: cdnsp-ring.c:1441: warning: incorrect type in assignment cdnsp-ring.c:1444: warning: restricted __le32 degrades to integer cdnsp-ring.c:2200: warning: dubious: x | !y cdnsp-gadget.c:501: warning: incorrect type in assignment cdnsp-gadget.c:504: warning: restricted __le32 degrades to integer cdnsp-gadget.c:507: warning: restricted __le32 degrades to integer cdnsp-gadget.c:508: warning: restricted __le32 degrades to integer cdnsp-gadget.c:509: warning: invalid assignment: |= cdnsp-gadget.c:510: warning: cast from restricted __le32 cdnsp-gadget.c:558: warning: incorrect type in assignment cdnsp-gadget.c:561: warning: restricted __le32 degrades to integer cdnsp-gadget.c:570: warning: restricted __le32 degrades to integer cdnsp-gadget.c:1571: warning: incorrect type in argument 1 cdnsp-gadget.c:1602: warning: restricted __le32 degrades to integer cdnsp-gadget.c:1760: warning: incorrect type in assignment cdnsp-gadget.c:1762: warning: incorrect type in assignment cdnsp-gadget.c:1763: warning: incorrect type in assignment cdnsp-gadget.c:1764: warning: incorrect type in assignment cdnsp-gadget.c:1765: warning: incorrect type in assignment cdnsp-gadget.c:1766: warning: incorrect type in assignment cdnsp-gadget.c:1767: warning: incorrect type in assignment cdnsp-gadget.c:458: warning: cast truncates bits from constant value (ffffffff07ffffff becomes 7ffffff) cdnsp-gadget.c:666: warning: cast truncates bits from constant value (ffffffff07ffffff becomes 7ffffff) cdnsp-mem.c:762: warning: incorrect type in assignment cdnsp-mem.c:763: warning: incorrect type in assignment cdnsp-mem.c:928: warning: cast from restricted __le16 cdnsp-mem.c:1187: warning: incorrect type in assignment cdnsp-mem.c:1191: warning: incorrect type in assignment cdnsp-ep0.c:142: warning: incorrect type in assignment cdnsp-ep0.c:144: warning: restricted __le32 degrades to integer cdnsp-ep0.c:147: warning: restricted __le32 degrades to integer cdnsp-ep0.c:148: warning: restricted __le32 degrades to integer cdnsp-ep0.c:179: warning: incorrect type in argument 1 cdnsp-ep0.c:311: warning: incorrect type in argument 1 cdnsp-ep0.c:469: warning: incorrect type in assignment cdnsp-trace.h:611:1: warning: cast from restricted __le32 Reported-by: kernel test robot <lkp@intel.com> Signed-off-by: Pawel Laszczak <pawell@cadence.com> Signed-off-by: Peter Chen <peter.chen@nxp.com>
Diffstat (limited to 'drivers/usb/cdns3/cdnsp-gadget.h')
-rw-r--r--drivers/usb/cdns3/cdnsp-gadget.h13
1 files changed, 7 insertions, 6 deletions
diff --git a/drivers/usb/cdns3/cdnsp-gadget.h b/drivers/usb/cdns3/cdnsp-gadget.h
index 8eb1b85a08b4d..6bbb26548c049 100644
--- a/drivers/usb/cdns3/cdnsp-gadget.h
+++ b/drivers/usb/cdns3/cdnsp-gadget.h
@@ -493,11 +493,12 @@ struct cdnsp_3xport_cap {
#define CDNSP_VER_1 0x00000000
#define CDNSP_VER_2 0x10000000
-#define CDNSP_IF_EP_EXIST(pdev, ep_num, dir) ((pdev)->rev_cap.ep_supported & \
- (BIT(ep_num) << ((dir) ? 0 : 16)))
+#define CDNSP_IF_EP_EXIST(pdev, ep_num, dir) \
+ (readl(&(pdev)->rev_cap->ep_supported) & \
+ (BIT(ep_num) << ((dir) ? 0 : 16)))
/**
- * struct cdnsp_rev_cap - controller capabilities .
+ * struct cdnsp_rev_cap - controller capabilities.
* @ext_cap: Header for RTL Revision Extended Capability.
* @rtl_revision: RTL revision.
* @rx_buff_size: Rx buffer sizes.
@@ -594,7 +595,7 @@ struct cdnsp_slot_ctx {
#define DEV_SPEED GENMASK(23, 20)
#define GET_DEV_SPEED(n) (((n) & DEV_SPEED) >> 20)
/* Index of the last valid endpoint context in this device context - 27:31. */
-#define LAST_CTX_MASK GENMASK(31, 27)
+#define LAST_CTX_MASK ((unsigned int)GENMASK(31, 27))
#define LAST_CTX(p) ((p) << 27)
#define LAST_CTX_TO_EP_NUM(p) (((p) >> 27) - 1)
#define SLOT_FLAG BIT(0)
@@ -1351,9 +1352,9 @@ struct cdnsp_port {
* @ir_set: Current interrupter register set.
* @port20_regs: Port 2.0 Peripheral Configuration Registers.
* @port3x_regs: USB3.x Port Peripheral Configuration Registers.
+ * @rev_cap: Controller Capabilities Registers.
* @hcs_params1: Cached register copies of read-only HCSPARAMS1
* @hcc_params: Cached register copies of read-only HCCPARAMS1
- * @rev_cap: Controller capability.
* @setup: Temporary buffer for setup packet.
* @ep0_preq: Internal allocated request used during enumeration.
* @ep0_stage: ep0 stage during enumeration process.
@@ -1402,12 +1403,12 @@ struct cdnsp_device {
struct cdnsp_intr_reg __iomem *ir_set;
struct cdnsp_20port_cap __iomem *port20_regs;
struct cdnsp_3xport_cap __iomem *port3x_regs;
+ struct cdnsp_rev_cap __iomem *rev_cap;
/* Cached register copies of read-only CDNSP data */
__u32 hcs_params1;
__u32 hcs_params3;
__u32 hcc_params;
- struct cdnsp_rev_cap rev_cap;
/* Lock used in interrupt thread context. */
spinlock_t lock;
struct usb_ctrlrequest setup;