Lines Matching refs:mlx5_core_dev
217 struct mlx5_core_dev *dev;
412 struct mlx5_core_dev *mdev;
479 struct mlx5_core_dev *dev;
564 struct mlx5_core_dev *mdev;
644 struct mlx5_core_dev *parent_mdev;
780 struct mlx5_core_dev { struct
934 static inline u16 fw_rev_maj(struct mlx5_core_dev *dev) in fw_rev_maj()
939 static inline u16 fw_rev_min(struct mlx5_core_dev *dev) in fw_rev_min()
944 static inline u16 fw_rev_sub(struct mlx5_core_dev *dev) in fw_rev_sub()
1003 void mlx5_cmd_use_events(struct mlx5_core_dev *dev);
1004 void mlx5_cmd_use_polling(struct mlx5_core_dev *dev);
1005 void mlx5_cmd_allowed_opcode(struct mlx5_core_dev *dev, u16 opcode);
1008 struct mlx5_core_dev *dev;
1025 void mlx5_cmd_init_async_ctx(struct mlx5_core_dev *dev,
1031 void mlx5_cmd_out_err(struct mlx5_core_dev *dev, u16 opcode, u16 op_mod, void *out);
1032 int mlx5_cmd_do(struct mlx5_core_dev *dev, void *in, int in_size, void *out, int out_size);
1033 int mlx5_cmd_check(struct mlx5_core_dev *dev, int err, void *in, void *out);
1034 int mlx5_cmd_exec(struct mlx5_core_dev *dev, void *in, int in_size, void *out,
1049 int mlx5_cmd_exec_polling(struct mlx5_core_dev *dev, void *in, int in_size,
1051 bool mlx5_cmd_is_down(struct mlx5_core_dev *dev);
1053 void mlx5_core_uplink_netdev_set(struct mlx5_core_dev *mdev, struct net_device *netdev);
1054 void mlx5_core_uplink_netdev_event_replay(struct mlx5_core_dev *mdev);
1056 void mlx5_core_mp_event_replay(struct mlx5_core_dev *dev, u32 event, void *data);
1058 void mlx5_health_cleanup(struct mlx5_core_dev *dev);
1059 int mlx5_health_init(struct mlx5_core_dev *dev);
1060 void mlx5_start_health_poll(struct mlx5_core_dev *dev);
1061 void mlx5_stop_health_poll(struct mlx5_core_dev *dev, bool disable_health);
1062 void mlx5_start_health_fw_log_up(struct mlx5_core_dev *dev);
1063 void mlx5_drain_health_wq(struct mlx5_core_dev *dev);
1064 void mlx5_trigger_health_work(struct mlx5_core_dev *dev);
1065 int mlx5_frag_buf_alloc_node(struct mlx5_core_dev *dev, int size,
1067 void mlx5_frag_buf_free(struct mlx5_core_dev *dev, struct mlx5_frag_buf *buf);
1068 int mlx5_core_create_mkey(struct mlx5_core_dev *dev, u32 *mkey, u32 *in,
1070 int mlx5_core_destroy_mkey(struct mlx5_core_dev *dev, u32 mkey);
1071 int mlx5_core_query_mkey(struct mlx5_core_dev *dev, u32 mkey, u32 *out,
1073 int mlx5_core_alloc_pd(struct mlx5_core_dev *dev, u32 *pdn);
1074 int mlx5_core_dealloc_pd(struct mlx5_core_dev *dev, u32 pdn);
1075 int mlx5_pagealloc_init(struct mlx5_core_dev *dev);
1076 void mlx5_pagealloc_cleanup(struct mlx5_core_dev *dev);
1077 void mlx5_pagealloc_start(struct mlx5_core_dev *dev);
1078 void mlx5_pagealloc_stop(struct mlx5_core_dev *dev);
1079 void mlx5_pages_debugfs_init(struct mlx5_core_dev *dev);
1080 void mlx5_pages_debugfs_cleanup(struct mlx5_core_dev *dev);
1081 int mlx5_satisfy_startup_pages(struct mlx5_core_dev *dev, int boot);
1082 int mlx5_reclaim_startup_pages(struct mlx5_core_dev *dev);
1088 int mlx5_comp_eqn_get(struct mlx5_core_dev *dev, u16 vecidx, int *eqn);
1089 int mlx5_core_attach_mcg(struct mlx5_core_dev *dev, union ib_gid *mgid, u32 qpn);
1090 int mlx5_core_detach_mcg(struct mlx5_core_dev *dev, union ib_gid *mgid, u32 qpn);
1092 struct dentry *mlx5_debugfs_get_dev_root(struct mlx5_core_dev *dev);
1093 void mlx5_qp_debugfs_init(struct mlx5_core_dev *dev);
1094 void mlx5_qp_debugfs_cleanup(struct mlx5_core_dev *dev);
1095 int mlx5_access_reg(struct mlx5_core_dev *dev, void *data_in, int size_in,
1098 int mlx5_core_access_reg(struct mlx5_core_dev *dev, void *data_in,
1102 int mlx5_db_alloc_node(struct mlx5_core_dev *dev, struct mlx5_db *db,
1105 static inline int mlx5_db_alloc(struct mlx5_core_dev *dev, struct mlx5_db *db) in mlx5_db_alloc()
1110 void mlx5_db_free(struct mlx5_core_dev *dev, struct mlx5_db *db);
1113 void mlx5_cmdif_debugfs_init(struct mlx5_core_dev *dev);
1114 void mlx5_cmdif_debugfs_cleanup(struct mlx5_core_dev *dev);
1115 int mlx5_core_create_psv(struct mlx5_core_dev *dev, u32 pdn,
1117 int mlx5_core_destroy_psv(struct mlx5_core_dev *dev, int psv_num);
1118 __be32 mlx5_core_get_terminate_scatter_list_mkey(struct mlx5_core_dev *dev);
1121 int mlx5_init_rl_table(struct mlx5_core_dev *dev);
1122 void mlx5_cleanup_rl_table(struct mlx5_core_dev *dev);
1123 int mlx5_rl_add_rate(struct mlx5_core_dev *dev, u16 *index,
1125 void mlx5_rl_remove_rate(struct mlx5_core_dev *dev, struct mlx5_rate_limit *rl);
1126 bool mlx5_rl_is_in_range(struct mlx5_core_dev *dev, u32 rate);
1127 int mlx5_rl_add_rate_raw(struct mlx5_core_dev *dev, void *rl_in, u16 uid,
1129 void mlx5_rl_remove_rate_raw(struct mlx5_core_dev *dev, u16 index);
1132 int mlx5_alloc_bfreg(struct mlx5_core_dev *mdev, struct mlx5_sq_bfreg *bfreg,
1134 void mlx5_free_bfreg(struct mlx5_core_dev *mdev, struct mlx5_sq_bfreg *bfreg);
1136 unsigned int mlx5_comp_vectors_max(struct mlx5_core_dev *dev);
1137 int mlx5_comp_vector_get_cpu(struct mlx5_core_dev *dev, int vector);
1138 unsigned int mlx5_core_reserved_gids_count(struct mlx5_core_dev *dev);
1139 int mlx5_core_roce_gid_set(struct mlx5_core_dev *dev, unsigned int index,
1162 int mlx5_notifier_register(struct mlx5_core_dev *dev, struct notifier_block *nb);
1163 int mlx5_notifier_unregister(struct mlx5_core_dev *dev, struct notifier_block *nb);
1169 int mlx5_eq_notifier_register(struct mlx5_core_dev *dev, struct mlx5_nb *nb);
1170 int mlx5_eq_notifier_unregister(struct mlx5_core_dev *dev, struct mlx5_nb *nb);
1173 int mlx5_blocking_notifier_register(struct mlx5_core_dev *dev, struct notifier_block *nb);
1174 int mlx5_blocking_notifier_unregister(struct mlx5_core_dev *dev, struct notifier_block *nb);
1175 int mlx5_blocking_notifier_call_chain(struct mlx5_core_dev *dev, unsigned int event,
1178 int mlx5_core_query_vendor_id(struct mlx5_core_dev *mdev, u32 *vendor_id);
1180 int mlx5_cmd_create_vport_lag(struct mlx5_core_dev *dev);
1181 int mlx5_cmd_destroy_vport_lag(struct mlx5_core_dev *dev);
1182 bool mlx5_lag_is_roce(struct mlx5_core_dev *dev);
1183 bool mlx5_lag_is_sriov(struct mlx5_core_dev *dev);
1184 bool mlx5_lag_is_active(struct mlx5_core_dev *dev);
1185 bool mlx5_lag_mode_is_hash(struct mlx5_core_dev *dev);
1186 bool mlx5_lag_is_master(struct mlx5_core_dev *dev);
1187 bool mlx5_lag_is_shared_fdb(struct mlx5_core_dev *dev);
1188 bool mlx5_lag_is_mpesw(struct mlx5_core_dev *dev);
1189 u8 mlx5_lag_get_slave_port(struct mlx5_core_dev *dev,
1191 int mlx5_lag_query_cong_counters(struct mlx5_core_dev *dev,
1195 struct mlx5_core_dev *mlx5_lag_get_next_peer_mdev(struct mlx5_core_dev *dev, int *i);
1202 u8 mlx5_lag_get_num_ports(struct mlx5_core_dev *dev);
1203 struct mlx5_uars_page *mlx5_get_uars_page(struct mlx5_core_dev *mdev);
1204 void mlx5_put_uars_page(struct mlx5_core_dev *mdev, struct mlx5_uars_page *up);
1205 int mlx5_dm_sw_icm_alloc(struct mlx5_core_dev *dev, enum mlx5_sw_icm_type type,
1208 int mlx5_dm_sw_icm_dealloc(struct mlx5_core_dev *dev, enum mlx5_sw_icm_type type,
1211 struct mlx5_core_dev *mlx5_vf_get_core_dev(struct pci_dev *pdev);
1212 void mlx5_vf_put_core_dev(struct mlx5_core_dev *mdev);
1214 int mlx5_sriov_blocking_notifier_register(struct mlx5_core_dev *mdev,
1217 void mlx5_sriov_blocking_notifier_unregister(struct mlx5_core_dev *mdev,
1220 int mlx5_rdma_rn_get_params(struct mlx5_core_dev *mdev,
1228 static inline bool mlx5_core_is_pf(const struct mlx5_core_dev *dev) in mlx5_core_is_pf()
1233 static inline bool mlx5_core_is_vf(const struct mlx5_core_dev *dev) in mlx5_core_is_vf()
1238 static inline bool mlx5_core_same_coredev_type(const struct mlx5_core_dev *dev1, in mlx5_core_same_coredev_type()
1239 const struct mlx5_core_dev *dev2) in mlx5_core_same_coredev_type()
1244 static inline bool mlx5_core_is_ecpf(const struct mlx5_core_dev *dev) in mlx5_core_is_ecpf()
1250 mlx5_core_is_ecpf_esw_manager(const struct mlx5_core_dev *dev) in mlx5_core_is_ecpf_esw_manager()
1255 static inline bool mlx5_ecpf_vport_exists(const struct mlx5_core_dev *dev) in mlx5_ecpf_vport_exists()
1260 static inline u16 mlx5_core_max_vfs(const struct mlx5_core_dev *dev) in mlx5_core_max_vfs()
1265 static inline int mlx5_lag_is_lacp_owner(struct mlx5_core_dev *dev) in mlx5_lag_is_lacp_owner()
1277 static inline u16 mlx5_core_max_ec_vfs(const struct mlx5_core_dev *dev) in mlx5_core_max_ec_vfs()
1292 static inline bool mlx5_rl_is_supported(struct mlx5_core_dev *dev) in mlx5_rl_is_supported()
1297 static inline int mlx5_core_is_mp_slave(struct mlx5_core_dev *dev) in mlx5_core_is_mp_slave()
1303 static inline int mlx5_core_is_mp_master(struct mlx5_core_dev *dev) in mlx5_core_is_mp_master()
1308 static inline int mlx5_core_mp_enabled(struct mlx5_core_dev *dev) in mlx5_core_mp_enabled()
1314 static inline int mlx5_core_native_port_num(struct mlx5_core_dev *dev) in mlx5_core_native_port_num()
1322 static inline int mlx5_get_dev_index(struct mlx5_core_dev *dev) in mlx5_get_dev_index()
1336 bool mlx5_is_roce_on(struct mlx5_core_dev *dev);
1338 static inline bool mlx5_get_roce_state(struct mlx5_core_dev *dev) in mlx5_get_roce_state()
1350 static inline bool mlx5e_is_macsec_device(const struct mlx5_core_dev *mdev) in mlx5e_is_macsec_device()
1383 static inline bool mlx5_is_macsec_roce_supported(struct mlx5_core_dev *mdev) in mlx5_is_macsec_roce_supported()
1399 bool mlx5_wc_support_get(struct mlx5_core_dev *mdev);