diff options
author | Nikolay Aleksandrov <nikolay@nvidia.com> | 2021-02-10 22:43:31 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2021-02-11 14:28:21 -0800 |
commit | ab73447c38e4f335279d56bd5e688ce601092f50 (patch) | |
tree | 509ecc13fcc9b45d3fd8d1826749a24adb133ad5 /drivers/net/bonding | |
parent | 6bda2f6faed8ca1bb4b01616d190f9575a0748a0 (diff) |
bonding: 3ad: add support for 200G speed
In order to be able to use 3ad mode with 200G devices we need to extend
the supported speeds.
Signed-off-by: Nikolay Aleksandrov <nikolay@nvidia.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'drivers/net/bonding')
-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 aa001b16765a..390e877419f3 100644 --- a/drivers/net/bonding/bond_3ad.c +++ b/drivers/net/bonding/bond_3ad.c @@ -73,6 +73,7 @@ enum ad_link_speed_type { AD_LINK_SPEED_50000MBPS, AD_LINK_SPEED_56000MBPS, AD_LINK_SPEED_100000MBPS, + AD_LINK_SPEED_200000MBPS, }; /* compare MAC addresses */ @@ -245,6 +246,7 @@ static inline int __check_agg_selection_timer(struct port *port) * %AD_LINK_SPEED_50000MBPS * %AD_LINK_SPEED_56000MBPS * %AD_LINK_SPEED_100000MBPS + * %AD_LINK_SPEED_200000MBPS */ static u16 __get_link_speed(struct port *port) { @@ -312,6 +314,10 @@ static u16 __get_link_speed(struct port *port) speed = AD_LINK_SPEED_100000MBPS; break; + case SPEED_200000: + speed = AD_LINK_SPEED_200000MBPS; + break; + default: /* unknown speed value from ethtool. shouldn't happen */ if (slave->speed != SPEED_UNKNOWN) @@ -733,6 +739,9 @@ static u32 __get_agg_bandwidth(struct aggregator *aggregator) case AD_LINK_SPEED_100000MBPS: bandwidth = nports * 100000; break; + case AD_LINK_SPEED_200000MBPS: + bandwidth = nports * 200000; + break; default: bandwidth = 0; /* to silence the compiler */ } |