diff options
author | Emil Tantilov <emil.s.tantilov@intel.com> | 2011-04-20 08:49:06 +0000 |
---|---|---|
committer | Jeff Kirsher <jeffrey.t.kirsher@intel.com> | 2011-05-04 12:17:33 -0700 |
commit | 68c7005d664724eab87627b042e149a736622d54 (patch) | |
tree | c2257af755eba410a8af9a88ae10c93b462e41d2 /lib/hweight.c | |
parent | 95a46011843a3c49e1a002eddb6b2735c201e378 (diff) |
ixgbe: improve EEPROM read/write operations
Introduce buffered read/writes which greatly improves performance on
parts with large EEPROMs.
Previously reading/writing a word requires taking/releasing of synchronization
semaphores which adds 10ms to each operation. The optimization is to
read/write in buffers, but make sure the semaphore is not held for >500ms
according to the datasheet.
Since we can't read the EEPROM page size ixgbe_detect_eeprom_page_size() is
used to discover the EEPROM size when needed and keeps the result in
word_page_size for the rest of the run time.
Use buffered reads for ethtool -e.
Signed-off-by: Emil Tantilov <emil.s.tantilov@intel.com>
Tested-by: Evan Swanson <evan.swanson@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Diffstat (limited to 'lib/hweight.c')
0 files changed, 0 insertions, 0 deletions