]> www.infradead.org Git - users/jedix/linux-maple.git/commit
ionic: extend the QSFP module sprom for more pages
authorShannon Nelson <shannon.nelson@amd.com>
Tue, 15 Apr 2025 23:13:14 +0000 (16:13 -0700)
committerPaolo Abeni <pabeni@redhat.com>
Tue, 22 Apr 2025 10:27:30 +0000 (12:27 +0200)
commitc51ab838f5323a375b7f7334644456b23e7532ca
tree764c18040f033be242bb9cd58121b01a77493fa4
parent30af0cb3106ee011756533da55f0ea1aa37d654b
ionic: extend the QSFP module sprom for more pages

Some QSFP modules have more eeprom to be read by ethtool than
the initial high and low page 0 that is currently available
in the DSC's ionic sprom[] buffer.  Since the current sprom[]
is baked into the middle of an existing API struct, to make
the high end of page 1 and page 2 available a block is carved
from a reserved space of the existing port_info struct and the
ionic_get_module_eeprom() service is taught how to get there.

Newer firmware writes the additional QSFP page info here,
yet this remains backward compatible because older firmware
sets this space to all 0 and older ionic drivers do not use
the reserved space.

Reviewed-by: Brett Creeley <brett.creeley@amd.com>
Signed-off-by: Shannon Nelson <shannon.nelson@amd.com>
Reviewed-by: Simon Horman <horms@kernel.org>
Link: https://patch.msgid.link/20250415231317.40616-2-shannon.nelson@amd.com
Signed-off-by: Paolo Abeni <pabeni@redhat.com>
drivers/net/ethernet/pensando/ionic/ionic_ethtool.c
drivers/net/ethernet/pensando/ionic/ionic_if.h