Message ID | 20220926124359.304770-1-patrice.chotard@foss.st.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
Series | usb: dwc3: st: Fix node's child name | expand |
On 26/09/2022 14:43, patrice.chotard@foss.st.com wrote: > From: Patrice Chotard <patrice.chotard@foss.st.com> > > 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 <jerome.audu@st.com> > Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> > --- > 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
<patrice.chotard@foss.st.com> writes: > From: Patrice Chotard <patrice.chotard@foss.st.com> > > 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 <jerome.audu@st.com> > Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> > --- > 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.
Hi Felipe, Krzysztof On 9/27/22 17:15, Felipe Balbi wrote: > > <patrice.chotard@foss.st.com> writes: > >> From: Patrice Chotard <patrice.chotard@foss.st.com> >> >> 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 <jerome.audu@st.com> >> Signed-off-by: Patrice Chotard <patrice.chotard@foss.st.com> >> --- >> 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
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;