xhci: fix event ring segment table related masks and variables in header
authorMathias Nyman <mathias.nyman@linux.intel.com>
Thu, 2 Feb 2023 15:04:55 +0000 (17:04 +0200)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Thu, 2 Feb 2023 15:44:41 +0000 (16:44 +0100)
commit8c1cbec9db1ab044167a7594c88bb5906c9d3ee4
tree6857f71a310775fa6d3e65f7d331b446564519fb
parent130c4dcbe8c79595a6ca2e69be9f01411201aa92
xhci: fix event ring segment table related masks and variables in header

xHC controller can supports up to 1024 interrupters.
To fit these change the max_interrupters varable from u8 to u16.

Add a separate mask for the reserve and preserve bits [5:0] in the erst
base register and use it instead of the ERST_PRT_MASK.
ERSR_PTR_MASK [3:0] is intended for masking bits in the
event ring dequeue pointer register.

Signed-off-by: Mathias Nyman <mathias.nyman@linux.intel.com>
Link: https://lore.kernel.org/r/20230202150505.618915-2-mathias.nyman@linux.intel.com
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
drivers/usb/host/xhci-mem.c
drivers/usb/host/xhci.h