[PATCH] usb: dwc3-meson-g12a: skip phy on -ENODATA aswell

If the PHY isn't specified in the DT, -ENODATA means it should be skipped, handle it like -ENOENT.
With that, devices without USB3 supported can have USB working (Odroid-HC4).
Fixes: adb049abf7 ("usb: dwc3: Add Meson G12A USB Glue") Signed-off-by: Neil Armstrong narmstrong@baylibre.com --- drivers/usb/dwc3/dwc3-meson-g12a.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/dwc3/dwc3-meson-g12a.c b/drivers/usb/dwc3/dwc3-meson-g12a.c index bd8bf227c8..90418ddc1d 100644 --- a/drivers/usb/dwc3/dwc3-meson-g12a.c +++ b/drivers/usb/dwc3/dwc3-meson-g12a.c @@ -298,7 +298,7 @@ static int dwc3_meson_g12a_get_phys(struct dwc3_meson_g12a *priv) for (i = 0 ; i < PHY_COUNT ; ++i) { ret = generic_phy_get_by_name(priv->dev, phy_names[i], &priv->phys[i]); - if (ret == -ENOENT) + if (ret == -ENOENT || ret == -ENODATA) continue;
if (ret)

On 05/05/2021 12:06, Marek Vasut wrote:
On 5/5/21 10:41 AM, Neil Armstrong wrote:
If the PHY isn't specified in the DT, -ENODATA means it should be skipped, handle it like -ENOENT.
With that, devices without USB3 supported can have USB working (Odroid-HC4).
Shouldn't you rather specify NOP PHY in the DT ?
Who NOP I would have no idea if the port is disabled or used. The PHY control is mixed between the actual PHY driver and the DWC3/DWC2 glue, so the bindings were designed to make some PHYs phandle optionals if unused.
Neil

On 05/05/2021 10:41, Neil Armstrong wrote:
If the PHY isn't specified in the DT, -ENODATA means it should be skipped, handle it like -ENOENT.
With that, devices without USB3 supported can have USB working (Odroid-HC4).
Fixes: adb049abf7 ("usb: dwc3: Add Meson G12A USB Glue") Signed-off-by: Neil Armstrong narmstrong@baylibre.com
drivers/usb/dwc3/dwc3-meson-g12a.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/drivers/usb/dwc3/dwc3-meson-g12a.c b/drivers/usb/dwc3/dwc3-meson-g12a.c index bd8bf227c8..90418ddc1d 100644 --- a/drivers/usb/dwc3/dwc3-meson-g12a.c +++ b/drivers/usb/dwc3/dwc3-meson-g12a.c @@ -298,7 +298,7 @@ static int dwc3_meson_g12a_get_phys(struct dwc3_meson_g12a *priv) for (i = 0 ; i < PHY_COUNT ; ++i) { ret = generic_phy_get_by_name(priv->dev, phy_names[i], &priv->phys[i]);
if (ret == -ENOENT)
if (ret == -ENOENT || ret == -ENODATA) continue;
if (ret)
Applied to u-boot-amlogic
Neil
participants (2)
-
Marek Vasut
-
Neil Armstrong