Skip to content

Commit 9137b3a

Browse files
committed
ionic: add module eeprom channel data to ionic_if and ethtool
JIRA: https://issues.redhat.com/browse/RHEL-88152 commit 0651c83 Author: Shannon Nelson <shannon.nelson@amd.com> Date: Tue Apr 15 16:13:16 2025 -0700 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> Signed-off-by: Mohammad Heib <mheib@redhat.com>
1 parent 01a6185 commit 9137b3a

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

drivers/net/ethernet/pensando/ionic/ionic_ethtool.c

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -999,6 +999,9 @@ static int ionic_get_module_eeprom_by_page(struct net_device *netdev,
999999
case 2:
10001000
src = &idev->port_info->sprom_page2[page_data->offset - 128];
10011001
break;
1002+
case 17:
1003+
src = &idev->port_info->sprom_page17[page_data->offset - 128];
1004+
break;
10021005
default:
10031006
return -EOPNOTSUPP;
10041007
}

drivers/net/ethernet/pensando/ionic/ionic_if.h

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -2842,6 +2842,7 @@ union ionic_port_identity {
28422842
* @sprom_epage: Extended Transceiver sprom
28432843
* @sprom_page1: Extended Transceiver sprom, page 1
28442844
* @sprom_page2: Extended Transceiver sprom, page 2
2845+
* @sprom_page17: Extended Transceiver sprom, page 17
28452846
* @rsvd: reserved byte(s)
28462847
* @pb_stats: uplink pb drop stats
28472848
*/
@@ -2853,13 +2854,14 @@ struct ionic_port_info {
28532854
struct ionic_mgmt_port_stats mgmt_stats;
28542855
};
28552856
union {
2856-
u8 sprom_epage[256];
2857+
u8 sprom_epage[384];
28572858
struct {
28582859
u8 sprom_page1[128];
28592860
u8 sprom_page2[128];
2861+
u8 sprom_page17[128];
28602862
};
28612863
};
2862-
u8 rsvd[504];
2864+
u8 rsvd[376];
28632865

28642866
/* pb_stats must start at 2k offset */
28652867
struct ionic_port_pb_stats pb_stats;

0 commit comments

Comments
 (0)