summaryrefslogtreecommitdiff
path: root/drivers/net/ethernet/pensando/ionic/ionic_if.h
diff options
context:
space:
mode:
authorShannon Nelson <shannon.nelson@amd.com>2025-04-15 16:13:16 -0700
committerPaolo Abeni <pabeni@redhat.com>2025-04-22 12:27:30 +0200
commit0651c83ea96c4cff739ba9a71a7b7271219700b4 (patch)
tree8a2ab854444b75efe812aa93fdce0fcb95aa2c6d /drivers/net/ethernet/pensando/ionic/ionic_if.h
parent9c2e17d30b65a940e7d72ce67f2102d0084a93bf (diff)
downloadlinux-next-0651c83ea96c4cff739ba9a71a7b7271219700b4.tar.gz
linux-next-0651c83ea96c4cff739ba9a71a7b7271219700b4.zip
ionic: add module eeprom channel data to ionic_if and ethtool
Make the CMIS module type's page 17 channel data available for ethtool to request. As done previously, carve space for this data from the port_info reserved space. In the future, if additional pages are needed, a new firmware AdminQ command will be added for accessing random pages. 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-4-shannon.nelson@amd.com Signed-off-by: Paolo Abeni <pabeni@redhat.com>
Diffstat (limited to 'drivers/net/ethernet/pensando/ionic/ionic_if.h')
-rw-r--r--drivers/net/ethernet/pensando/ionic/ionic_if.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/net/ethernet/pensando/ionic/ionic_if.h b/drivers/net/ethernet/pensando/ionic/ionic_if.h
index 23218208b711..f1ddbe9994a3 100644
--- a/drivers/net/ethernet/pensando/ionic/ionic_if.h
+++ b/drivers/net/ethernet/pensando/ionic/ionic_if.h
@@ -2842,6 +2842,7 @@ union ionic_port_identity {
* @sprom_epage: Extended Transceiver sprom
* @sprom_page1: Extended Transceiver sprom, page 1
* @sprom_page2: Extended Transceiver sprom, page 2
+ * @sprom_page17: Extended Transceiver sprom, page 17
* @rsvd: reserved byte(s)
* @pb_stats: uplink pb drop stats
*/
@@ -2853,13 +2854,14 @@ struct ionic_port_info {
struct ionic_mgmt_port_stats mgmt_stats;
};
union {
- u8 sprom_epage[256];
+ u8 sprom_epage[384];
struct {
u8 sprom_page1[128];
u8 sprom_page2[128];
+ u8 sprom_page17[128];
};
};
- u8 rsvd[504];
+ u8 rsvd[376];
/* pb_stats must start at 2k offset */
struct ionic_port_pb_stats pb_stats;