Re: [PATCH] usb: dwc3: google: Initialise probe properties with DWC3_DEFAULT_PROPERTIES

Thinh Nguyen <[email protected]>
Newsgroups org.kernel.vger.linux-samsung-soc,org.infradead.lists.linux-arm-kernel,org.kernel.vger.linux-kernel,org.kernel.vger.linux-usb
Message-ID <ao404zOD-rXKZ84C@vbox>
On Wed, Aug 19, 2026, Radhey Shyam Pandey wrote:
> dwc3_google_probe() zero initialises struct dwc3_probe_data and never
> assigns its properties member. The unspecified state of gsbuscfg0_reqinfo
> is encoded as DWC3_GSBUSCFG0_REQINFO_UNSPECIFIED (0xffffffff), not as
> zero, so dwc3_get_software_properties() reads the zeroed field as a value
> the glue explicitly requested:
> 
> 	if (properties->gsbuscfg0_reqinfo !=
> 	    DWC3_GSBUSCFG0_REQINFO_UNSPECIFIED) {
> 		dwc->gsbuscfg0_reqinfo = properties->gsbuscfg0_reqinfo;
> 		return;
> 	}
> 
> Two things follow. dwc3_config_soc_bus() programs GSBUSCFG0.REQINFO with
> zero on hardware that never asked for it, and the early return skips the
> walk over the parent devices, so a swnode or device tree supplied
> snps,gsbuscfg0-reqinfo would be ignored.
> 
> Assign DWC3_DEFAULT_PROPERTIES so the unset fields carry their unspecified
> sentinels and the controller is left alone.
> 
> Fixes: 8995a37371bf ("usb: dwc3: Add Google Tensor SoC DWC3 glue driver")

Does this need Cc stable?

Regardless,
Acked-by: Thinh Nguyen <[email protected]>

Thanks,
Thinh


> Signed-off-by: Radhey Shyam Pandey <[email protected]>
> ---
>  drivers/usb/dwc3/dwc3-google.c | 1 +
>  1 file changed, 1 insertion(+)
> 
> diff --git a/drivers/usb/dwc3/dwc3-google.c b/drivers/usb/dwc3/dwc3-google.c
> index 60ee4cc99b28..a01ca23cb6a8 100644
> --- a/drivers/usb/dwc3/dwc3-google.c
> +++ b/drivers/usb/dwc3/dwc3-google.c
> @@ -442,6 +442,7 @@ static int dwc3_google_probe(struct platform_device *pdev)
>  	probe_data.dwc = &google->dwc;
>  	probe_data.res = res;
>  	probe_data.ignore_clocks_and_resets = true;
> +	probe_data.properties = DWC3_DEFAULT_PROPERTIES;
>  	ret = dwc3_core_probe(&probe_data);
>  	if (ret)  {
>  		ret = dev_err_probe(dev, ret, "failed to register DWC3 Core\n");
> 
> base-commit: 6a746cd265aed59107ebdaa9ce039bb832922969
> -- 
> 2.43.0
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.