public inbox for linux-usb@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH 00/18] Reserve high bandwidth for HS isoc eps
@ 2025-02-06 11:15 Akash Kumar
  2025-02-06 11:15 ` [PATCH 01/18] usb: dwc3: Reserve Higher Bandwidth for HS Periodic EPs Akash Kumar
                   ` (19 more replies)
  0 siblings, 20 replies; 24+ messages in thread
From: Akash Kumar @ 2025-02-06 11:15 UTC (permalink / raw)
  To: Thinh Nguyen, Greg Kroah-Hartman, Jack Pham, kernel, Wesley Cheng
  Cc: Bjorn Andersson, Konrad Dybcio, Rob Herring, Krzysztof Kozlowski,
	Conor Dooley, Vijayavardhan Vennapusa, linux-usb, linux-kernel,
	Akash Kumar

It is observed while testing multiple audio devices over usb, a glitch is
observed during testing. As per dwc datasheet,By default, HC reserves 80%
of the bandwidth for periodic EPs which can be increased if needed.

Add quirk to set GUCTL register BIT 16 to accommodate higher bandwidth for
2 isoc eps.

If this bit is set, the bandwidth is relaxed to 85% to accommodate two high
speed, high bandwidth ISOC EPs. USB 2.0 required 80% bandwidth allocated
for ISOC traffic. If two High-bandwidth ISOC devices (HD Webcams) are
connected, and if each requires 1024-bytes X 3 packets per Micro-Frame,
then the bandwidth required is around 82%. If this bit is set, then it is
possible to connect two Webcams of 1024bytes X 3 paylod per Micro-Frame
each. Alternatively, you might need to lower the resolution of the
webcams. This bit is valid in Host and DRD configuration and is used in
host mode operation only.

Set this bit for host mode uvc uac usecases where two isoc eps are used
and uvc flickers or audio glitch is observed.

Akash Kumar (18):
  usb: dwc3: Reserve Higher Bandwidth for HS Periodic EPs
  arm64: dts: qcom: sa8775p: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sm8350: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sm8450: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sm8150: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sm6125: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sm8250: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sm6350: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sc7280: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sdm630: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sdm845: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sdx75: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: qcs404: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sc7180: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: x1e80100: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sc8280xp: Enable high bandwidth for hs isoc eps
  arm64: dts: qcom: sc8180x: Enable high bandwidth for hs isoc eps

 arch/arm64/boot/dts/qcom/qcs404.dtsi   |  2 ++
 arch/arm64/boot/dts/qcom/qdu1000.dtsi  |  1 +
 arch/arm64/boot/dts/qcom/sa8775p.dtsi  |  3 +++
 arch/arm64/boot/dts/qcom/sc7180.dtsi   |  1 +
 arch/arm64/boot/dts/qcom/sc7280.dtsi   |  2 ++
 arch/arm64/boot/dts/qcom/sc8180x.dtsi  |  3 +++
 arch/arm64/boot/dts/qcom/sc8280xp.dtsi |  3 +++
 arch/arm64/boot/dts/qcom/sdm630.dtsi   |  2 ++
 arch/arm64/boot/dts/qcom/sdm845.dtsi   |  2 ++
 arch/arm64/boot/dts/qcom/sdx75.dtsi    |  1 +
 arch/arm64/boot/dts/qcom/sm6125.dtsi   |  1 +
 arch/arm64/boot/dts/qcom/sm6350.dtsi   |  1 +
 arch/arm64/boot/dts/qcom/sm8150.dtsi   |  2 ++
 arch/arm64/boot/dts/qcom/sm8250.dtsi   |  2 ++
 arch/arm64/boot/dts/qcom/sm8350.dtsi   |  2 ++
 arch/arm64/boot/dts/qcom/sm8450.dtsi   |  1 +
 arch/arm64/boot/dts/qcom/x1e80100.dtsi |  5 +++++
 drivers/usb/dwc3/core.c                | 11 +++++++++++
 drivers/usb/dwc3/core.h                |  4 ++++
 19 files changed, 49 insertions(+)

-- 
2.17.1


^ permalink raw reply	[flat|nested] 24+ messages in thread

end of thread, other threads:[~2025-02-10  8:22 UTC | newest]

Thread overview: 24+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-02-06 11:15 [PATCH 00/18] Reserve high bandwidth for HS isoc eps Akash Kumar
2025-02-06 11:15 ` [PATCH 01/18] usb: dwc3: Reserve Higher Bandwidth for HS Periodic EPs Akash Kumar
2025-02-06 17:49   ` Konrad Dybcio
2025-02-10  8:16     ` AKASH KUMAR
2025-02-10  8:19   ` Krzysztof Kozlowski
2025-02-06 11:15 ` [PATCH 02/18] arm64: dts: qcom: sa8775p: Enable high bandwidth for hs isoc eps Akash Kumar
2025-02-06 11:15 ` [PATCH 03/18] arm64: dts: qcom: sm8350: " Akash Kumar
2025-02-06 11:15 ` [PATCH 04/18] arm64: dts: qcom: sm8450: " Akash Kumar
2025-02-06 11:15 ` [PATCH 05/18] arm64: dts: qcom: sm8150: " Akash Kumar
2025-02-06 11:15 ` [PATCH 06/18] arm64: dts: qcom: sm6125: " Akash Kumar
2025-02-06 11:15 ` [PATCH 07/18] arm64: dts: qcom: sm8250: " Akash Kumar
2025-02-06 11:15 ` [PATCH 08/18] arm64: dts: qcom: sm6350: " Akash Kumar
2025-02-06 11:15 ` [PATCH 09/18] arm64: dts: qcom: sc7280: " Akash Kumar
2025-02-06 11:15 ` [PATCH 10/18] arm64: dts: qcom: sdm630: " Akash Kumar
2025-02-06 11:15 ` [PATCH 11/18] arm64: dts: qcom: sdm845: " Akash Kumar
2025-02-06 11:15 ` [PATCH 12/18] arm64: dts: qcom: sdx75: " Akash Kumar
2025-02-06 11:15 ` [PATCH 13/18] arm64: dts: qcom: qcs404: " Akash Kumar
2025-02-06 11:15 ` [PATCH 14/18] arm64: dts: qcom: sc7180: " Akash Kumar
2025-02-06 11:15 ` [PATCH 15/18] arm64: dts: qcom: x1e80100: " Akash Kumar
2025-02-06 11:15 ` [PATCH 16/18] arm64: dts: qcom: " Akash Kumar
2025-02-06 11:15 ` [PATCH 17/18] arm64: dts: qcom: sc8280xp: " Akash Kumar
2025-02-06 11:15 ` [PATCH 18/18] arm64: dts: qcom: sc8180x: " Akash Kumar
2025-02-07 15:21 ` [PATCH 00/18] Reserve high bandwidth for HS " Rob Herring (Arm)
2025-02-10  8:22 ` Krzysztof Kozlowski

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox