]> www.infradead.org Git - users/jedix/linux-maple.git/commitdiff
phy: rockchip: naneng-combphy: compatible reset with old DT
authorChukun Pan <amadeus@jmu.edu.cn>
Mon, 6 Jan 2025 10:00:01 +0000 (18:00 +0800)
committerVinod Koul <vkoul@kernel.org>
Tue, 4 Feb 2025 05:12:37 +0000 (10:42 +0530)
The device tree of RK3568 did not specify reset-names before.
So add fallback to old behaviour to be compatible with old DT.

Fixes: fbcbffbac994 ("phy: rockchip: naneng-combphy: fix phy reset")
Cc: Jianfeng Liu <liujianfeng1994@gmail.com>
Signed-off-by: Chukun Pan <amadeus@jmu.edu.cn>
Reviewed-by: Jonas Karlman <jonas@kwiboo.se>
Link: https://lore.kernel.org/r/20250106100001.1344418-2-amadeus@jmu.edu.cn
Signed-off-by: Vinod Koul <vkoul@kernel.org>
drivers/phy/rockchip/phy-rockchip-naneng-combphy.c

index a1532ef8bbe9d6d6950f6b883a1a8628ad347cb0..8c3ce57f89151fce8cfb1e86824612d75a7a74e0 100644 (file)
@@ -324,7 +324,10 @@ static int rockchip_combphy_parse_dt(struct device *dev, struct rockchip_combphy
 
        priv->ext_refclk = device_property_present(dev, "rockchip,ext-refclk");
 
-       priv->phy_rst = devm_reset_control_get(dev, "phy");
+       priv->phy_rst = devm_reset_control_get_exclusive(dev, "phy");
+       /* fallback to old behaviour */
+       if (PTR_ERR(priv->phy_rst) == -ENOENT)
+               priv->phy_rst = devm_reset_control_array_get_exclusive(dev);
        if (IS_ERR(priv->phy_rst))
                return dev_err_probe(dev, PTR_ERR(priv->phy_rst), "failed to get phy reset\n");