提交 c676504e 编写于 作者: A Al Viro 提交者: David S. Miller

ixgb: endianness

Signed-off-by: NAl Viro <viro@zeniv.linux.org.uk>
Signed-off-by: NJeff Garzik <jeff@garzik.org>
上级 3e33545b
...@@ -411,7 +411,7 @@ ixgb_write_eeprom(struct ixgb_hw *hw, uint16_t offset, uint16_t data) ...@@ -411,7 +411,7 @@ ixgb_write_eeprom(struct ixgb_hw *hw, uint16_t offset, uint16_t data)
ixgb_cleanup_eeprom(hw); ixgb_cleanup_eeprom(hw);
/* clear the init_ctrl_reg_1 to signify that the cache is invalidated */ /* clear the init_ctrl_reg_1 to signify that the cache is invalidated */
ee_map->init_ctrl_reg_1 = le16_to_cpu(EEPROM_ICW1_SIGNATURE_CLEAR); ee_map->init_ctrl_reg_1 = cpu_to_le16(EEPROM_ICW1_SIGNATURE_CLEAR);
return; return;
} }
...@@ -476,19 +476,19 @@ ixgb_get_eeprom_data(struct ixgb_hw *hw) ...@@ -476,19 +476,19 @@ ixgb_get_eeprom_data(struct ixgb_hw *hw)
uint16_t ee_data; uint16_t ee_data;
ee_data = ixgb_read_eeprom(hw, i); ee_data = ixgb_read_eeprom(hw, i);
checksum += ee_data; checksum += ee_data;
hw->eeprom[i] = le16_to_cpu(ee_data); hw->eeprom[i] = cpu_to_le16(ee_data);
} }
if (checksum != (uint16_t) EEPROM_SUM) { if (checksum != (uint16_t) EEPROM_SUM) {
DEBUGOUT("ixgb_ee: Checksum invalid.\n"); DEBUGOUT("ixgb_ee: Checksum invalid.\n");
/* clear the init_ctrl_reg_1 to signify that the cache is /* clear the init_ctrl_reg_1 to signify that the cache is
* invalidated */ * invalidated */
ee_map->init_ctrl_reg_1 = le16_to_cpu(EEPROM_ICW1_SIGNATURE_CLEAR); ee_map->init_ctrl_reg_1 = cpu_to_le16(EEPROM_ICW1_SIGNATURE_CLEAR);
return (FALSE); return (FALSE);
} }
if ((ee_map->init_ctrl_reg_1 & le16_to_cpu(EEPROM_ICW1_SIGNATURE_MASK)) if ((ee_map->init_ctrl_reg_1 & cpu_to_le16(EEPROM_ICW1_SIGNATURE_MASK))
!= le16_to_cpu(EEPROM_ICW1_SIGNATURE_VALID)) { != cpu_to_le16(EEPROM_ICW1_SIGNATURE_VALID)) {
DEBUGOUT("ixgb_ee: Signature invalid.\n"); DEBUGOUT("ixgb_ee: Signature invalid.\n");
return(FALSE); return(FALSE);
} }
...@@ -511,8 +511,8 @@ ixgb_check_and_get_eeprom_data (struct ixgb_hw* hw) ...@@ -511,8 +511,8 @@ ixgb_check_and_get_eeprom_data (struct ixgb_hw* hw)
{ {
struct ixgb_ee_map_type *ee_map = (struct ixgb_ee_map_type *)hw->eeprom; struct ixgb_ee_map_type *ee_map = (struct ixgb_ee_map_type *)hw->eeprom;
if ((ee_map->init_ctrl_reg_1 & le16_to_cpu(EEPROM_ICW1_SIGNATURE_MASK)) if ((ee_map->init_ctrl_reg_1 & cpu_to_le16(EEPROM_ICW1_SIGNATURE_MASK))
== le16_to_cpu(EEPROM_ICW1_SIGNATURE_VALID)) { == cpu_to_le16(EEPROM_ICW1_SIGNATURE_VALID)) {
return (TRUE); return (TRUE);
} else { } else {
return ixgb_get_eeprom_data(hw); return ixgb_get_eeprom_data(hw);
...@@ -528,7 +528,7 @@ ixgb_check_and_get_eeprom_data (struct ixgb_hw* hw) ...@@ -528,7 +528,7 @@ ixgb_check_and_get_eeprom_data (struct ixgb_hw* hw)
* Returns: * Returns:
* Word at indexed offset in eeprom, if valid, 0 otherwise. * Word at indexed offset in eeprom, if valid, 0 otherwise.
******************************************************************************/ ******************************************************************************/
uint16_t __le16
ixgb_get_eeprom_word(struct ixgb_hw *hw, uint16_t index) ixgb_get_eeprom_word(struct ixgb_hw *hw, uint16_t index)
{ {
......
...@@ -76,22 +76,22 @@ ...@@ -76,22 +76,22 @@
/* EEPROM structure */ /* EEPROM structure */
struct ixgb_ee_map_type { struct ixgb_ee_map_type {
uint8_t mac_addr[IXGB_ETH_LENGTH_OF_ADDRESS]; uint8_t mac_addr[IXGB_ETH_LENGTH_OF_ADDRESS];
uint16_t compatibility; __le16 compatibility;
uint16_t reserved1[4]; __le16 reserved1[4];
uint32_t pba_number; __le32 pba_number;
uint16_t init_ctrl_reg_1; __le16 init_ctrl_reg_1;
uint16_t subsystem_id; __le16 subsystem_id;
uint16_t subvendor_id; __le16 subvendor_id;
uint16_t device_id; __le16 device_id;
uint16_t vendor_id; __le16 vendor_id;
uint16_t init_ctrl_reg_2; __le16 init_ctrl_reg_2;
uint16_t oem_reserved[16]; __le16 oem_reserved[16];
uint16_t swdpins_reg; __le16 swdpins_reg;
uint16_t circuit_ctrl_reg; __le16 circuit_ctrl_reg;
uint8_t d3_power; uint8_t d3_power;
uint8_t d0_power; uint8_t d0_power;
uint16_t reserved2[28]; __le16 reserved2[28];
uint16_t checksum; __le16 checksum;
}; };
/* EEPROM Functions */ /* EEPROM Functions */
......
...@@ -422,7 +422,7 @@ ixgb_get_eeprom(struct net_device *netdev, ...@@ -422,7 +422,7 @@ ixgb_get_eeprom(struct net_device *netdev,
{ {
struct ixgb_adapter *adapter = netdev_priv(netdev); struct ixgb_adapter *adapter = netdev_priv(netdev);
struct ixgb_hw *hw = &adapter->hw; struct ixgb_hw *hw = &adapter->hw;
uint16_t *eeprom_buff; __le16 *eeprom_buff;
int i, max_len, first_word, last_word; int i, max_len, first_word, last_word;
int ret_val = 0; int ret_val = 0;
...@@ -446,7 +446,7 @@ ixgb_get_eeprom(struct net_device *netdev, ...@@ -446,7 +446,7 @@ ixgb_get_eeprom(struct net_device *netdev,
first_word = eeprom->offset >> 1; first_word = eeprom->offset >> 1;
last_word = (eeprom->offset + eeprom->len - 1) >> 1; last_word = (eeprom->offset + eeprom->len - 1) >> 1;
eeprom_buff = kmalloc(sizeof(uint16_t) * eeprom_buff = kmalloc(sizeof(__le16) *
(last_word - first_word + 1), GFP_KERNEL); (last_word - first_word + 1), GFP_KERNEL);
if(!eeprom_buff) if(!eeprom_buff)
return -ENOMEM; return -ENOMEM;
......
...@@ -711,7 +711,7 @@ struct ixgb_hw { ...@@ -711,7 +711,7 @@ struct ixgb_hw {
uint32_t bar2; uint32_t bar2;
uint32_t bar3; uint32_t bar3;
uint16_t pci_cmd_word; /* PCI command register id from PCI configuration space */ uint16_t pci_cmd_word; /* PCI command register id from PCI configuration space */
uint16_t eeprom[IXGB_EEPROM_SIZE]; /* EEPROM contents read at init time */ __le16 eeprom[IXGB_EEPROM_SIZE]; /* EEPROM contents read at init time */
unsigned long io_base; /* Our I/O mapped location */ unsigned long io_base; /* Our I/O mapped location */
uint32_t lastLFC; uint32_t lastLFC;
uint32_t lastRFC; uint32_t lastRFC;
...@@ -809,7 +809,7 @@ void ixgb_get_ee_mac_addr(struct ixgb_hw *hw, uint8_t *mac_addr); ...@@ -809,7 +809,7 @@ void ixgb_get_ee_mac_addr(struct ixgb_hw *hw, uint8_t *mac_addr);
uint32_t ixgb_get_ee_pba_number(struct ixgb_hw *hw); uint32_t ixgb_get_ee_pba_number(struct ixgb_hw *hw);
uint16_t ixgb_get_ee_device_id(struct ixgb_hw *hw); uint16_t ixgb_get_ee_device_id(struct ixgb_hw *hw);
boolean_t ixgb_get_eeprom_data(struct ixgb_hw *hw); boolean_t ixgb_get_eeprom_data(struct ixgb_hw *hw);
uint16_t ixgb_get_eeprom_word(struct ixgb_hw *hw, uint16_t index); __le16 ixgb_get_eeprom_word(struct ixgb_hw *hw, uint16_t index);
/* Everything else */ /* Everything else */
void ixgb_led_on(struct ixgb_hw *hw); void ixgb_led_on(struct ixgb_hw *hw);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册