From mboxrd@z Thu Jan 1 00:00:00 1970 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: base64 Subject: [1/4] xhci: fix endpoint context tracer output From: Mathias Nyman Message-Id: <1520522237-27229-2-git-send-email-mathias.nyman@linux.intel.com> Date: Thu, 8 Mar 2018 17:17:14 +0200 To: gregkh@linuxfoundation.org Cc: linux-usb@vger.kernel.org, Mathias Nyman , "# v4 . 12+" List-ID: Rml4IGluY29ycmVudCB2YWx1ZXMgc2hvd2VkIGZvciBtYXggUHJpbWFyeSBzdHJlYW0gYW5kCkxp bmVhciBzdHJlYW0gYXJyYXkgKExTQSkgdmFsdWVzIGluIHRoZSBlbmRwb2ludCBjb250ZXh0CmRl Y29kZXIuCgpGaXhlczogMTlhN2QwZDY1YzRhICgidXNiOiBob3N0OiB4aGNpOiBhZGQgU2xvdCBh bmQgRVAgQ29udGV4dCB0cmFjZXJzIikKQ2M6IDxzdGFibGVAdmdlci5rZXJuZWwub3JnPiAjIHY0 LjEyKwpTaWduZWQtb2ZmLWJ5OiBNYXRoaWFzIE55bWFuIDxtYXRoaWFzLm55bWFuQGxpbnV4Lmlu dGVsLmNvbT4KLS0tCiBkcml2ZXJzL3VzYi9ob3N0L3hoY2kuaCB8IDIyICsrKysrKysrKysrKy0t LS0tLS0tLS0KIDEgZmlsZSBjaGFuZ2VkLCAxMiBpbnNlcnRpb25zKCspLCAxMCBkZWxldGlvbnMo LSkKCmRpZmYgLS1naXQgYS9kcml2ZXJzL3VzYi9ob3N0L3hoY2kuaCBiL2RyaXZlcnMvdXNiL2hv c3QveGhjaS5oCmluZGV4IGU0ZDdkM2QuLmQyMGU1N2IgMTAwNjQ0Ci0tLSBhL2RyaXZlcnMvdXNi L2hvc3QveGhjaS5oCisrKyBiL2RyaXZlcnMvdXNiL2hvc3QveGhjaS5oCkBAIC03MTgsMTEgKzcx OCwxMiBAQCBzdHJ1Y3QgeGhjaV9lcF9jdHggewogLyogYml0cyAxMDoxNCBhcmUgTWF4IFByaW1h cnkgU3RyZWFtcyAqLwogLyogYml0IDE1IGlzIExpbmVhciBTdHJlYW0gQXJyYXkgKi8KIC8qIElu dGVydmFsIC0gcGVyaW9kIGJldHdlZW4gcmVxdWVzdHMgdG8gYW4gZW5kcG9pbnQgLSAxMjV1IGlu Y3JlbWVudHMuICovCi0jZGVmaW5lIEVQX0lOVEVSVkFMKHApCQkoKChwKSAmIDB4ZmYpIDw8IDE2 KQotI2RlZmluZSBFUF9JTlRFUlZBTF9UT19VRlJBTUVTKHApCQkoMSA8PCAoKChwKSA+PiAxNikg JiAweGZmKSkKLSNkZWZpbmUgQ1RYX1RPX0VQX0lOVEVSVkFMKHApCSgoKHApID4+IDE2KSAmIDB4 ZmYpCi0jZGVmaW5lIEVQX01BWFBTVFJFQU1TX01BU0sJKDB4MWYgPDwgMTApCi0jZGVmaW5lIEVQ X01BWFBTVFJFQU1TKHApCSgoKHApIDw8IDEwKSAmIEVQX01BWFBTVFJFQU1TX01BU0spCisjZGVm aW5lIEVQX0lOVEVSVkFMKHApCQkJKCgocCkgJiAweGZmKSA8PCAxNikKKyNkZWZpbmUgRVBfSU5U RVJWQUxfVE9fVUZSQU1FUyhwKQkoMSA8PCAoKChwKSA+PiAxNikgJiAweGZmKSkKKyNkZWZpbmUg Q1RYX1RPX0VQX0lOVEVSVkFMKHApCQkoKChwKSA+PiAxNikgJiAweGZmKQorI2RlZmluZSBFUF9N QVhQU1RSRUFNU19NQVNLCQkoMHgxZiA8PCAxMCkKKyNkZWZpbmUgRVBfTUFYUFNUUkVBTVMocCkJ CSgoKHApIDw8IDEwKSAmIEVQX01BWFBTVFJFQU1TX01BU0spCisjZGVmaW5lIENUWF9UT19FUF9N QVhQU1RSRUFNUyhwKQkoKChwKSAmIEVQX01BWFBTVFJFQU1TX01BU0spID4+IDEwKQogLyogRW5k cG9pbnQgaXMgc2V0IHVwIHdpdGggYSBMaW5lYXIgU3RyZWFtIEFycmF5ICh2cy4gU2Vjb25kYXJ5 IFN0cmVhbSBBcnJheSkgKi8KICNkZWZpbmUJRVBfSEFTX0xTQQkJKDEgPDwgMTUpCiAvKiBob3N0 cyB3aXRoIExFQz0xIHVzZSBiaXRzIDMxOjI0IGFzIEVTSVQgaGlnaCBiaXRzLiAqLwpAQCAtMjU0 OSwyMSArMjU1MCwyMiBAQCBzdGF0aWMgaW5saW5lIGNvbnN0IGNoYXIgKnhoY2lfZGVjb2RlX2Vw X2NvbnRleHQodTMyIGluZm8sIHUzMiBpbmZvMiwgdTY0IGRlcSwKIAl1OCBidXJzdDsKIAl1OCBj ZXJyOwogCXU4IG11bHQ7Ci0JdTggbHNhOwotCXU4IGhpZDsKKworCWJvb2wgbHNhOworCWJvb2wg aGlkOwogCiAJZXNpdCA9IENUWF9UT19NQVhfRVNJVF9QQVlMT0FEX0hJKGluZm8pIDw8IDE2IHwK IAkJQ1RYX1RPX01BWF9FU0lUX1BBWUxPQUQodHhfaW5mbyk7CiAKIAllcF9zdGF0ZSA9IGluZm8g JiBFUF9TVEFURV9NQVNLOwotCW1heF9wc3RyID0gaW5mbyAmIEVQX01BWFBTVFJFQU1TX01BU0s7 CisJbWF4X3BzdHIgPSBDVFhfVE9fRVBfTUFYUFNUUkVBTVMoaW5mbyk7CiAJaW50ZXJ2YWwgPSBD VFhfVE9fRVBfSU5URVJWQUwoaW5mbyk7CiAJbXVsdCA9IENUWF9UT19FUF9NVUxUKGluZm8pICsg MTsKLQlsc2EgPSBpbmZvICYgRVBfSEFTX0xTQTsKKwlsc2EgPSAhIShpbmZvICYgRVBfSEFTX0xT QSk7CiAKIAljZXJyID0gKGluZm8yICYgKDMgPDwgMSkpID4+IDE7CiAJZXBfdHlwZSA9IENUWF9U T19FUF9UWVBFKGluZm8yKTsKLQloaWQgPSBpbmZvMiAmICgxIDw8IDcpOworCWhpZCA9ICEhKGlu Zm8yICYgKDEgPDwgNykpOwogCWJ1cnN0ID0gQ1RYX1RPX01BWF9CVVJTVChpbmZvMik7CiAJbWF4 cCA9IE1BWF9QQUNLRVRfREVDT0RFRChpbmZvMik7CiAK From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mga03.intel.com ([134.134.136.65]:19669 "EHLO mga03.intel.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754184AbeCHPOE (ORCPT ); Thu, 8 Mar 2018 10:14:04 -0500 From: Mathias Nyman To: Cc: , Mathias Nyman , "# v4 . 12+" Subject: [PATCH 1/4] xhci: fix endpoint context tracer output Date: Thu, 8 Mar 2018 17:17:14 +0200 Message-Id: <1520522237-27229-2-git-send-email-mathias.nyman@linux.intel.com> In-Reply-To: <1520522237-27229-1-git-send-email-mathias.nyman@linux.intel.com> References: <1520522237-27229-1-git-send-email-mathias.nyman@linux.intel.com> Sender: stable-owner@vger.kernel.org List-ID: Fix incorrent values showed for max Primary stream and Linear stream array (LSA) values in the endpoint context decoder. Fixes: 19a7d0d65c4a ("usb: host: xhci: add Slot and EP Context tracers") Cc: # v4.12+ Signed-off-by: Mathias Nyman --- drivers/usb/host/xhci.h | 22 ++++++++++++---------- 1 file changed, 12 insertions(+), 10 deletions(-) diff --git a/drivers/usb/host/xhci.h b/drivers/usb/host/xhci.h index e4d7d3d..d20e57b 100644 --- a/drivers/usb/host/xhci.h +++ b/drivers/usb/host/xhci.h @@ -718,11 +718,12 @@ struct xhci_ep_ctx { /* bits 10:14 are Max Primary Streams */ /* bit 15 is Linear Stream Array */ /* 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) */ #define EP_HAS_LSA (1 << 15) /* 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 cerr; u8 mult; - u8 lsa; - u8 hid; + + bool lsa; + bool hid; esit = CTX_TO_MAX_ESIT_PAYLOAD_HI(info) << 16 | CTX_TO_MAX_ESIT_PAYLOAD(tx_info); 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); mult = CTX_TO_EP_MULT(info) + 1; - lsa = info & EP_HAS_LSA; + lsa = !!(info & EP_HAS_LSA); cerr = (info2 & (3 << 1)) >> 1; ep_type = CTX_TO_EP_TYPE(info2); - hid = info2 & (1 << 7); + hid = !!(info2 & (1 << 7)); burst = CTX_TO_MAX_BURST(info2); maxp = MAX_PACKET_DECODED(info2); -- 2.7.4