diff options
author | Dan Carpenter <dan.carpenter@oracle.com> | 2021-09-14 14:00:38 +0300 |
---|---|---|
committer | Vinod Koul <vkoul@kernel.org> | 2021-10-26 16:36:23 +0530 |
commit | 8d55027f4e2c04146a75fb63371ab96ccc887f2c (patch) | |
tree | 12a5719c6d7c91de50f34f953d93f01bb5f326c3 /drivers/phy | |
parent | d8b951abd7ff7b126398c51d33671a6909541c68 (diff) | |
download | lwn-8d55027f4e2c04146a75fb63371ab96ccc887f2c.tar.gz lwn-8d55027f4e2c04146a75fb63371ab96ccc887f2c.zip |
phy: ti: gmii-sel: check of_get_address() for failure
Smatch complains that if of_get_address() returns NULL, then "size"
isn't initialized. Also it would lead to an Oops.
Fixes: 7f78322cdd67 ("phy: ti: gmii-sel: retrieve ports number and base offset from dt")
Signed-off-by: Dan Carpenter <dan.carpenter@oracle.com>
Reviewed-by: Grygorii Strashko <grygorii.strashko@ti.com>
Link: https://lore.kernel.org/r/20210914110038.GB11657@kili
Signed-off-by: Vinod Koul <vkoul@kernel.org>
Diffstat (limited to 'drivers/phy')
-rw-r--r-- | drivers/phy/ti/phy-gmii-sel.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/phy/ti/phy-gmii-sel.c b/drivers/phy/ti/phy-gmii-sel.c index 5fd2e8a08bfc..d0ab69750c6b 100644 --- a/drivers/phy/ti/phy-gmii-sel.c +++ b/drivers/phy/ti/phy-gmii-sel.c @@ -320,6 +320,8 @@ static int phy_gmii_sel_init_ports(struct phy_gmii_sel_priv *priv) u64 size; offset = of_get_address(dev->of_node, 0, &size, NULL); + if (!offset) + return -EINVAL; priv->num_ports = size / sizeof(u32); if (!priv->num_ports) return -EINVAL; |