[PATCH v2] phy: ocelot-serdes: Fix IS_ERR() vs NULL bug in serdes_probe()

From: Jinjie Ruan
Date: Fri Nov 01 2024 - 02:12:27 EST


dev_get_regmap() call can return a null pointer. It will not return
error pointers. Thus apply a null pointer check instead.

Cc: stable@xxxxxxxxxxxxxxx
Fixes: 672faa7bbf60 ("phy: phy-ocelot-serdes: add ability to be used in a non-syscon configuration")
Acked-by: Colin Foster <colin.foster@xxxxxxxxxxxxxxxx>
Signed-off-by: Jinjie Ruan <ruanjinjie@xxxxxxxxxx>
---
v2:
- Add Acked-by.
- Update the commit message as Markus suggested.
---
drivers/phy/mscc/phy-ocelot-serdes.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

diff --git a/drivers/phy/mscc/phy-ocelot-serdes.c b/drivers/phy/mscc/phy-ocelot-serdes.c
index 1cd1b5db2ad7..77ca67ce6e91 100644
--- a/drivers/phy/mscc/phy-ocelot-serdes.c
+++ b/drivers/phy/mscc/phy-ocelot-serdes.c
@@ -512,8 +512,8 @@ static int serdes_probe(struct platform_device *pdev)
res->name);
}

- if (IS_ERR(ctrl->regs))
- return PTR_ERR(ctrl->regs);
+ if (!ctrl->regs)
+ return -EINVAL;

for (i = 0; i < SERDES_MAX; i++) {
ret = serdes_phy_create(ctrl, i, &ctrl->phys[i]);
--
2.34.1