|
@@ -718,11 +718,12 @@ struct xhci_ep_ctx {
|
|
/* bits 10:14 are Max Primary Streams */
|
|
/* bits 10:14 are Max Primary Streams */
|
|
/* bit 15 is Linear Stream Array */
|
|
/* bit 15 is Linear Stream Array */
|
|
/* Interval - period between requests to an endpoint - 125u increments. */
|
|
/* Interval - period between requests to an endpoint - 125u increments. */
|
|
-#define EP_INTERVAL(p) (((p) & 0xff) << 16)
|
|
|
|
-#define EP_INTERVAL_TO_UFRAMES(p) (1 << (((p) >> 16) & 0xff))
|
|
|
|
-#define CTX_TO_EP_INTERVAL(p) (((p) >> 16) & 0xff)
|
|
|
|
-#define EP_MAXPSTREAMS_MASK (0x1f << 10)
|
|
|
|
-#define EP_MAXPSTREAMS(p) (((p) << 10) & EP_MAXPSTREAMS_MASK)
|
|
|
|
|
|
+#define EP_INTERVAL(p) (((p) & 0xff) << 16)
|
|
|
|
+#define EP_INTERVAL_TO_UFRAMES(p) (1 << (((p) >> 16) & 0xff))
|
|
|
|
+#define CTX_TO_EP_INTERVAL(p) (((p) >> 16) & 0xff)
|
|
|
|
+#define EP_MAXPSTREAMS_MASK (0x1f << 10)
|
|
|
|
+#define EP_MAXPSTREAMS(p) (((p) << 10) & EP_MAXPSTREAMS_MASK)
|
|
|
|
+#define CTX_TO_EP_MAXPSTREAMS(p) (((p) & EP_MAXPSTREAMS_MASK) >> 10)
|
|
/* Endpoint is set up with a Linear Stream Array (vs. Secondary Stream Array) */
|
|
/* Endpoint is set up with a Linear Stream Array (vs. Secondary Stream Array) */
|
|
#define EP_HAS_LSA (1 << 15)
|
|
#define EP_HAS_LSA (1 << 15)
|
|
/* hosts with LEC=1 use bits 31:24 as ESIT high bits. */
|
|
/* hosts with LEC=1 use bits 31:24 as ESIT high bits. */
|
|
@@ -2549,21 +2550,22 @@ static inline const char *xhci_decode_ep_context(u32 info, u32 info2, u64 deq,
|
|
u8 burst;
|
|
u8 burst;
|
|
u8 cerr;
|
|
u8 cerr;
|
|
u8 mult;
|
|
u8 mult;
|
|
- u8 lsa;
|
|
|
|
- u8 hid;
|
|
|
|
|
|
+
|
|
|
|
+ bool lsa;
|
|
|
|
+ bool hid;
|
|
|
|
|
|
esit = CTX_TO_MAX_ESIT_PAYLOAD_HI(info) << 16 |
|
|
esit = CTX_TO_MAX_ESIT_PAYLOAD_HI(info) << 16 |
|
|
CTX_TO_MAX_ESIT_PAYLOAD(tx_info);
|
|
CTX_TO_MAX_ESIT_PAYLOAD(tx_info);
|
|
|
|
|
|
ep_state = info & EP_STATE_MASK;
|
|
ep_state = info & EP_STATE_MASK;
|
|
- max_pstr = info & EP_MAXPSTREAMS_MASK;
|
|
|
|
|
|
+ max_pstr = CTX_TO_EP_MAXPSTREAMS(info);
|
|
interval = CTX_TO_EP_INTERVAL(info);
|
|
interval = CTX_TO_EP_INTERVAL(info);
|
|
mult = CTX_TO_EP_MULT(info) + 1;
|
|
mult = CTX_TO_EP_MULT(info) + 1;
|
|
- lsa = info & EP_HAS_LSA;
|
|
|
|
|
|
+ lsa = !!(info & EP_HAS_LSA);
|
|
|
|
|
|
cerr = (info2 & (3 << 1)) >> 1;
|
|
cerr = (info2 & (3 << 1)) >> 1;
|
|
ep_type = CTX_TO_EP_TYPE(info2);
|
|
ep_type = CTX_TO_EP_TYPE(info2);
|
|
- hid = info2 & (1 << 7);
|
|
|
|
|
|
+ hid = !!(info2 & (1 << 7));
|
|
burst = CTX_TO_MAX_BURST(info2);
|
|
burst = CTX_TO_MAX_BURST(info2);
|
|
maxp = MAX_PACKET_DECODED(info2);
|
|
maxp = MAX_PACKET_DECODED(info2);
|
|
|
|
|