2022-09-26 14:51:49

by Patrice CHOTARD

[permalink] [raw]
Subject: [PATCH] usb: dwc3: st: Fix node's child name

From: Patrice Chotard <[email protected]>

Update node's child name from "dwc3" to "usb", this fixes
the following issue:

[3.773852] usb-st-dwc3 8f94000.dwc3: failed to find dwc3 core node

Fixes: 3120910a099b ("ARM: dts: stih407-family: Harmonize DWC USB3 DT nodes name")

Reported-by: Jerome Audu <[email protected]>
Signed-off-by: Patrice Chotard <[email protected]>
---
drivers/usb/dwc3/dwc3-st.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/usb/dwc3/dwc3-st.c b/drivers/usb/dwc3/dwc3-st.c
index 166b5bde45cb..6c14a79279f9 100644
--- a/drivers/usb/dwc3/dwc3-st.c
+++ b/drivers/usb/dwc3/dwc3-st.c
@@ -251,7 +251,7 @@ static int st_dwc3_probe(struct platform_device *pdev)
/* Manage SoftReset */
reset_control_deassert(dwc3_data->rstc_rst);

- child = of_get_child_by_name(node, "dwc3");
+ child = of_get_child_by_name(node, "usb");
if (!child) {
dev_err(&pdev->dev, "failed to find dwc3 core node\n");
ret = -ENODEV;
--
2.25.1


2022-09-26 16:30:21

by Krzysztof Kozlowski

[permalink] [raw]
Subject: Re: [PATCH] usb: dwc3: st: Fix node's child name

On 26/09/2022 14:43, [email protected] wrote:
> From: Patrice Chotard <[email protected]>
>
> Update node's child name from "dwc3" to "usb", this fixes
> the following issue:
>
> [3.773852] usb-st-dwc3 8f94000.dwc3: failed to find dwc3 core node
>
> Fixes: 3120910a099b ("ARM: dts: stih407-family: Harmonize DWC USB3 DT nodes name")
>
> Reported-by: Jerome Audu <[email protected]>
> Signed-off-by: Patrice Chotard <[email protected]>
> ---
> drivers/usb/dwc3/dwc3-st.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/usb/dwc3/dwc3-st.c b/drivers/usb/dwc3/dwc3-st.c
> index 166b5bde45cb..6c14a79279f9 100644
> --- a/drivers/usb/dwc3/dwc3-st.c
> +++ b/drivers/usb/dwc3/dwc3-st.c
> @@ -251,7 +251,7 @@ static int st_dwc3_probe(struct platform_device *pdev)
> /* Manage SoftReset */
> reset_control_deassert(dwc3_data->rstc_rst);
>
> - child = of_get_child_by_name(node, "dwc3");
> + child = of_get_child_by_name(node, "usb");

While this is a ok, the proper fix is not to rely on any other device
nodes or document it in the bindings.

Best regards,
Krzysztof

2022-09-27 16:31:26

by Felipe Balbi

[permalink] [raw]
Subject: Re: [PATCH] usb: dwc3: st: Fix node's child name


<[email protected]> writes:

> From: Patrice Chotard <[email protected]>
>
> Update node's child name from "dwc3" to "usb", this fixes
> the following issue:
>
> [3.773852] usb-st-dwc3 8f94000.dwc3: failed to find dwc3 core node
>
> Fixes: 3120910a099b ("ARM: dts: stih407-family: Harmonize DWC USB3 DT nodes name")
>
> Reported-by: Jerome Audu <[email protected]>
> Signed-off-by: Patrice Chotard <[email protected]>
> ---
> drivers/usb/dwc3/dwc3-st.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/usb/dwc3/dwc3-st.c b/drivers/usb/dwc3/dwc3-st.c
> index 166b5bde45cb..6c14a79279f9 100644
> --- a/drivers/usb/dwc3/dwc3-st.c
> +++ b/drivers/usb/dwc3/dwc3-st.c
> @@ -251,7 +251,7 @@ static int st_dwc3_probe(struct platform_device *pdev)
> /* Manage SoftReset */
> reset_control_deassert(dwc3_data->rstc_rst);
>
> - child = of_get_child_by_name(node, "dwc3");
> + child = of_get_child_by_name(node, "usb");

there could be DTBs in the wild which have `dwc3' as the child name. It
seems to me that you should try both names, instead.

--
balbi

2022-09-28 07:24:06

by Patrice CHOTARD

[permalink] [raw]
Subject: Re: [PATCH] usb: dwc3: st: Fix node's child name

Hi Felipe, Krzysztof

On 9/27/22 17:15, Felipe Balbi wrote:
>
> <[email protected]> writes:
>
>> From: Patrice Chotard <[email protected]>
>>
>> Update node's child name from "dwc3" to "usb", this fixes
>> the following issue:
>>
>> [3.773852] usb-st-dwc3 8f94000.dwc3: failed to find dwc3 core node
>>
>> Fixes: 3120910a099b ("ARM: dts: stih407-family: Harmonize DWC USB3 DT nodes name")
>>
>> Reported-by: Jerome Audu <[email protected]>
>> Signed-off-by: Patrice Chotard <[email protected]>
>> ---
>> drivers/usb/dwc3/dwc3-st.c | 2 +-
>> 1 file changed, 1 insertion(+), 1 deletion(-)
>>
>> diff --git a/drivers/usb/dwc3/dwc3-st.c b/drivers/usb/dwc3/dwc3-st.c
>> index 166b5bde45cb..6c14a79279f9 100644
>> --- a/drivers/usb/dwc3/dwc3-st.c
>> +++ b/drivers/usb/dwc3/dwc3-st.c
>> @@ -251,7 +251,7 @@ static int st_dwc3_probe(struct platform_device *pdev)
>> /* Manage SoftReset */
>> reset_control_deassert(dwc3_data->rstc_rst);
>>
>> - child = of_get_child_by_name(node, "dwc3");
>> + child = of_get_child_by_name(node, "usb");
>
> there could be DTBs in the wild which have `dwc3' as the child name. It
> seems to me that you should try both names, instead.
>

As this patch is already merged, i will submit an additional patch which will
rely on child's compatible string instead of child's node name, as done in other
dwc3 driver.

Thanks
Patrice