stmmac: platform: Fix signedness bug in stmmac_probe_config_dt()
The "plat->phy_interface" variable is an enum and in this context GCC
will treat it as an unsigned int so the error handling is never
triggered.
Fixes: b9f0b2f634
("net: stmmac: platform: fix probe for ACPI devices")
Signed-off-by: YueHaibing <yuehaibing@huawei.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
This commit is contained in:
parent
0d472c69c6
commit
eca81f0914
1 changed files with 5 additions and 3 deletions
|
@ -397,6 +397,7 @@ stmmac_probe_config_dt(struct platform_device *pdev, u8 *mac)
|
||||||
struct device_node *np = pdev->dev.of_node;
|
struct device_node *np = pdev->dev.of_node;
|
||||||
struct plat_stmmacenet_data *plat;
|
struct plat_stmmacenet_data *plat;
|
||||||
struct stmmac_dma_cfg *dma_cfg;
|
struct stmmac_dma_cfg *dma_cfg;
|
||||||
|
int phy_mode;
|
||||||
void *ret;
|
void *ret;
|
||||||
int rc;
|
int rc;
|
||||||
|
|
||||||
|
@ -412,10 +413,11 @@ stmmac_probe_config_dt(struct platform_device *pdev, u8 *mac)
|
||||||
eth_zero_addr(mac);
|
eth_zero_addr(mac);
|
||||||
}
|
}
|
||||||
|
|
||||||
plat->phy_interface = device_get_phy_mode(&pdev->dev);
|
phy_mode = device_get_phy_mode(&pdev->dev);
|
||||||
if (plat->phy_interface < 0)
|
if (phy_mode < 0)
|
||||||
return ERR_PTR(plat->phy_interface);
|
return ERR_PTR(phy_mode);
|
||||||
|
|
||||||
|
plat->phy_interface = phy_mode;
|
||||||
plat->interface = stmmac_of_get_mac_mode(np);
|
plat->interface = stmmac_of_get_mac_mode(np);
|
||||||
if (plat->interface < 0)
|
if (plat->interface < 0)
|
||||||
plat->interface = plat->phy_interface;
|
plat->interface = plat->phy_interface;
|
||||||
|
|
Loading…
Add table
Reference in a new issue