net: ethernet: cpsw: fix erroneous condition in error check
The error check in cpsw_probe_dt() has an '&&' where an '||' is meant to be. This causes a NULL pointer dereference when incomplet DT data is passed to the driver ('phy_id' property for cpsw_emac1 missing). Signed-off-by: Lothar Waßmann <LW@KARO-electronics.de> Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
cb0e51d806
commit
ce16294fda
|
@ -1364,7 +1364,7 @@ static int cpsw_probe_dt(struct cpsw_platform_data *data,
|
|||
struct platform_device *mdio;
|
||||
|
||||
parp = of_get_property(slave_node, "phy_id", &lenp);
|
||||
if ((parp == NULL) && (lenp != (sizeof(void *) * 2))) {
|
||||
if ((parp == NULL) || (lenp != (sizeof(void *) * 2))) {
|
||||
pr_err("Missing slave[%d] phy_id property\n", i);
|
||||
ret = -EINVAL;
|
||||
goto error_ret;
|
||||
|
|
Loading…
Reference in a new issue