Lines Matching refs:mlx5_core_dev
137 struct mlx5_core_dev *dev;
301 struct mlx5_core_dev *dev;
505 struct mlx5_core_dev { struct
522 void (*event) (struct mlx5_core_dev *dev, argument
642 static inline struct mlx5_core_dev *pci2mlx5_core_dev(struct pci_dev *pdev) in pci2mlx5_core_dev()
649 static inline u16 fw_rev_maj(struct mlx5_core_dev *dev) in fw_rev_maj()
654 static inline u16 fw_rev_min(struct mlx5_core_dev *dev) in fw_rev_min()
659 static inline u16 fw_rev_sub(struct mlx5_core_dev *dev) in fw_rev_sub()
664 static inline u16 cmdif_rev(struct mlx5_core_dev *dev) in cmdif_rev()
684 int mlx5_cmd_init(struct mlx5_core_dev *dev);
685 void mlx5_cmd_cleanup(struct mlx5_core_dev *dev);
686 void mlx5_cmd_use_events(struct mlx5_core_dev *dev);
687 void mlx5_cmd_use_polling(struct mlx5_core_dev *dev);
690 int mlx5_core_get_caps(struct mlx5_core_dev *dev, enum mlx5_cap_type cap_type,
692 int mlx5_cmd_exec(struct mlx5_core_dev *dev, void *in, int in_size, void *out,
694 int mlx5_cmd_exec_cb(struct mlx5_core_dev *dev, void *in, int in_size,
697 int mlx5_cmd_alloc_uar(struct mlx5_core_dev *dev, u32 *uarn);
698 int mlx5_cmd_free_uar(struct mlx5_core_dev *dev, u32 uarn);
699 int mlx5_alloc_uuars(struct mlx5_core_dev *dev, struct mlx5_uuar_info *uuari);
700 int mlx5_free_uuars(struct mlx5_core_dev *dev, struct mlx5_uuar_info *uuari);
701 int mlx5_alloc_map_uar(struct mlx5_core_dev *mdev, struct mlx5_uar *uar);
702 void mlx5_unmap_free_uar(struct mlx5_core_dev *mdev, struct mlx5_uar *uar);
703 void mlx5_health_cleanup(struct mlx5_core_dev *dev);
704 int mlx5_health_init(struct mlx5_core_dev *dev);
705 void mlx5_start_health_poll(struct mlx5_core_dev *dev);
706 void mlx5_stop_health_poll(struct mlx5_core_dev *dev);
707 int mlx5_buf_alloc_node(struct mlx5_core_dev *dev, int size,
709 int mlx5_buf_alloc(struct mlx5_core_dev *dev, int size, struct mlx5_buf *buf);
710 void mlx5_buf_free(struct mlx5_core_dev *dev, struct mlx5_buf *buf);
711 struct mlx5_cmd_mailbox *mlx5_alloc_cmd_mailbox_chain(struct mlx5_core_dev *dev,
713 void mlx5_free_cmd_mailbox_chain(struct mlx5_core_dev *dev,
715 int mlx5_core_create_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq,
718 int mlx5_core_destroy_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq);
719 int mlx5_core_query_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq,
721 int mlx5_core_arm_srq(struct mlx5_core_dev *dev, struct mlx5_core_srq *srq,
723 void mlx5_init_mr_table(struct mlx5_core_dev *dev);
724 void mlx5_cleanup_mr_table(struct mlx5_core_dev *dev);
725 int mlx5_core_create_mkey(struct mlx5_core_dev *dev, struct mlx5_core_mr *mr,
729 int mlx5_core_destroy_mkey(struct mlx5_core_dev *dev, struct mlx5_core_mr *mr);
730 int mlx5_core_query_mkey(struct mlx5_core_dev *dev, struct mlx5_core_mr *mr,
732 int mlx5_core_dump_fill_mkey(struct mlx5_core_dev *dev, struct mlx5_core_mr *mr,
734 int mlx5_core_alloc_pd(struct mlx5_core_dev *dev, u32 *pdn);
735 int mlx5_core_dealloc_pd(struct mlx5_core_dev *dev, u32 pdn);
736 int mlx5_core_mad_ifc(struct mlx5_core_dev *dev, const void *inb, void *outb,
738 void mlx5_pagealloc_init(struct mlx5_core_dev *dev);
739 void mlx5_pagealloc_cleanup(struct mlx5_core_dev *dev);
740 int mlx5_pagealloc_start(struct mlx5_core_dev *dev);
741 void mlx5_pagealloc_stop(struct mlx5_core_dev *dev);
742 void mlx5_core_req_pages_handler(struct mlx5_core_dev *dev, u16 func_id,
744 int mlx5_satisfy_startup_pages(struct mlx5_core_dev *dev, int boot);
745 int mlx5_reclaim_startup_pages(struct mlx5_core_dev *dev);
748 int mlx5_eq_init(struct mlx5_core_dev *dev);
749 void mlx5_eq_cleanup(struct mlx5_core_dev *dev);
751 void mlx5_cq_completion(struct mlx5_core_dev *dev, u32 cqn);
752 void mlx5_rsc_event(struct mlx5_core_dev *dev, u32 rsn, int event_type);
754 void mlx5_eq_pagefault(struct mlx5_core_dev *dev, struct mlx5_eqe *eqe);
756 void mlx5_srq_event(struct mlx5_core_dev *dev, u32 srqn, int event_type);
757 struct mlx5_core_srq *mlx5_core_get_srq(struct mlx5_core_dev *dev, u32 srqn);
758 void mlx5_cmd_comp_handler(struct mlx5_core_dev *dev, u64 vec);
759 void mlx5_cq_event(struct mlx5_core_dev *dev, u32 cqn, int event_type);
760 int mlx5_create_map_eq(struct mlx5_core_dev *dev, struct mlx5_eq *eq, u8 vecidx,
762 int mlx5_destroy_unmap_eq(struct mlx5_core_dev *dev, struct mlx5_eq *eq);
763 int mlx5_start_eqs(struct mlx5_core_dev *dev);
764 int mlx5_stop_eqs(struct mlx5_core_dev *dev);
765 int mlx5_vector2eqn(struct mlx5_core_dev *dev, int vector, int *eqn,
767 int mlx5_core_attach_mcg(struct mlx5_core_dev *dev, union ib_gid *mgid, u32 qpn);
768 int mlx5_core_detach_mcg(struct mlx5_core_dev *dev, union ib_gid *mgid, u32 qpn);
770 int mlx5_qp_debugfs_init(struct mlx5_core_dev *dev);
771 void mlx5_qp_debugfs_cleanup(struct mlx5_core_dev *dev);
772 int mlx5_core_access_reg(struct mlx5_core_dev *dev, void *data_in,
776 int mlx5_set_port_caps(struct mlx5_core_dev *dev, u8 port_num, u32 caps);
777 int mlx5_query_port_ptys(struct mlx5_core_dev *dev, u32 *ptys,
779 int mlx5_query_port_proto_cap(struct mlx5_core_dev *dev,
781 int mlx5_query_port_proto_admin(struct mlx5_core_dev *dev,
783 int mlx5_query_port_link_width_oper(struct mlx5_core_dev *dev,
785 int mlx5_query_port_proto_oper(struct mlx5_core_dev *dev,
788 int mlx5_set_port_proto(struct mlx5_core_dev *dev, u32 proto_admin,
790 int mlx5_set_port_admin_status(struct mlx5_core_dev *dev,
792 int mlx5_query_port_admin_status(struct mlx5_core_dev *dev,
795 int mlx5_set_port_mtu(struct mlx5_core_dev *dev, u16 mtu, u8 port);
796 void mlx5_query_port_max_mtu(struct mlx5_core_dev *dev, u16 *max_mtu, u8 port);
797 void mlx5_query_port_oper_mtu(struct mlx5_core_dev *dev, u16 *oper_mtu,
800 int mlx5_query_port_vl_hw_cap(struct mlx5_core_dev *dev,
803 int mlx5_set_port_pause(struct mlx5_core_dev *dev, u32 rx_pause, u32 tx_pause);
804 int mlx5_query_port_pause(struct mlx5_core_dev *dev,
807 int mlx5_debug_eq_add(struct mlx5_core_dev *dev, struct mlx5_eq *eq);
808 void mlx5_debug_eq_remove(struct mlx5_core_dev *dev, struct mlx5_eq *eq);
809 int mlx5_core_eq_query(struct mlx5_core_dev *dev, struct mlx5_eq *eq,
811 int mlx5_eq_debugfs_init(struct mlx5_core_dev *dev);
812 void mlx5_eq_debugfs_cleanup(struct mlx5_core_dev *dev);
813 int mlx5_cq_debugfs_init(struct mlx5_core_dev *dev);
814 void mlx5_cq_debugfs_cleanup(struct mlx5_core_dev *dev);
815 int mlx5_db_alloc(struct mlx5_core_dev *dev, struct mlx5_db *db);
816 int mlx5_db_alloc_node(struct mlx5_core_dev *dev, struct mlx5_db *db,
818 void mlx5_db_free(struct mlx5_core_dev *dev, struct mlx5_db *db);
821 int mlx5_cmdif_debugfs_init(struct mlx5_core_dev *dev);
822 void mlx5_cmdif_debugfs_cleanup(struct mlx5_core_dev *dev);
823 int mlx5_core_create_psv(struct mlx5_core_dev *dev, u32 pdn,
825 int mlx5_core_destroy_psv(struct mlx5_core_dev *dev, int psv_num);
827 int mlx5_query_odp_caps(struct mlx5_core_dev *dev,
830 static inline int fw_initializing(struct mlx5_core_dev *dev) in fw_initializing()
865 void * (*add)(struct mlx5_core_dev *dev);
866 void (*remove)(struct mlx5_core_dev *dev, void *context);
867 void (*event)(struct mlx5_core_dev *dev, void *context,
874 void *mlx5_get_protocol_dev(struct mlx5_core_dev *mdev, int protocol);
877 int mlx5_core_query_vendor_id(struct mlx5_core_dev *mdev, u32 *vendor_id);