Lines Matching refs:otx2_nic
181 struct otx2_nic *pfvf;
288 struct otx2_nic *pf;
299 struct otx2_nic *pf;
304 struct otx2_nic *pf;
318 struct otx2_nic *nic;
442 struct otx2_nic { struct
579 static inline void otx2_setup_dev_hw_settings(struct otx2_nic *pfvf) in otx2_setup_dev_hw_settings()
617 static inline void __iomem *otx2_get_regaddr(struct otx2_nic *nic, u64 offset) in otx2_get_regaddr()
639 static inline void otx2_write64(struct otx2_nic *nic, u64 offset, u64 val) in otx2_write64()
646 static inline u64 otx2_read64(struct otx2_nic *nic, u64 offset) in otx2_read64()
726 static inline void __cn10k_aura_freeptr(struct otx2_nic *pfvf, u64 aura, in __cn10k_aura_freeptr()
760 struct otx2_nic *pfvf = dev; in cn10k_aura_freeptr()
771 static inline u64 otx2_aura_allocptr(struct otx2_nic *pfvf, int aura) in otx2_aura_allocptr()
782 struct otx2_nic *pfvf = dev; in otx2_aura_freeptr()
788 static inline int otx2_get_pool_idx(struct otx2_nic *pfvf, int type, int idx) in otx2_get_pool_idx()
865 otx2_mbox_up_handler_ ## _fn_name(struct otx2_nic *pfvf, \
891 static inline dma_addr_t otx2_dma_map_page(struct otx2_nic *pfvf, in otx2_dma_map_page()
905 static inline void otx2_dma_unmap_page(struct otx2_nic *pfvf, in otx2_dma_unmap_page()
913 static inline u16 otx2_get_smq_idx(struct otx2_nic *pfvf, u16 qidx) in otx2_get_smq_idx()
929 static inline u16 otx2_get_total_tx_queues(struct otx2_nic *pfvf) in otx2_get_total_tx_queues()
945 static inline int otx2_tc_flower_rule_cnt(struct otx2_nic *pfvf) in otx2_tc_flower_rule_cnt()
955 void otx2_free_cints(struct otx2_nic *pfvf, int n);
956 void otx2_set_cints_affinity(struct otx2_nic *pfvf);
958 int otx2_hw_set_mtu(struct otx2_nic *pfvf, int mtu);
961 void otx2_config_irq_coalescing(struct otx2_nic *pfvf, int qidx);
962 int otx2_config_pause_frm(struct otx2_nic *pfvf);
963 void otx2_setup_segmentation(struct otx2_nic *pfvf);
964 int otx2_reset_mac_stats(struct otx2_nic *pfvf);
967 int otx2_attach_npa_nix(struct otx2_nic *pfvf);
969 int otx2_config_npa(struct otx2_nic *pfvf);
970 int otx2_sq_aura_pool_init(struct otx2_nic *pfvf);
971 int otx2_rq_aura_pool_init(struct otx2_nic *pfvf);
972 void otx2_aura_pool_free(struct otx2_nic *pfvf);
973 void otx2_free_aura_ptr(struct otx2_nic *pfvf, int type);
974 void otx2_sq_free_sqbs(struct otx2_nic *pfvf);
975 int otx2_config_nix(struct otx2_nic *pfvf);
976 int otx2_config_nix_queues(struct otx2_nic *pfvf);
977 int otx2_txschq_config(struct otx2_nic *pfvf, int lvl, int prio, bool pfc_en);
978 int otx2_txsch_alloc(struct otx2_nic *pfvf);
979 void otx2_txschq_stop(struct otx2_nic *pfvf);
980 void otx2_txschq_free_one(struct otx2_nic *pfvf, u16 lvl, u16 schq);
981 void otx2_free_pending_sqe(struct otx2_nic *pfvf);
982 void otx2_sqb_flush(struct otx2_nic *pfvf);
983 int otx2_alloc_rbuf(struct otx2_nic *pfvf, struct otx2_pool *pool,
985 int otx2_rxtx_enable(struct otx2_nic *pfvf, bool enable);
987 int otx2_nix_config_bp(struct otx2_nic *pfvf, bool enable);
988 void otx2_cleanup_rx_cqes(struct otx2_nic *pfvf, struct otx2_cq_queue *cq, int qidx);
989 void otx2_cleanup_tx_cqes(struct otx2_nic *pfvf, struct otx2_cq_queue *cq);
990 int otx2_sq_init(struct otx2_nic *pfvf, u16 qidx, u16 sqb_aura);
993 int otx2_alloc_buffer(struct otx2_nic *pfvf, struct otx2_cq_queue *cq,
995 int otx2_pool_init(struct otx2_nic *pfvf, u16 pool_id,
997 int otx2_aura_init(struct otx2_nic *pfvf, int aura_id,
1001 int otx2_rss_init(struct otx2_nic *pfvf);
1002 int otx2_set_flowkey_cfg(struct otx2_nic *pfvf);
1003 void otx2_set_rss_key(struct otx2_nic *pfvf);
1004 int otx2_set_rss_table(struct otx2_nic *pfvf, int ctx_id);
1007 void mbox_handler_msix_offset(struct otx2_nic *pfvf,
1009 void mbox_handler_npa_lf_alloc(struct otx2_nic *pfvf,
1011 void mbox_handler_nix_lf_alloc(struct otx2_nic *pfvf,
1013 void mbox_handler_nix_txsch_alloc(struct otx2_nic *pf,
1015 void mbox_handler_cgx_stats(struct otx2_nic *pfvf,
1017 void mbox_handler_cgx_fec_stats(struct otx2_nic *pfvf,
1019 void otx2_set_fec_stats_count(struct otx2_nic *pfvf);
1020 void mbox_handler_nix_bp_enable(struct otx2_nic *pfvf,
1024 void otx2_get_dev_stats(struct otx2_nic *pfvf);
1027 void otx2_update_lmac_stats(struct otx2_nic *pfvf);
1028 void otx2_update_lmac_fec_stats(struct otx2_nic *pfvf);
1029 int otx2_update_rq_stats(struct otx2_nic *pfvf, int qidx);
1030 int otx2_update_sq_stats(struct otx2_nic *pfvf, int qidx);
1042 int otx2_mcam_flow_init(struct otx2_nic *pf);
1043 int otx2vf_mcam_flow_init(struct otx2_nic *pfvf);
1044 int otx2_alloc_mcam_entries(struct otx2_nic *pfvf, u16 count);
1045 void otx2_mcam_flow_del(struct otx2_nic *pf);
1046 int otx2_destroy_ntuple_flows(struct otx2_nic *pf);
1047 int otx2_destroy_mcam_flows(struct otx2_nic *pfvf);
1048 int otx2_get_flow(struct otx2_nic *pfvf,
1050 int otx2_get_all_flows(struct otx2_nic *pfvf,
1052 int otx2_add_flow(struct otx2_nic *pfvf,
1054 int otx2_remove_flow(struct otx2_nic *pfvf, u32 location);
1056 void otx2_rss_ctx_flow_del(struct otx2_nic *pfvf, int ctx_id);
1059 int otx2_enable_rxvlan(struct otx2_nic *pf, bool enable);
1060 int otx2_install_rxvlan_offload_flow(struct otx2_nic *pfvf);
1061 bool otx2_xdp_sq_append_pkt(struct otx2_nic *pfvf, u64 iova, int len, u16 qidx);
1062 u16 otx2_get_max_mtu(struct otx2_nic *pfvf);
1065 int otx2_smq_flush(struct otx2_nic *pfvf, int smq);
1066 void otx2_free_bufs(struct otx2_nic *pfvf, struct otx2_pool *pool,
1068 int otx2_mcam_entry_init(struct otx2_nic *pfvf);
1071 int otx2_init_tc(struct otx2_nic *nic);
1072 void otx2_shutdown_tc(struct otx2_nic *nic);
1075 void otx2_tc_apply_ingress_police_rules(struct otx2_nic *nic);
1078 int otx2_dmacflt_get_max_cnt(struct otx2_nic *pf);
1079 int otx2_dmacflt_add(struct otx2_nic *pf, const u8 *mac, u32 bit_pos);
1080 int otx2_dmacflt_remove(struct otx2_nic *pf, const u8 *mac, u32 bit_pos);
1081 int otx2_dmacflt_update(struct otx2_nic *pf, u8 *mac, u32 bit_pos);
1082 void otx2_dmacflt_reinstall_flows(struct otx2_nic *pf);
1083 void otx2_dmacflt_update_pfmac_flow(struct otx2_nic *pfvf);
1087 void otx2_update_bpid_in_rqctx(struct otx2_nic *pfvf, int vlan_prio, int qidx, bool pfc_enable);
1088 int otx2_config_priority_flow_ctrl(struct otx2_nic *pfvf);
1091 int otx2_pfc_txschq_config(struct otx2_nic *pfvf);
1092 int otx2_pfc_txschq_alloc(struct otx2_nic *pfvf);
1093 int otx2_pfc_txschq_update(struct otx2_nic *pfvf);
1094 int otx2_pfc_txschq_stop(struct otx2_nic *pfvf);
1099 int cn10k_mcs_init(struct otx2_nic *pfvf);
1100 void cn10k_mcs_free(struct otx2_nic *pfvf);
1101 void cn10k_handle_mcs_event(struct otx2_nic *pfvf, struct mcs_intr_info *event);
1103 static inline int cn10k_mcs_init(struct otx2_nic *pfvf) { return 0; } in cn10k_mcs_init()
1104 static inline void cn10k_mcs_free(struct otx2_nic *pfvf) {} in cn10k_mcs_free()
1105 static inline void cn10k_handle_mcs_event(struct otx2_nic *pfvf, in cn10k_handle_mcs_event()
1111 static inline void otx2_qos_init(struct otx2_nic *pfvf, int qos_txqs) in otx2_qos_init()
1120 static inline void otx2_shutdown_qos(struct otx2_nic *pfvf) in otx2_shutdown_qos()
1127 int otx2_get_txq_by_classid(struct otx2_nic *pfvf, u16 classid);
1128 void otx2_qos_config_txschq(struct otx2_nic *pfvf);
1129 void otx2_clean_qos_queues(struct otx2_nic *pfvf);