net: phy: micrel: add led-mode sanity check

Make sure never to update more than two bits when setting the led mode,
something which could for example change the reference-clock setting.

Signed-off-by: Johan Hovold <johan@kernel.org>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
Johan Hovold 2014-11-11 20:00:12 +01:00 committed by David S. Miller
parent 57a38effa5
commit 8620546c39

View File

@ -173,6 +173,11 @@ static int kszphy_setup_led(struct phy_device *phydev,
if (of_property_read_u32(of_node, "micrel,led-mode", &val))
return 0;
if (val > 3) {
dev_err(&phydev->dev, "invalid led mode: 0x%02x\n", val);
return -EINVAL;
}
temp = phy_read(phydev, reg);
if (temp < 0)
return temp;