Commit a3bb7b63 authored by Ivan Vecera's avatar Ivan Vecera Committed by Jakub Kicinski

ethtool: Fix get module eeprom fallback

Function fallback_set_params() checks if the module type returned
by a driver is ETH_MODULE_SFF_8079 and in this case it assumes
that buffer returns a concatenated content of page  A0h and A2h.
The check is wrong because the correct type is ETH_MODULE_SFF_8472.

Fixes: 96d971e3 ("ethtool: Add fallback to get_module_eeprom from netlink command")
Signed-off-by: default avatarIvan Vecera <ivecera@redhat.com>
Reviewed-by: default avatarIdo Schimmel <idosch@nvidia.com>
Link: https://lore.kernel.org/r/20220616160856.3623273-1-ivecera@redhat.comSigned-off-by: default avatarJakub Kicinski <kuba@kernel.org>
parent 7a9214f3
...@@ -36,7 +36,7 @@ static int fallback_set_params(struct eeprom_req_info *request, ...@@ -36,7 +36,7 @@ static int fallback_set_params(struct eeprom_req_info *request,
if (request->page) if (request->page)
offset = request->page * ETH_MODULE_EEPROM_PAGE_LEN + offset; offset = request->page * ETH_MODULE_EEPROM_PAGE_LEN + offset;
if (modinfo->type == ETH_MODULE_SFF_8079 && if (modinfo->type == ETH_MODULE_SFF_8472 &&
request->i2c_address == 0x51) request->i2c_address == 0x51)
offset += ETH_MODULE_EEPROM_PAGE_LEN * 2; offset += ETH_MODULE_EEPROM_PAGE_LEN * 2;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment