net: phy: mscc: read 'vsc8531,vddmac' as an u32
authorQuentin Schulz <quentin.schulz@bootlin.com>
Mon, 3 Sep 2018 08:48:49 +0000 (10:48 +0200)
committerDavid S. Miller <davem@davemloft.net>
Tue, 4 Sep 2018 17:47:53 +0000 (10:47 -0700)
In the DT binding, it is specified nowhere that 'vsc8531,vddmac' is an
u16, even though it's read as an u16 in the driver.

Let's update the driver to take into consideration that the
'vsc8531,vddmac' property is of the default type u32.

Signed-off-by: Quentin Schulz <quentin.schulz@bootlin.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/phy/mscc.c

index aa37e8547cd01efc72f672ad6c3ee09f4e885624..49dc23117732ba03fd65a37d23f68d960f23629f 100644 (file)
@@ -128,7 +128,7 @@ struct vsc8531_private {
 
 #ifdef CONFIG_OF_MDIO
 struct vsc8531_edge_rate_table {
-       u16 vddmac;
+       u32 vddmac;
        u8 slowdown[8];
 };
 
@@ -387,7 +387,7 @@ out_unlock:
 static int vsc85xx_edge_rate_magic_get(struct phy_device *phydev)
 {
        u8 sd;
-       u16 vdd;
+       u32 vdd;
        int rc, i, j;
        struct device *dev = &phydev->mdio.dev;
        struct device_node *of_node = dev->of_node;
@@ -396,7 +396,7 @@ static int vsc85xx_edge_rate_magic_get(struct phy_device *phydev)
        if (!of_node)
                return -ENODEV;
 
-       rc = of_property_read_u16(of_node, "vsc8531,vddmac", &vdd);
+       rc = of_property_read_u32(of_node, "vsc8531,vddmac", &vdd);
        if (rc != 0)
                vdd = MSCC_VDDMAC_3300;