Commit 7d49a32a authored by Russell King's avatar Russell King Committed by David S. Miller

net: phy: ensure that phy IDs are correctly typed

PHY IDs are 32-bit unsigned quantities. Ensure that they are always
treated as such, and not passed around as "int"s.

Fixes: 13d0ab67 ("net: phy: check return code when requesting PHY driver module")
Signed-off-by: default avatarRussell King <rmk+kernel@armlinux.org.uk>
Reviewed-by: default avatarFlorian Fainelli <f.fainelli@gmail.com>
Reviewed-by: default avatarAndrew Lunn <andrew@lunn.ch>
Signed-off-by: default avatarDavid S. Miller <davem@davemloft.net>
parent d2ed49cf
...@@ -553,7 +553,7 @@ static const struct device_type mdio_bus_phy_type = { ...@@ -553,7 +553,7 @@ static const struct device_type mdio_bus_phy_type = {
.pm = MDIO_BUS_PHY_PM_OPS, .pm = MDIO_BUS_PHY_PM_OPS,
}; };
static int phy_request_driver_module(struct phy_device *dev, int phy_id) static int phy_request_driver_module(struct phy_device *dev, u32 phy_id)
{ {
int ret; int ret;
...@@ -565,15 +565,15 @@ static int phy_request_driver_module(struct phy_device *dev, int phy_id) ...@@ -565,15 +565,15 @@ static int phy_request_driver_module(struct phy_device *dev, int phy_id)
* then modprobe isn't available. * then modprobe isn't available.
*/ */
if (IS_ENABLED(CONFIG_MODULES) && ret < 0 && ret != -ENOENT) { if (IS_ENABLED(CONFIG_MODULES) && ret < 0 && ret != -ENOENT) {
phydev_err(dev, "error %d loading PHY driver module for ID 0x%08x\n", phydev_err(dev, "error %d loading PHY driver module for ID 0x%08lx\n",
ret, phy_id); ret, (unsigned long)phy_id);
return ret; return ret;
} }
return 0; return 0;
} }
struct phy_device *phy_device_create(struct mii_bus *bus, int addr, int phy_id, struct phy_device *phy_device_create(struct mii_bus *bus, int addr, u32 phy_id,
bool is_c45, bool is_c45,
struct phy_c45_device_ids *c45_ids) struct phy_c45_device_ids *c45_ids)
{ {
......
...@@ -1000,7 +1000,7 @@ int phy_modify_paged_changed(struct phy_device *phydev, int page, u32 regnum, ...@@ -1000,7 +1000,7 @@ int phy_modify_paged_changed(struct phy_device *phydev, int page, u32 regnum,
int phy_modify_paged(struct phy_device *phydev, int page, u32 regnum, int phy_modify_paged(struct phy_device *phydev, int page, u32 regnum,
u16 mask, u16 set); u16 mask, u16 set);
struct phy_device *phy_device_create(struct mii_bus *bus, int addr, int phy_id, struct phy_device *phy_device_create(struct mii_bus *bus, int addr, u32 phy_id,
bool is_c45, bool is_c45,
struct phy_c45_device_ids *c45_ids); struct phy_c45_device_ids *c45_ids);
#if IS_ENABLED(CONFIG_PHYLIB) #if IS_ENABLED(CONFIG_PHYLIB)
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment