net: phy: mscc: read 'vsc8531,vddmac' as an u32

[ Upstream commit a993e0f583 ]

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>
Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
Quentin Schulz
2018-09-03 10:48:49 +02:00
committed by Greg Kroah-Hartman
parent 5dc1cbcff7
commit 77f9e263e2

View File

@@ -111,7 +111,7 @@ struct vsc8531_private {
#ifdef CONFIG_OF_MDIO
struct vsc8531_edge_rate_table {
u16 vddmac;
u32 vddmac;
u8 slowdown[8];
};
@@ -376,7 +376,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;
@@ -385,7 +385,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;