Centos-kernel-stream-9/drivers/usb
Martin McConnell c0e0f5fed9 usb: cdns3: fix iso transfer error when mult is not zero
JIRA: https://issues.redhat.com/browse/RHEL-54566

commit 92f02efa1d86d7dcaef7f38a5fe3396c4e88a93c
Author: Frank Li <Frank.Li@nxp.com>
Date:   Sun Dec 24 10:38:14 2023 -0500

    usb: cdns3: fix iso transfer error when mult is not zero

    ISO basic transfer is
            ITP(SOF) Package_0 Package_1 ... Package_n

    CDNS3 DMA start dma transfer from memmory to internal FIFO when get SOF,
    controller will transfer data to usb bus from internal FIFO when get IN
    token.

    According USB spec defination:
            Maximum number of packets = (bMaxBurst + 1) * (Mult + 1)

    Internal memory should be the same as (bMaxBurst + 1) * (Mult + 1). DMA
    don't fetch data advance when ISO transfer, so only reserve
    (bMaxBurst + 1) * (Mult + 1) internal memory for ISO transfer.

    Need save Mult and bMaxBurst information and set it into EP_CFG register,
    otherwise only 1 package is sent by controller, other package will be
    lost.

    Cc:  <stable@vger.kernel.org>
    Fixes: 7733f6c32e ("usb: cdns3: Add Cadence USB3 DRD Driver")
    Signed-off-by: Frank Li <Frank.Li@nxp.com>
    Link: https://lore.kernel.org/r/20231224153816.1664687-3-Frank.Li@nxp.com
    Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>

Signed-off-by: Martin McConnell <mmcconne@redhat.com>
2024-08-30 12:21:48 +01:00
..
atm usb: ueagle-atm: Use wait_event_freezable_timeout() in uea_wait() 2024-05-29 16:29:56 -03:00
c67x00
cdns3 usb: cdns3: fix iso transfer error when mult is not zero 2024-08-30 12:21:48 +01:00
chipidea usb: chipidea: core: handle power lost in workqueue 2024-05-29 16:29:58 -03:00
class USB: class: cdc-wdm: Fix CPU lockup caused by excessive log messages 2024-07-14 10:27:41 +00:00
common usb: ulpi: Fix debugfs directory leak 2024-05-29 16:29:58 -03:00
core kcov, usb: disable interrupts in kcov_remote_start_usb_softirq 2024-06-21 14:48:44 -03:00
dwc2
dwc3 Merge: USB/TB code rebase of supported drivers to upstream v6.9 2024-07-03 13:11:49 +00:00
early
gadget usb: udc: remove warning when queue disabled ep 2024-06-18 17:26:54 -03:00
host xhci: Handle TD clearing for multiple streams case 2024-07-15 11:14:58 +00:00
image usb: image: mdc800: Remove redundant assignment to variable retval 2024-06-13 13:57:01 -03:00
isp1760
misc usb: misc: onboard_usb_hub: Disable the USB hub clock on failure 2024-06-18 17:26:54 -03:00
mon usb: mon: Fix atomicity violation in mon_bin_vma_fault 2024-05-29 16:29:57 -03:00
mtu3 usb: mtu3: Add MT8195 MTU3 ip-sleep wakeup support 2024-06-13 13:56:58 -03:00
musb
phy Revert "usb: phy: generic: Get the vbus supply" 2024-06-18 17:26:53 -03:00
renesas_usbhs
roles usb: roles: Link the switch to its connector 2024-06-13 13:57:02 -03:00
serial USB: serial: option: add Telit FN920C04 rmnet compositions 2024-06-18 17:26:55 -03:00
storage Merge: CVE-2024-38619: usb-storage: alauda: Check whether the media is initialized 2024-08-02 10:38:20 -04:00
typec usb: typec: tcpm: fix use-after-free case in tcpm_register_source_caps 2024-06-21 14:48:43 -03:00
usbip Merge: USB/TB code rebase of supported drivers to upstream v6.8 2024-06-03 19:41:30 +00:00
Kconfig
Makefile
usb-skeleton.c