diff mbox series

usb: dwc3: support USB 3.1 controllers

Message ID 20240411160527.835767-1-caleb.connolly@linaro.org
State Superseded
Headers show
Series usb: dwc3: support USB 3.1 controllers | expand

Commit Message

Caleb Connolly April 11, 2024, 4:05 p.m. UTC
The revision is different for these, add the additional check as in
xhci-dwc3 core_init code.

Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
---
 drivers/usb/dwc3/core.c | 3 ++-
 1 file changed, 2 insertions(+), 1 deletion(-)

Comments

Neil Armstrong April 12, 2024, 8:34 a.m. UTC | #1
On 11/04/2024 18:05, Caleb Connolly wrote:
> The revision is different for these, add the additional check as in
> xhci-dwc3 core_init code.
> 
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> ---
>   drivers/usb/dwc3/core.c | 3 ++-
>   1 file changed, 2 insertions(+), 1 deletion(-)
> 
> diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
> index 96e850b7170f..db045f5822d4 100644
> --- a/drivers/usb/dwc3/core.c
> +++ b/drivers/usb/dwc3/core.c
> @@ -594,9 +594,10 @@ static int dwc3_core_init(struct dwc3 *dwc)
>   	int			ret;
>   
>   	reg = dwc3_readl(dwc->regs, DWC3_GSNPSID);
>   	/* This should read as U3 followed by revision number */
> -	if ((reg & DWC3_GSNPSID_MASK) != 0x55330000) {
> +	if ((reg & DWC3_GSNPSID_MASK) != 0x55330000 &&
> +	    (reg & DWC3_GSNPSID_MASK) != 0x33310000) {
>   		dev_err(dwc->dev, "this is not a DesignWare USB3 DRD Core\n");
>   		ret = -ENODEV;
>   		goto err0;
>   	}

Reviewed-by: Neil Armstrong <neil.armstrong@linaro.org>
Tested-by: Neil Armstrong <neil.armstrong@linaro.org> # on SM8550
Mattijs Korpershoek April 16, 2024, 9:56 a.m. UTC | #2
Hi Caleb,;

Thank you for the patch.

On jeu., avril 11, 2024 at 18:05, Caleb Connolly <caleb.connolly@linaro.org> wrote:

> The revision is different for these, add the additional check as in
> xhci-dwc3 core_init code.
>
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>

Reviewed-by: Mattijs Korpershoek <mkorpershoek@baylibre.com>

> ---
>  drivers/usb/dwc3/core.c | 3 ++-
>  1 file changed, 2 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
> index 96e850b7170f..db045f5822d4 100644
> --- a/drivers/usb/dwc3/core.c
> +++ b/drivers/usb/dwc3/core.c
> @@ -594,9 +594,10 @@ static int dwc3_core_init(struct dwc3 *dwc)
>  	int			ret;
>  
>  	reg = dwc3_readl(dwc->regs, DWC3_GSNPSID);
>  	/* This should read as U3 followed by revision number */
> -	if ((reg & DWC3_GSNPSID_MASK) != 0x55330000) {
> +	if ((reg & DWC3_GSNPSID_MASK) != 0x55330000 &&
> +	    (reg & DWC3_GSNPSID_MASK) != 0x33310000) {
>  		dev_err(dwc->dev, "this is not a DesignWare USB3 DRD Core\n");
>  		ret = -ENODEV;
>  		goto err0;
>  	}
> -- 
> 2.44.0
Marek Vasut April 21, 2024, 8:38 p.m. UTC | #3
On 4/11/24 6:05 PM, Caleb Connolly wrote:
> The revision is different for these, add the additional check as in
> xhci-dwc3 core_init code.
> 
> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>

Is there a matching Linux kernel patch , or does Linux do some other check ?
Caleb Connolly April 22, 2024, 10:53 a.m. UTC | #4
On 21/04/2024 22:38, Marek Vasut wrote:
> On 4/11/24 6:05 PM, Caleb Connolly wrote:
>> The revision is different for these, add the additional check as in
>> xhci-dwc3 core_init code.
>>
>> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
> 
> Is there a matching Linux kernel patch , or does Linux do some other 
> check ?

I just took this change from the xhci-dwc3 driver tbh... But I did some 
archeology and it seems the associated Linux patch would be 690fb3718a70 
("usb: dwc3: Support Synopsys USB 3.1 IP").
Marek Vasut April 23, 2024, 12:50 a.m. UTC | #5
On 4/22/24 12:53 PM, Caleb Connolly wrote:
> 
> On 21/04/2024 22:38, Marek Vasut wrote:
>> On 4/11/24 6:05 PM, Caleb Connolly wrote:
>>> The revision is different for these, add the additional check as in
>>> xhci-dwc3 core_init code.
>>>
>>> Signed-off-by: Caleb Connolly <caleb.connolly@linaro.org>
>>
>> Is there a matching Linux kernel patch , or does Linux do some other 
>> check ?
> 
> I just took this change from the xhci-dwc3 driver tbh... But I did some 
> archeology and it seems the associated Linux patch would be 690fb3718a70 
> ("usb: dwc3: Support Synopsys USB 3.1 IP").

Can you please mention it in the commit message, and send a V2 with my:

Reviewed-by: Marek Vasut <marex@denx.de>

Thanks
diff mbox series

Patch

diff --git a/drivers/usb/dwc3/core.c b/drivers/usb/dwc3/core.c
index 96e850b7170f..db045f5822d4 100644
--- a/drivers/usb/dwc3/core.c
+++ b/drivers/usb/dwc3/core.c
@@ -594,9 +594,10 @@  static int dwc3_core_init(struct dwc3 *dwc)
 	int			ret;
 
 	reg = dwc3_readl(dwc->regs, DWC3_GSNPSID);
 	/* This should read as U3 followed by revision number */
-	if ((reg & DWC3_GSNPSID_MASK) != 0x55330000) {
+	if ((reg & DWC3_GSNPSID_MASK) != 0x55330000 &&
+	    (reg & DWC3_GSNPSID_MASK) != 0x33310000) {
 		dev_err(dwc->dev, "this is not a DesignWare USB3 DRD Core\n");
 		ret = -ENODEV;
 		goto err0;
 	}