aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorNikita Shubin <n.shubin@yadro.com>2022-08-05 11:48:43 +0300
committerJakub Kicinski <kuba@kernel.org>2022-08-08 20:57:03 -0700
commit546b9d3f406a14cfbb12bfbf9fe1b302f1d860b5 (patch)
tree2b1575acb85aadf55bb7caa1900cdf8b9d86f3ba
parentnet: phy: c45 baset1: do not skip aneg configuration if clock role is not specified (diff)
downloadlinux-dev-546b9d3f406a14cfbb12bfbf9fe1b302f1d860b5.tar.xz
linux-dev-546b9d3f406a14cfbb12bfbf9fe1b302f1d860b5.zip
net: phy: dp83867: fix get nvmem cell fail
If CONFIG_NVMEM is not set of_nvmem_cell_get, of_nvmem_device_get functions will return ERR_PTR(-EOPNOTSUPP) and "failed to get nvmem cell io_impedance_ctrl" error would be reported despite "io_impedance_ctrl" is completely missing in Device Tree and we should use default values. Check -EOPNOTSUPP togather with -ENOENT to avoid this situation. Fixes: 5c2d0a6a0701 ("net: phy: dp83867: implement support for io_impedance_ctrl nvmem cell") Signed-off-by: Nikita Shubin <n.shubin@yadro.com> Acked-by: Rasmus Villemoes <linux@rasmusvillemoes.dk> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Link: https://lore.kernel.org/r/20220805084843.24542-1-nikita.shubin@maquefel.me Signed-off-by: Jakub Kicinski <kuba@kernel.org>
-rw-r--r--drivers/net/phy/dp83867.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/drivers/net/phy/dp83867.c b/drivers/net/phy/dp83867.c
index 1e38039c5c56..6939563d3b7c 100644
--- a/drivers/net/phy/dp83867.c
+++ b/drivers/net/phy/dp83867.c
@@ -535,7 +535,7 @@ static int dp83867_of_init_io_impedance(struct phy_device *phydev)
cell = of_nvmem_cell_get(of_node, "io_impedance_ctrl");
if (IS_ERR(cell)) {
ret = PTR_ERR(cell);
- if (ret != -ENOENT)
+ if (ret != -ENOENT && ret != -EOPNOTSUPP)
return phydev_err_probe(phydev, ret,
"failed to get nvmem cell io_impedance_ctrl\n");