forked from luck/tmp_suning_uos_patched
e100: handle eeprom as little endian
[ Upstream commit d4ef55288aa2e1b76033717242728ac98ddc4721 ] Sparse tool was warning on some implicit conversions from little endian data read from the EEPROM on the e100 cards. Fix these by being explicit about the conversions using le16_to_cpu(). Signed-off-by: Jesse Brandeburg <jesse.brandeburg@intel.com> Signed-off-by: Tony Nguyen <anthony.l.nguyen@intel.com> Signed-off-by: Sasha Levin <sashal@kernel.org>
This commit is contained in:
parent
f06ea024c1
commit
ffb865715a
|
@ -1395,7 +1395,7 @@ static int e100_phy_check_without_mii(struct nic *nic)
|
||||||
u8 phy_type;
|
u8 phy_type;
|
||||||
int without_mii;
|
int without_mii;
|
||||||
|
|
||||||
phy_type = (nic->eeprom[eeprom_phy_iface] >> 8) & 0x0f;
|
phy_type = (le16_to_cpu(nic->eeprom[eeprom_phy_iface]) >> 8) & 0x0f;
|
||||||
|
|
||||||
switch (phy_type) {
|
switch (phy_type) {
|
||||||
case NoSuchPhy: /* Non-MII PHY; UNTESTED! */
|
case NoSuchPhy: /* Non-MII PHY; UNTESTED! */
|
||||||
|
@ -1515,7 +1515,7 @@ static int e100_phy_init(struct nic *nic)
|
||||||
mdio_write(netdev, nic->mii.phy_id, MII_BMCR, bmcr);
|
mdio_write(netdev, nic->mii.phy_id, MII_BMCR, bmcr);
|
||||||
} else if ((nic->mac >= mac_82550_D102) || ((nic->flags & ich) &&
|
} else if ((nic->mac >= mac_82550_D102) || ((nic->flags & ich) &&
|
||||||
(mdio_read(netdev, nic->mii.phy_id, MII_TPISTATUS) & 0x8000) &&
|
(mdio_read(netdev, nic->mii.phy_id, MII_TPISTATUS) & 0x8000) &&
|
||||||
(nic->eeprom[eeprom_cnfg_mdix] & eeprom_mdix_enabled))) {
|
(le16_to_cpu(nic->eeprom[eeprom_cnfg_mdix]) & eeprom_mdix_enabled))) {
|
||||||
/* enable/disable MDI/MDI-X auto-switching. */
|
/* enable/disable MDI/MDI-X auto-switching. */
|
||||||
mdio_write(netdev, nic->mii.phy_id, MII_NCONFIG,
|
mdio_write(netdev, nic->mii.phy_id, MII_NCONFIG,
|
||||||
nic->mii.force_media ? 0 : NCONFIG_AUTO_SWITCH);
|
nic->mii.force_media ? 0 : NCONFIG_AUTO_SWITCH);
|
||||||
|
@ -2263,9 +2263,9 @@ static int e100_asf(struct nic *nic)
|
||||||
{
|
{
|
||||||
/* ASF can be enabled from eeprom */
|
/* ASF can be enabled from eeprom */
|
||||||
return (nic->pdev->device >= 0x1050) && (nic->pdev->device <= 0x1057) &&
|
return (nic->pdev->device >= 0x1050) && (nic->pdev->device <= 0x1057) &&
|
||||||
(nic->eeprom[eeprom_config_asf] & eeprom_asf) &&
|
(le16_to_cpu(nic->eeprom[eeprom_config_asf]) & eeprom_asf) &&
|
||||||
!(nic->eeprom[eeprom_config_asf] & eeprom_gcl) &&
|
!(le16_to_cpu(nic->eeprom[eeprom_config_asf]) & eeprom_gcl) &&
|
||||||
((nic->eeprom[eeprom_smbus_addr] & 0xFF) != 0xFE);
|
((le16_to_cpu(nic->eeprom[eeprom_smbus_addr]) & 0xFF) != 0xFE);
|
||||||
}
|
}
|
||||||
|
|
||||||
static int e100_up(struct nic *nic)
|
static int e100_up(struct nic *nic)
|
||||||
|
@ -2920,7 +2920,7 @@ static int e100_probe(struct pci_dev *pdev, const struct pci_device_id *ent)
|
||||||
|
|
||||||
/* Wol magic packet can be enabled from eeprom */
|
/* Wol magic packet can be enabled from eeprom */
|
||||||
if ((nic->mac >= mac_82558_D101_A4) &&
|
if ((nic->mac >= mac_82558_D101_A4) &&
|
||||||
(nic->eeprom[eeprom_id] & eeprom_id_wol)) {
|
(le16_to_cpu(nic->eeprom[eeprom_id]) & eeprom_id_wol)) {
|
||||||
nic->flags |= wol_magic;
|
nic->flags |= wol_magic;
|
||||||
device_set_wakeup_enable(&pdev->dev, true);
|
device_set_wakeup_enable(&pdev->dev, true);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue
Block a user