diff --git a/sys/dev/ic/rtwnreg.h b/sys/dev/ic/rtwnreg.h index dad243e83cea..3613c4f20bb5 100644 --- a/sys/dev/ic/rtwnreg.h +++ b/sys/dev/ic/rtwnreg.h @@ -1,4 +1,4 @@ -/* $NetBSD: rtwnreg.h,v 1.2 2019/07/25 14:31:35 msaitoh Exp $ */ +/* $NetBSD: rtwnreg.h,v 1.3 2020/04/16 17:18:27 nat Exp $ */ /* $OpenBSD: r92creg.h,v 1.16 2017/09/22 13:41:56 kevlo Exp $ */ /*- @@ -1341,6 +1341,8 @@ struct r92c_rx_desc_usb { #define R92C_RXDW2_PKTCNT_M 0x00ff0000 #define R92C_RXDW2_PKTCNT_S 16 +#define R92E_RXDW2_PKTCNT_M 0x3fc00000 +#define R92E_RXDW2_PKTCNT_S 22 #define R92C_RXDW3_RATE_M 0x0000003f #define R92C_RXDW3_RATE_S 0 diff --git a/sys/dev/usb/if_urtwn.c b/sys/dev/usb/if_urtwn.c index 8001ad4b23c0..c5b794545f62 100644 --- a/sys/dev/usb/if_urtwn.c +++ b/sys/dev/usb/if_urtwn.c @@ -1,4 +1,4 @@ -/* $NetBSD: if_urtwn.c,v 1.85 2020/04/04 08:46:01 skrll Exp $ */ +/* $NetBSD: if_urtwn.c,v 1.86 2020/04/16 17:18:27 nat Exp $ */ /* $OpenBSD: if_urtwn.c,v 1.42 2015/02/10 23:25:46 mpi Exp $ */ /*- @@ -25,7 +25,7 @@ */ #include -__KERNEL_RCSID(0, "$NetBSD: if_urtwn.c,v 1.85 2020/04/04 08:46:01 skrll Exp $"); +__KERNEL_RCSID(0, "$NetBSD: if_urtwn.c,v 1.86 2020/04/16 17:18:27 nat Exp $"); #ifdef _KERNEL_OPT #include "opt_inet.h" @@ -2527,7 +2527,10 @@ urtwn_rxeof(struct usbd_xfer *xfer, void *priv, usbd_status status) /* Get the number of encapsulated frames. */ stat = (struct r92c_rx_desc_usb *)buf; - npkts = MS(le32toh(stat->rxdw2), R92C_RXDW2_PKTCNT); + if (ISSET(sc->chip, URTWN_CHIP_92EU)) + npkts = MS(le32toh(stat->rxdw2), R92E_RXDW2_PKTCNT); + else + npkts = MS(le32toh(stat->rxdw2), R92C_RXDW2_PKTCNT); DPRINTFN(DBG_RX, "Rx %jd frames in one chunk", npkts, 0, 0, 0); if (npkts != 0)