diff options
| author | Yael Chemla <ychemla@nvidia.com> | 2025-11-19 22:48:17 +0200 |
|---|---|---|
| committer | Jakub Kicinski <kuba@kernel.org> | 2025-11-20 18:21:30 -0800 |
| commit | 5fb9a0b89e2ab959547cd684f497bd31bcb3261f (patch) | |
| tree | cb0776cba59872b08cc2204327ee4587720cccea | |
| parent | be3a435df74b3e84037fcc23ade68e01c4ed541f (diff) | |
bonding: 3ad: Add support for 1600G speed
Add support for 1600Gbps speed to allow using 3ad mode with 1600G
devices.
Signed-off-by: Yael Chemla <ychemla@nvidia.com>
Reviewed-by: Shahar Shitrit <shshitrit@nvidia.com>
Signed-off-by: Tariq Toukan <tariqt@nvidia.com>
Link: https://patch.msgid.link/1763585297-1243980-4-git-send-email-tariqt@nvidia.com
Signed-off-by: Jakub Kicinski <kuba@kernel.org>
| -rw-r--r-- | drivers/net/bonding/bond_3ad.c | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/drivers/net/bonding/bond_3ad.c b/drivers/net/bonding/bond_3ad.c index 49717b7b82a2..1a8de2bf8655 100644 --- a/drivers/net/bonding/bond_3ad.c +++ b/drivers/net/bonding/bond_3ad.c @@ -76,6 +76,7 @@ enum ad_link_speed_type { AD_LINK_SPEED_200000MBPS, AD_LINK_SPEED_400000MBPS, AD_LINK_SPEED_800000MBPS, + AD_LINK_SPEED_1600000MBPS, }; /* compare MAC addresses */ @@ -300,6 +301,7 @@ static inline int __check_agg_selection_timer(struct port *port) * %AD_LINK_SPEED_200000MBPS * %AD_LINK_SPEED_400000MBPS * %AD_LINK_SPEED_800000MBPS + * %AD_LINK_SPEED_1600000MBPS */ static u16 __get_link_speed(struct port *port) { @@ -379,6 +381,10 @@ static u16 __get_link_speed(struct port *port) speed = AD_LINK_SPEED_800000MBPS; break; + case SPEED_1600000: + speed = AD_LINK_SPEED_1600000MBPS; + break; + default: /* unknown speed value from ethtool. shouldn't happen */ if (slave->speed != SPEED_UNKNOWN) @@ -822,6 +828,9 @@ static u32 __get_agg_bandwidth(struct aggregator *aggregator) case AD_LINK_SPEED_800000MBPS: bandwidth = nports * 800000; break; + case AD_LINK_SPEED_1600000MBPS: + bandwidth = nports * 1600000; + break; default: bandwidth = 0; /* to silence the compiler */ } |
