Re: [PATCH] usb: dwc3: Update nominal max votes for qcom usb

From: Dmitry Baryshkov

Date: Fri Jun 12 2026 - 02:41:46 EST


On Thu, Jun 11, 2026 at 01:48:21PM +0530, Akash Kumar wrote:
> Increase nominal max votes to improve DDR performance and USB audio
> use case handling.
>
> Currently, Bandwidth vote for max nominal value is set to 2500,
> requiring DDR to run at 1GHz under normal load.

How comes? Please explain the math here.

>
> DDR is allowed to run under nominal range at 1.5GHz, which is
> consistent across all targets. However, with the current nominal

Which targets? Does it cover Agatti? SDX55? IPQ8064?

> vote, glitches are observed during multiple audio use cases over USB.
> Update the nominal vote to allow DDR to run more
> efficiently, enabling simultaneous multiple USB audio use cases
> without glitches.
>
> With the existing vote, throughput is around 125MB/s. The updated nominal
> value increases throughput to 145MB/s.
>
> Benefits:
>
> Enhanced performance and stability for multiple USB audio use cases.
> Improved overall system efficiency with higher throughput. Slight
> improvement in the audio KPI from 17.9ms to 16.6ms RTD-USBC.

What kind of KPI is this?

> By implementing this change, we expect to see significant improvements in

Expect or observe?

> both performance and stability, particularly for USB audio use cases,
> leading to a more efficient system overall.
>
> Signed-off-by: Akash Kumar <akakum@xxxxxxxxxxxxxxxx>
> ---
> drivers/usb/dwc3/dwc3-qcom.c | 6 +++---
> 1 file changed, 3 insertions(+), 3 deletions(-)
>
> diff --git a/drivers/usb/dwc3/dwc3-qcom.c b/drivers/usb/dwc3/dwc3-qcom.c
> index f43f73ac36ff..aa43a03f3c7f 100644
> --- a/drivers/usb/dwc3/dwc3-qcom.c
> +++ b/drivers/usb/dwc3/dwc3-qcom.c
> @@ -46,9 +46,9 @@
> #define USB_MEMORY_AVG_HS_BW MBps_to_icc(240)
> #define USB_MEMORY_PEAK_HS_BW MBps_to_icc(700)
> #define USB_MEMORY_AVG_SS_BW MBps_to_icc(1000)
> -#define USB_MEMORY_PEAK_SS_BW MBps_to_icc(2500)
> -#define APPS_USB_AVG_BW 0
> -#define APPS_USB_PEAK_BW MBps_to_icc(40)
> +#define USB_MEMORY_PEAK_SS_BW MBps_to_icc(5500)
> +#define APPS_USB_AVG_BW 40

MBps_to_icc(40)

> +#define APPS_USB_PEAK_BW MBps_to_icc(80)

You've tried to explain, why we change USB_MEMORY_PEAK_SS_BW. Why are
you chahing APPS_USB_*_BW?

>
> /* Qualcomm SoCs with multiport support has up to 4 ports */
> #define DWC3_QCOM_MAX_PORTS 4
> --
> 2.43.0
>

--
With best wishes
Dmitry