Lines Matching refs:mlx4_dev

827 	struct mlx4_dev	       *dev;
840 struct mlx4_dev { struct
996 static inline int mlx4_master_func_num(struct mlx4_dev *dev) in mlx4_master_func_num()
1001 static inline int mlx4_is_master(struct mlx4_dev *dev) in mlx4_is_master()
1006 static inline int mlx4_num_reserved_sqps(struct mlx4_dev *dev) in mlx4_num_reserved_sqps()
1012 static inline int mlx4_is_qp_reserved(struct mlx4_dev *dev, u32 qpn) in mlx4_is_qp_reserved()
1020 static inline int mlx4_is_guest_proxy(struct mlx4_dev *dev, int slave, u32 qpn) in mlx4_is_guest_proxy()
1030 static inline int mlx4_is_mfunc(struct mlx4_dev *dev) in mlx4_is_mfunc()
1035 static inline int mlx4_is_slave(struct mlx4_dev *dev) in mlx4_is_slave()
1040 static inline int mlx4_is_eth(struct mlx4_dev *dev, int port) in mlx4_is_eth()
1045 int mlx4_buf_alloc(struct mlx4_dev *dev, int size, int max_direct,
1047 void mlx4_buf_free(struct mlx4_dev *dev, int size, struct mlx4_buf *buf);
1057 int mlx4_pd_alloc(struct mlx4_dev *dev, u32 *pdn);
1058 void mlx4_pd_free(struct mlx4_dev *dev, u32 pdn);
1059 int mlx4_xrcd_alloc(struct mlx4_dev *dev, u32 *xrcdn);
1060 void mlx4_xrcd_free(struct mlx4_dev *dev, u32 xrcdn);
1062 int mlx4_uar_alloc(struct mlx4_dev *dev, struct mlx4_uar *uar);
1063 void mlx4_uar_free(struct mlx4_dev *dev, struct mlx4_uar *uar);
1064 int mlx4_bf_alloc(struct mlx4_dev *dev, struct mlx4_bf *bf, int node);
1065 void mlx4_bf_free(struct mlx4_dev *dev, struct mlx4_bf *bf);
1067 int mlx4_mtt_init(struct mlx4_dev *dev, int npages, int page_shift,
1069 void mlx4_mtt_cleanup(struct mlx4_dev *dev, struct mlx4_mtt *mtt);
1070 u64 mlx4_mtt_addr(struct mlx4_dev *dev, struct mlx4_mtt *mtt);
1072 int mlx4_mr_alloc(struct mlx4_dev *dev, u32 pd, u64 iova, u64 size, u32 access,
1074 int mlx4_mr_free(struct mlx4_dev *dev, struct mlx4_mr *mr);
1075 int mlx4_mr_enable(struct mlx4_dev *dev, struct mlx4_mr *mr);
1076 int mlx4_mw_alloc(struct mlx4_dev *dev, u32 pd, enum mlx4_mw_type type,
1078 void mlx4_mw_free(struct mlx4_dev *dev, struct mlx4_mw *mw);
1079 int mlx4_mw_enable(struct mlx4_dev *dev, struct mlx4_mw *mw);
1080 int mlx4_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt,
1082 int mlx4_buf_write_mtt(struct mlx4_dev *dev, struct mlx4_mtt *mtt,
1085 int mlx4_db_alloc(struct mlx4_dev *dev, struct mlx4_db *db, int order,
1087 void mlx4_db_free(struct mlx4_dev *dev, struct mlx4_db *db);
1089 int mlx4_alloc_hwq_res(struct mlx4_dev *dev, struct mlx4_hwq_resources *wqres,
1091 void mlx4_free_hwq_res(struct mlx4_dev *mdev, struct mlx4_hwq_resources *wqres,
1094 int mlx4_cq_alloc(struct mlx4_dev *dev, int nent, struct mlx4_mtt *mtt,
1097 void mlx4_cq_free(struct mlx4_dev *dev, struct mlx4_cq *cq);
1098 int mlx4_qp_reserve_range(struct mlx4_dev *dev, int cnt, int align,
1100 void mlx4_qp_release_range(struct mlx4_dev *dev, int base_qpn, int cnt);
1102 int mlx4_qp_alloc(struct mlx4_dev *dev, int qpn, struct mlx4_qp *qp,
1104 void mlx4_qp_free(struct mlx4_dev *dev, struct mlx4_qp *qp);
1106 int mlx4_srq_alloc(struct mlx4_dev *dev, u32 pdn, u32 cqn, u16 xrcdn,
1108 void mlx4_srq_free(struct mlx4_dev *dev, struct mlx4_srq *srq);
1109 int mlx4_srq_arm(struct mlx4_dev *dev, struct mlx4_srq *srq, int limit_watermark);
1110 int mlx4_srq_query(struct mlx4_dev *dev, struct mlx4_srq *srq, int *limit_watermark);
1112 int mlx4_INIT_PORT(struct mlx4_dev *dev, int port);
1113 int mlx4_CLOSE_PORT(struct mlx4_dev *dev, int port);
1115 int mlx4_unicast_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16],
1117 int mlx4_unicast_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16],
1119 int mlx4_multicast_attach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16],
1122 int mlx4_multicast_detach(struct mlx4_dev *dev, struct mlx4_qp *qp, u8 gid[16],
1331 int mlx4_flow_steer_promisc_add(struct mlx4_dev *dev, u8 port, u32 qpn,
1333 int mlx4_flow_steer_promisc_remove(struct mlx4_dev *dev, u8 port,
1335 int mlx4_multicast_promisc_add(struct mlx4_dev *dev, u32 qpn, u8 port);
1336 int mlx4_multicast_promisc_remove(struct mlx4_dev *dev, u32 qpn, u8 port);
1337 int mlx4_unicast_promisc_add(struct mlx4_dev *dev, u32 qpn, u8 port);
1338 int mlx4_unicast_promisc_remove(struct mlx4_dev *dev, u32 qpn, u8 port);
1339 int mlx4_SET_MCAST_FLTR(struct mlx4_dev *dev, u8 port, u64 mac, u64 clear, u8 mode);
1341 int mlx4_register_mac(struct mlx4_dev *dev, u8 port, u64 mac);
1342 void mlx4_unregister_mac(struct mlx4_dev *dev, u8 port, u64 mac);
1343 int mlx4_get_base_qpn(struct mlx4_dev *dev, u8 port);
1344 int __mlx4_replace_mac(struct mlx4_dev *dev, u8 port, int qpn, u64 new_mac);
1345 int mlx4_SET_PORT_general(struct mlx4_dev *dev, u8 port, int mtu,
1347 int mlx4_SET_PORT_qpn_calc(struct mlx4_dev *dev, u8 port, u32 base_qpn,
1349 int mlx4_SET_PORT_BEACON(struct mlx4_dev *dev, u8 port, u16 time);
1350 int mlx4_SET_PORT_fcs_check(struct mlx4_dev *dev, u8 port,
1352 int mlx4_SET_PORT_VXLAN(struct mlx4_dev *dev, u8 port, u8 steering, int enable);
1353 int set_phv_bit(struct mlx4_dev *dev, u8 port, int new_val);
1354 int get_phv_bit(struct mlx4_dev *dev, u8 port, int *phv);
1355 int mlx4_find_cached_mac(struct mlx4_dev *dev, u8 port, u64 mac, int *idx);
1356 int mlx4_find_cached_vlan(struct mlx4_dev *dev, u8 port, u16 vid, int *idx);
1357 int mlx4_register_vlan(struct mlx4_dev *dev, u8 port, u16 vlan, int *index);
1358 void mlx4_unregister_vlan(struct mlx4_dev *dev, u8 port, u16 vlan);
1360 int mlx4_map_phys_fmr(struct mlx4_dev *dev, struct mlx4_fmr *fmr, u64 *page_list,
1362 int mlx4_fmr_alloc(struct mlx4_dev *dev, u32 pd, u32 access, int max_pages,
1364 int mlx4_fmr_enable(struct mlx4_dev *dev, struct mlx4_fmr *fmr);
1365 void mlx4_fmr_unmap(struct mlx4_dev *dev, struct mlx4_fmr *fmr,
1367 int mlx4_fmr_free(struct mlx4_dev *dev, struct mlx4_fmr *fmr);
1368 int mlx4_SYNC_TPT(struct mlx4_dev *dev);
1369 int mlx4_test_interrupts(struct mlx4_dev *dev);
1370 u32 mlx4_get_eqs_per_port(struct mlx4_dev *dev, u8 port);
1371 bool mlx4_is_eq_vector_valid(struct mlx4_dev *dev, u8 port, int vector);
1372 struct cpu_rmap *mlx4_get_cpu_rmap(struct mlx4_dev *dev, int port);
1373 int mlx4_assign_eq(struct mlx4_dev *dev, u8 port, int *vector);
1374 void mlx4_release_eq(struct mlx4_dev *dev, int vec);
1376 int mlx4_is_eq_shared(struct mlx4_dev *dev, int vector);
1377 int mlx4_eq_get_irq(struct mlx4_dev *dev, int vec);
1379 int mlx4_get_phys_port_id(struct mlx4_dev *dev);
1380 int mlx4_wol_read(struct mlx4_dev *dev, u64 *config, int port);
1381 int mlx4_wol_write(struct mlx4_dev *dev, u64 config, int port);
1383 int mlx4_counter_alloc(struct mlx4_dev *dev, u32 *idx);
1384 void mlx4_counter_free(struct mlx4_dev *dev, u32 idx);
1385 int mlx4_get_default_counter_index(struct mlx4_dev *dev, int port);
1387 void mlx4_set_admin_guid(struct mlx4_dev *dev, __be64 guid, int entry,
1389 __be64 mlx4_get_admin_guid(struct mlx4_dev *dev, int entry, int port);
1390 void mlx4_set_random_admin_guid(struct mlx4_dev *dev, int entry, int port);
1391 int mlx4_flow_attach(struct mlx4_dev *dev,
1393 int mlx4_flow_detach(struct mlx4_dev *dev, u64 reg_id);
1394 int mlx4_map_sw_to_hw_steering_mode(struct mlx4_dev *dev,
1396 int mlx4_map_sw_to_hw_steering_id(struct mlx4_dev *dev,
1398 int mlx4_hw_rule_sz(struct mlx4_dev *dev, enum mlx4_net_trans_rule_id id);
1400 int mlx4_tunnel_steer_add(struct mlx4_dev *dev, unsigned char *addr,
1403 void mlx4_sync_pkey_table(struct mlx4_dev *dev, int slave, int port,
1406 int mlx4_get_parav_qkey(struct mlx4_dev *dev, u32 qpn, u32 *qkey);
1408 int mlx4_is_slave_active(struct mlx4_dev *dev, int slave);
1409 int mlx4_gen_pkey_eqe(struct mlx4_dev *dev, int slave, u8 port);
1410 int mlx4_gen_guid_change_eqe(struct mlx4_dev *dev, int slave, u8 port);
1411 int mlx4_gen_slaves_port_mgt_ev(struct mlx4_dev *dev, u8 port, int attr);
1412 int mlx4_gen_port_state_change_eqe(struct mlx4_dev *dev, int slave, u8 port, u8 port_subtype_change…
1413 enum slave_port_state mlx4_get_slave_port_state(struct mlx4_dev *dev, int slave, u8 port);
1414 int set_and_calc_slave_port_state(struct mlx4_dev *dev, int slave, u8 port, int event, enum slave_p…
1416 void mlx4_put_slave_node_guid(struct mlx4_dev *dev, int slave, __be64 guid);
1417 __be64 mlx4_get_slave_node_guid(struct mlx4_dev *dev, int slave);
1419 int mlx4_get_slave_from_roce_gid(struct mlx4_dev *dev, int port, u8 *gid,
1421 int mlx4_get_roce_gid_from_slave(struct mlx4_dev *dev, int port, int slave_id,
1424 int mlx4_FLOW_STEERING_IB_UC_QP_RANGE(struct mlx4_dev *dev, u32 min_range_qpn,
1427 cycle_t mlx4_read_clock(struct mlx4_dev *dev);
1433 struct mlx4_active_ports mlx4_get_active_ports(struct mlx4_dev *dev, int slave);
1438 int mlx4_slave_convert_port(struct mlx4_dev *dev, int slave, int port);
1444 struct mlx4_slaves_pport mlx4_phys_to_slaves_pport(struct mlx4_dev *dev,
1450 struct mlx4_dev *dev,
1454 int mlx4_phys_to_slave_port(struct mlx4_dev *dev, int slave, int port);
1456 int mlx4_get_base_gid_ix(struct mlx4_dev *dev, int slave, int port);
1458 int mlx4_config_vxlan_port(struct mlx4_dev *dev, __be16 udp_port);
1459 int mlx4_disable_rx_port_check(struct mlx4_dev *dev, bool dis);
1460 int mlx4_virt2phy_port_map(struct mlx4_dev *dev, u32 port1, u32 port2);
1461 int mlx4_vf_smi_enabled(struct mlx4_dev *dev, int slave, int port);
1462 int mlx4_vf_get_enable_smi_admin(struct mlx4_dev *dev, int slave, int port);
1463 int mlx4_vf_set_enable_smi_admin(struct mlx4_dev *dev, int slave, int port,
1465 int mlx4_mr_hw_get_mpt(struct mlx4_dev *dev, struct mlx4_mr *mmr,
1467 int mlx4_mr_hw_write_mpt(struct mlx4_dev *dev, struct mlx4_mr *mmr,
1469 int mlx4_mr_hw_change_pd(struct mlx4_dev *dev, struct mlx4_mpt_entry *mpt_entry,
1471 int mlx4_mr_hw_change_access(struct mlx4_dev *dev,
1474 void mlx4_mr_hw_put_mpt(struct mlx4_dev *dev,
1476 void mlx4_mr_rereg_mem_cleanup(struct mlx4_dev *dev, struct mlx4_mr *mr);
1477 int mlx4_mr_rereg_mem_write(struct mlx4_dev *dev, struct mlx4_mr *mr,
1481 int mlx4_get_module_info(struct mlx4_dev *dev, u8 port,
1523 int mlx4_ACCESS_PTYS_REG(struct mlx4_dev *dev,
1527 int mlx4_get_internal_clock_params(struct mlx4_dev *dev,