
On 6/18/24 9:55 AM, Neil Armstrong wrote:
Implement set_mode callback by calling the current public function.
Signed-off-by: Neil Armstrong neil.armstrong@linaro.org
drivers/phy/meson-gxl-usb2.c | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-)
diff --git a/drivers/phy/meson-gxl-usb2.c b/drivers/phy/meson-gxl-usb2.c index 92c285103c..e051e66224 100644 --- a/drivers/phy/meson-gxl-usb2.c +++ b/drivers/phy/meson-gxl-usb2.c @@ -150,6 +150,28 @@ void phy_meson_gxl_usb2_set_mode(struct phy *phy, enum usb_dr_mode mode) phy_meson_gxl_usb2_reset(priv); }
+static int _phy_meson_gxl_usb2_set_mode(struct phy *phy, enum phy_mode mode, int submode) +{
- if (submode)
return -EOPNOTSUPP;
- switch (mode) {
- case PHY_MODE_USB_DEVICE:
phy_meson_gxl_usb2_set_mode(phy, USB_DR_MODE_PERIPHERAL);
break;
- case PHY_MODE_USB_HOST:
- case PHY_MODE_USB_OTG:
phy_meson_gxl_usb2_set_mode(phy, USB_DR_MODE_HOST);
break;
- default:
return -EINVAL;
- }
- return 0;
+}
- static int phy_meson_gxl_usb2_power_on(struct phy *phy) { struct udevice *dev = phy->dev;
@@ -161,7 +183,7 @@ static int phy_meson_gxl_usb2_power_on(struct phy *phy) val &= ~U2P_R0_POWER_ON_RESET; regmap_write(priv->regmap, U2P_R0, val);
- phy_meson_gxl_usb2_set_mode(phy, USB_DR_MODE_HOST);
Could you rename this ^ to some phy_meson_gxl_usb2_set_mode_inner() and ...
- _phy_meson_gxl_usb2_set_mode(phy, PHY_MODE_USB_HOST, 0);
... remove the leading underscore here.
return 0; } @@ -183,6 +205,7 @@ static int phy_meson_gxl_usb2_power_off(struct phy *phy) struct phy_ops meson_gxl_usb2_phy_ops = { .power_on = phy_meson_gxl_usb2_power_on, .power_off = phy_meson_gxl_usb2_power_off,
- .set_mode = _phy_meson_gxl_usb2_set_mode,
... and here ?
[...]