1 #ifndef MLX_LINK_SPEED_H_ 2 #define MLX_LINK_SPEED_H_ 25 #include "../../mlx_lib/mlx_reg_access/mlx_reg_access.h" 26 #include "../../include/public/mlx_utils.h" 28 #define LINK_SPEED_100GB_MASK (ETH_SPEED_ENABLE_MASK_100GBASECR4 | ETH_SPEED_ENABLE_MASK_100GBASESR4 | ETH_SPEED_ENABLE_MASK_100GBASEKR4 | ETH_SPEED_ENABLE_MASK_100GBASELR4) 29 #define LINK_SPEED_56GB_MASK (ETH_SPEED_ENABLE_MASK_56GBASER4) 30 #define LINK_SPEED_50GB_MASK (ETH_SPEED_ENABLE_MASK_50GBASECR2 | ETH_SPEED_ENABLE_MASK_50GBASEKR2) 31 #define LINK_SPEED_40GB_MASK (ETH_SPEED_ENABLE_MASK_40GBASECR4 | ETH_SPEED_ENABLE_MASK_40GBASEKR4 | ETH_SPEED_ENABLE_MASK_40GBASESR4 | ETH_SPEED_ENABLE_MASK_40GBASELR4) 32 #define LINK_SPEED_25GB_MASK (ETH_SPEED_ENABLE_MASK_25GBASECR | ETH_SPEED_ENABLE_MASK_25GBASEKR | ETH_SPEED_ENABLE_MASK_25GBASESR) 33 #define LINK_SPEED_20GB_MASK (ETH_SPEED_ENABLE_MASK_20GBASER2) 34 #define LINK_SPEED_10GB_MASK (ETH_SPEED_ENABLE_MASK_10GBASECR | ETH_SPEED_ENABLE_MASK_10GBASESR | ETH_SPEED_ENABLE_MASK_10GBASELR | ETH_SPEED_ENABLE_MASK_10GBASEKR) 35 #define LINK_SPEED_1GB_MASK (ETH_SPEED_ENABLE_MASK_1000BASECX | ETH_SPEED_ENABLE_MASK_1000BASEKX | ETH_SPEED_ENABLE_MASK_100BaseTX | ETH_SPEED_ENABLE_MASK_1000BASET) 37 #define LINK_SPEED_SDR_MASK 0x1 38 #define LINK_SPEED_DDR_MASK 0x2 39 #define LINK_SPEED_QDR_MASK 0xC 40 #define LINK_SPEED_FDR_MASK 0x10 41 #define LINK_SPEED_EDR20_MASK 0x200 42 #define LINK_SPEED_EDR_MASK 0x20 44 #define LINK_SPEED_WITDH_1_MASK 0x1 45 #define LINK_SPEED_WITDH_2_MASK 0x2 46 #define LINK_SPEED_WITDH_4_MASK 0x4 47 #define LINK_SPEED_WITDH_8_MASK 0x8 48 #define LINK_SPEED_WITDH_12_MASK 0x10 50 #define GIGA_TO_BIT 0x40000000
mlx_status mlx_set_link_speed(IN mlx_utils *utils, IN mlx_uint8 port_num, IN LINK_SPEED_TYPE type, IN LINK_SPEED speed)
uint32_t type
Operating system type.
mlx_status mlx_get_max_speed(IN mlx_utils *utils, IN mlx_uint8 port_num, IN LINK_SPEED_TYPE type, OUT mlx_uint64 *speed)
mlx_uint32 ib_proto_admin
mlx_uint32 ib_link_width_admin
mlx_uint32 eth_proto_admin
mlx_uint32 ib_proto_capability
mlx_uint32 eth_proto_lp_advertise
mlx_uint32 eth_proto_capability
mlx_uint32 ib_link_width_capability
FILE_LICENCE(GPL2_OR_LATER)
mlx_uint32 ib_link_width_oper
mlx_uint32 eth_proto_oper