]> git.baikalelectronics.ru Git - kernel.git/commit
ixgbe: Fix issues with EEPROM access
authorMark Rustad <mark.d.rustad@intel.com>
Wed, 14 Dec 2016 19:02:00 +0000 (11:02 -0800)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Tue, 3 Jan 2017 21:03:38 +0000 (13:03 -0800)
commitb0c8cadbfdbbfcf285d1e6ecb7c7442f4a6dce1c
treec9bf1627a239b423e6a25be4f5175f649da0931d
parent6b068a124d23915b5b2f2bc2c61ceb1a1d3537c0
ixgbe: Fix issues with EEPROM access

There are two problems with EEPROM access. One is that it needs to
hold the semaphore until the entire response is read or else the
response can be corrupted by other firmware accesses. The second
problem is that acquiring and releasing the semaphore is slow, so
it should be taken and released once when multiple EEPROM accesses
will be done.

Both of these issues can be solved by adding a new function,
ixgbe_hic_unlocked, to issue firmware commands that will assume
that the caller has acquired the needed semaphore.

Signed-off-by: Mark Rustad <mark.d.rustad@intel.com>
Tested-by: Krishneil Singh <krishneil.k.singh@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/ixgbe/ixgbe_common.c
drivers/net/ethernet/intel/ixgbe/ixgbe_common.h
drivers/net/ethernet/intel/ixgbe/ixgbe_x550.c