]> git.baikalelectronics.ru Git - kernel.git/commit
bnxt_en: Read phy eeprom A2h address only when optical diagnostics is supported.
authorVasundhara Volam <vasundhara-v.volam@broadcom.com>
Tue, 8 May 2018 07:18:40 +0000 (03:18 -0400)
committerDavid S. Miller <davem@davemloft.net>
Tue, 8 May 2018 14:14:21 +0000 (10:14 -0400)
commit0c116b5d3fde2b85d361ec3e5993002d04851367
tree8361ace48ff00c423e0722d69f3fa1e88ff155d3
parent35eb6000f72a26469953581000873ce2a55b839d
bnxt_en: Read phy eeprom A2h address only when optical diagnostics is supported.

For SFP+ modules, 0xA2 page is available only when Diagnostic Monitoring
Type [Address A0h, Byte 92] is implemented. Extend bnxt_get_module_info(),
to read optical diagnostics support at offset 92(0x5c) and set eeprom_len
length to ETH_MODULE_SFF_8436_LEN (to exclude A2 page), if dianostics is
not supported.

Also in bnxt_get_module_info(), module id is read from offset 0x5e which
is not correct. It was working by accident, as offset was not effective
without setting enables flag in the firmware request. SFP module id is
present at location 0. Fix this by removing the offset and read it
from location 0.

Signed-off-by: Vasundhara Volam <vasundhara-v.volam@broadcom.com>
Signed-off-by: Michael Chan <michael.chan@broadcom.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
drivers/net/ethernet/broadcom/bnxt/bnxt.h
drivers/net/ethernet/broadcom/bnxt/bnxt_ethtool.c