ixgbe: clear the data field in ixgbe_read_i2c_byte_generic
authorEmil Tantilov <emil.s.tantilov@intel.com>
Tue, 30 Aug 2011 13:33:51 +0000 (13:33 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Wed, 5 Oct 2011 09:53:24 +0000 (02:53 -0700)
Clear the data field in ixgbe_read_i2c_byte_generic so it does not
accumulate 1 bit using the same variable multiple times.

Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Phil Schmitt <phillip.j.schmitt@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_phy.c

index f7ca3511b9fede0657bc69141b84b02d000c72c6..cf3c227f964393198ee8bf19f5dc3e77fa32ae11 100644 (file)
@@ -1205,7 +1205,7 @@ s32 ixgbe_write_i2c_eeprom_generic(struct ixgbe_hw *hw, u8 byte_offset,
  *  @data: value read
  *
  *  Performs byte read operation to SFP module's EEPROM over I2C interface at
- *  a specified deivce address.
+ *  a specified device address.
  **/
 s32 ixgbe_read_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset,
                                 u8 dev_addr, u8 *data)
@@ -1215,6 +1215,7 @@ s32 ixgbe_read_i2c_byte_generic(struct ixgbe_hw *hw, u8 byte_offset,
        u32 retry = 0;
        u16 swfw_mask = 0;
        bool nack = 1;
+       *data = 0;
 
        if (IXGBE_READ_REG(hw, IXGBE_STATUS) & IXGBE_STATUS_LAN_ID_1)
                swfw_mask = IXGBE_GSSR_PHY1_SM;