Lines Matching defs:mcx_softc
2304 struct mcx_softc *rx_softc;
2318 struct mcx_softc *tx_softc;
2335 struct mcx_softc *q_sc;
2439 struct mcx_softc {
2527 static void mcx_kstat_attach(struct mcx_softc *);
2530 static void mcx_timecounter_attach(struct mcx_softc *);
2532 static int mcx_version(struct mcx_softc *);
2533 static int mcx_init_wait(struct mcx_softc *);
2534 static int mcx_enable_hca(struct mcx_softc *);
2535 static int mcx_teardown_hca(struct mcx_softc *, uint16_t);
2536 static int mcx_access_hca_reg(struct mcx_softc *, uint16_t, int, void *,
2538 static int mcx_issi(struct mcx_softc *);
2539 static int mcx_pages(struct mcx_softc *, struct mcx_hwmem *, uint16_t);
2540 static int mcx_hca_max_caps(struct mcx_softc *);
2541 static int mcx_hca_set_caps(struct mcx_softc *);
2542 static int mcx_init_hca(struct mcx_softc *);
2543 static int mcx_set_driver_version(struct mcx_softc *);
2544 static int mcx_iff(struct mcx_softc *);
2545 static int mcx_alloc_uar(struct mcx_softc *, int *);
2546 static int mcx_alloc_pd(struct mcx_softc *);
2547 static int mcx_alloc_tdomain(struct mcx_softc *);
2548 static int mcx_create_eq(struct mcx_softc *, struct mcx_eq *, int,
2550 static int mcx_query_nic_vport_context(struct mcx_softc *);
2551 static int mcx_query_special_contexts(struct mcx_softc *);
2552 static int mcx_set_port_mtu(struct mcx_softc *, int);
2553 static int mcx_create_cq(struct mcx_softc *, struct mcx_cq *, int, int,
2555 static int mcx_destroy_cq(struct mcx_softc *, struct mcx_cq *);
2556 static int mcx_create_sq(struct mcx_softc *, struct mcx_tx *, int, int,
2558 static int mcx_destroy_sq(struct mcx_softc *, struct mcx_tx *);
2559 static int mcx_ready_sq(struct mcx_softc *, struct mcx_tx *);
2560 static int mcx_create_rq(struct mcx_softc *, struct mcx_rx *, int, int);
2561 static int mcx_destroy_rq(struct mcx_softc *, struct mcx_rx *);
2562 static int mcx_ready_rq(struct mcx_softc *, struct mcx_rx *);
2563 static int mcx_create_tir_direct(struct mcx_softc *, struct mcx_rx *,
2565 static int mcx_create_tir_indirect(struct mcx_softc *, int, uint32_t,
2567 static int mcx_destroy_tir(struct mcx_softc *, int);
2568 static int mcx_create_tis(struct mcx_softc *, int *);
2569 static int mcx_destroy_tis(struct mcx_softc *, int);
2570 static int mcx_create_rqt(struct mcx_softc *, int, int *, int *);
2571 static int mcx_destroy_rqt(struct mcx_softc *, int);
2572 static int mcx_create_flow_table(struct mcx_softc *, int, int, int *);
2573 static int mcx_set_flow_table_root(struct mcx_softc *, int);
2574 static int mcx_destroy_flow_table(struct mcx_softc *, int);
2575 static int mcx_create_flow_group(struct mcx_softc *, int, int, int,
2577 static int mcx_destroy_flow_group(struct mcx_softc *, int);
2578 static int mcx_set_flow_table_entry_mac(struct mcx_softc *, int, int,
2580 static int mcx_set_flow_table_entry_proto(struct mcx_softc *, int, int,
2582 static int mcx_delete_flow_table_entry(struct mcx_softc *, int, int);
2585 static int mcx_query_rq(struct mcx_softc *, struct mcx_rx *, struct mcx_rq_ctx *);
2586 static int mcx_query_sq(struct mcx_softc *, struct mcx_tx *, struct mcx_sq_ctx *);
2587 static int mcx_query_cq(struct mcx_softc *, struct mcx_cq *, struct mcx_cq_ctx *);
2588 static int mcx_query_eq(struct mcx_softc *, struct mcx_eq *, struct mcx_eq_ctx *);
2592 static int mcx_dump_flow_table(struct mcx_softc *, int);
2593 static int mcx_dump_flow_table_entry(struct mcx_softc *, int, int);
2594 static int mcx_dump_flow_group(struct mcx_softc *, int);
2603 static int mcx_process_rx(struct mcx_softc *, struct mcx_rx *,
2606 static int mcx_process_txeof(struct mcx_softc *, struct mcx_tx *,
2608 static void mcx_process_cq(struct mcx_softc *, struct mcx_queues *,
2611 static void mcx_arm_cq(struct mcx_softc *, struct mcx_cq *, int);
2612 static void mcx_arm_eq(struct mcx_softc *, struct mcx_eq *, int);
2616 static int mcx_up(struct mcx_softc *);
2617 static void mcx_down(struct mcx_softc *);
2619 static int mcx_rxrinfo(struct mcx_softc *, struct if_rxrinfo *);
2622 static void mcx_media_add_types(struct mcx_softc *);
2628 static void mcx_calibrate_first(struct mcx_softc *);
2632 mcx_rd(struct mcx_softc *, bus_size_t);
2634 mcx_wr(struct mcx_softc *, bus_size_t, uint32_t);
2636 mcx_bar(struct mcx_softc *, bus_size_t, bus_size_t, int);
2638 static uint64_t mcx_timer(struct mcx_softc *);
2640 static int mcx_dmamem_alloc(struct mcx_softc *, struct mcx_dmamem *,
2643 static void mcx_dmamem_free(struct mcx_softc *, struct mcx_dmamem *);
2645 static int mcx_hwmem_alloc(struct mcx_softc *, struct mcx_hwmem *,
2647 static void mcx_hwmem_free(struct mcx_softc *, struct mcx_hwmem *);
2656 sizeof(struct mcx_softc),
2736 struct mcx_softc *sc = (struct mcx_softc *)self;
3089 mcx_version(struct mcx_softc *sc)
3110 mcx_init_wait(struct mcx_softc *sc)
3129 mcx_cmdq_poll(struct mcx_softc *sc, struct mcx_cmdq_entry *cqe,
3198 mcx_cmdq_token(struct mcx_softc *sc)
3212 mcx_get_cmdq_entry(struct mcx_softc *sc, enum mcx_cmdq_slot slot)
3230 mcx_cmdq_init(struct mcx_softc *sc, struct mcx_cmdq_entry *cqe,
3268 mcx_cmdq_post(struct mcx_softc *sc, struct mcx_cmdq_entry *cqe,
3282 mcx_cmdq_exec(struct mcx_softc *sc, struct mcx_cmdq_entry *cqe,
3313 mcx_enable_hca(struct mcx_softc *sc)
3351 mcx_teardown_hca(struct mcx_softc *sc, uint16_t profile)
3389 mcx_cmdq_mboxes_alloc(struct mcx_softc *sc, struct mcx_dmamem *mxm,
3459 mcx_cmdq_mboxes_sync(struct mcx_softc *sc, struct mcx_dmamem *mxm, int ops)
3549 mcx_cq_mboxes_free(struct mcx_softc *sc, struct mcx_dmamem *mxm)
3597 mcx_access_hca_reg(struct mcx_softc *sc, uint16_t reg, int op, void *data,
3663 mcx_set_issi(struct mcx_softc *sc, struct mcx_cmdq_entry *cqe,
3691 mcx_issi(struct mcx_softc *sc)
3770 mcx_query_pages(struct mcx_softc *sc, uint16_t type,
3849 mcx_add_pages(struct mcx_softc *sc, struct mcx_hwmem *mhm, uint16_t func_id)
3925 mcx_pages(struct mcx_softc *sc, struct mcx_hwmem *mhm, uint16_t type)
3957 mcx_hca_max_caps(struct mcx_softc *sc)
4042 mcx_hca_set_caps(struct mcx_softc *sc)
4105 mcx_init_hca(struct mcx_softc *sc)
4142 mcx_set_driver_version(struct mcx_softc *sc)
4196 mcx_iff(struct mcx_softc *sc)
4296 mcx_alloc_uar(struct mcx_softc *sc, int *uar)
4333 mcx_create_eq(struct mcx_softc *sc, struct mcx_eq *eq, int uar,
4427 mcx_alloc_pd(struct mcx_softc *sc)
4464 mcx_alloc_tdomain(struct mcx_softc *sc)
4502 mcx_query_nic_vport_context(struct mcx_softc *sc)
4561 mcx_query_special_contexts(struct mcx_softc *sc)
4599 mcx_set_port_mtu(struct mcx_softc *sc, int mtu)
4629 mcx_create_cq(struct mcx_softc *sc, struct mcx_cq *cq, int uar, int db, int eqn)
4732 mcx_destroy_cq(struct mcx_softc *sc, struct mcx_cq *cq)
4782 mcx_create_rq(struct mcx_softc *sc, struct mcx_rx *rx, int db, int cqn)
4882 mcx_ready_rq(struct mcx_softc *sc, struct mcx_rx *rx)
4938 mcx_destroy_rq(struct mcx_softc *sc, struct mcx_rx *rx)
4985 mcx_create_tir_direct(struct mcx_softc *sc, struct mcx_rx *rx, int *tirn)
5041 mcx_create_tir_indirect(struct mcx_softc *sc, int rqtn, uint32_t hash_sel,
5103 mcx_destroy_tir(struct mcx_softc *sc, int tirn)
5142 mcx_create_sq(struct mcx_softc *sc, struct mcx_tx *tx, int uar, int db,
5245 mcx_destroy_sq(struct mcx_softc *sc, struct mcx_tx *tx)
5292 mcx_ready_sq(struct mcx_softc *sc, struct mcx_tx *tx)
5348 mcx_create_tis(struct mcx_softc *sc, int *tis)
5403 mcx_destroy_tis(struct mcx_softc *sc, int tis)
5442 mcx_create_rqt(struct mcx_softc *sc, int size, int *rqns, int *rqt)
5509 mcx_destroy_rqt(struct mcx_softc *sc, int rqt)
5549 mcx_alloc_flow_counter(struct mcx_softc *sc, int i)
5590 mcx_create_flow_table(struct mcx_softc *sc, int log_size, int level,
5648 mcx_set_flow_table_root(struct mcx_softc *sc, int flow_table_id)
5704 mcx_destroy_flow_table(struct mcx_softc *sc, int flow_table_id)
5760 mcx_create_flow_group(struct mcx_softc *sc, int flow_table_id, int group,
5828 mcx_destroy_flow_group(struct mcx_softc *sc, int group)
5889 mcx_set_flow_table_entry_mac(struct mcx_softc *sc, int group, int index,
5966 mcx_set_flow_table_entry_proto(struct mcx_softc *sc, int group, int index,
6040 mcx_delete_flow_table_entry(struct mcx_softc *sc, int group, int index)
6102 mcx_dump_flow_table(struct mcx_softc *sc, int flow_table_id)
6174 mcx_dump_flow_table_entry(struct mcx_softc *sc, int flow_table_id, int index)
6251 mcx_dump_flow_group(struct mcx_softc *sc, int flow_table_id)
6332 mcx_dump_counters(struct mcx_softc *sc)
6404 mcx_dump_flow_counter(struct mcx_softc *sc, int index, const char *what)
6470 mcx_query_rq(struct mcx_softc *sc, struct mcx_rx *rx, struct mcx_rq_ctx *rq_ctx)
6533 mcx_query_sq(struct mcx_softc *sc, struct mcx_tx *tx, struct mcx_sq_ctx *sq_ctx)
6596 mcx_query_cq(struct mcx_softc *sc, struct mcx_cq *cq, struct mcx_cq_ctx *cq_ctx)
6657 mcx_query_eq(struct mcx_softc *sc, struct mcx_eq *eq, struct mcx_eq_ctx *eq_ctx)
6720 mcx_rx_fill_slots(struct mcx_softc *sc, struct mcx_rx *rx, uint nslots)
6777 mcx_rx_fill(struct mcx_softc *sc, struct mcx_rx *rx)
6794 struct mcx_softc *sc = rx->rx_softc;
6803 mcx_process_txeof(struct mcx_softc *sc, struct mcx_tx *tx,
6829 mcx_calibrate_first(struct mcx_softc *sc)
6852 struct mcx_softc *sc = arg;
6895 mcx_process_rx(struct mcx_softc *sc, struct mcx_rx *rx,
6954 mcx_next_cq_entry(struct mcx_softc *sc, struct mcx_cq *cq)
6971 mcx_arm_cq(struct mcx_softc *sc, struct mcx_cq *cq, int uar)
7002 mcx_process_cq(struct mcx_softc *sc, struct mcx_queues *q, struct mcx_cq *cq)
7073 mcx_arm_eq(struct mcx_softc *sc, struct mcx_eq *eq, int uar)
7086 mcx_next_eq_entry(struct mcx_softc *sc, struct mcx_eq *eq)
7104 struct mcx_softc *sc = (struct mcx_softc *)xsc;
7149 struct mcx_softc *sc = q->q_sc;
7176 mcx_free_slots(struct mcx_softc *sc, struct mcx_slot *slots, int allocated,
7192 mcx_queue_up(struct mcx_softc *sc, struct mcx_queues *q)
7268 mcx_rss_group_entry_count(struct mcx_softc *sc, int group)
7283 mcx_up(struct mcx_softc *sc)
7471 mcx_down(struct mcx_softc *sc)
7577 struct mcx_softc *sc = (struct mcx_softc *)ifp->if_softc;
7701 struct mcx_softc *sc = (struct mcx_softc *)ifp->if_softc;
7747 mcx_rxrinfo(struct mcx_softc *sc, struct if_rxrinfo *ifri)
7774 mcx_load_mbuf(struct mcx_softc *sc, struct mcx_slot *ms, struct mbuf *m)
7800 struct mcx_softc *sc = ifp->if_softc;
7961 mcx_media_add_types(struct mcx_softc *sc)
8006 struct mcx_softc *sc = (struct mcx_softc *)ifp->if_softc;
8066 struct mcx_softc *sc = (struct mcx_softc *)ifp->if_softc;
8165 struct mcx_softc *sc = xsc;
8227 mcx_rd(struct mcx_softc *sc, bus_size_t r)
8237 mcx_wr(struct mcx_softc *sc, bus_size_t r, uint32_t v)
8243 mcx_bar(struct mcx_softc *sc, bus_size_t r, bus_size_t l, int f)
8249 mcx_timer(struct mcx_softc *sc)
8269 mcx_dmamem_alloc(struct mcx_softc *sc, struct mcx_dmamem *mxm,
8307 mcx_dmamem_free(struct mcx_softc *sc, struct mcx_dmamem *mxm)
8316 mcx_hwmem_alloc(struct mcx_softc *sc, struct mcx_hwmem *mhm, unsigned int pages)
8380 mcx_hwmem_free(struct mcx_softc *sc, struct mcx_hwmem *mhm)
8525 static void mcx_kstat_attach_tmps(struct mcx_softc *sc);
8526 static void mcx_kstat_attach_queues(struct mcx_softc *sc);
8529 mcx_kstat_attach_ppcnt(struct mcx_softc *sc,
8563 mcx_kstat_attach(struct mcx_softc *sc)
8581 struct mcx_softc *sc = ks->ks_softc;
8624 mcx_kstat_attach_tmps(struct mcx_softc *sc)
8707 struct mcx_softc *sc = ks->ks_softc;
8777 mcx_kstat_attach_queues(struct mcx_softc *sc)
8815 struct mcx_softc *sc = q->q_sc;
8975 struct mcx_softc *sc = tc->tc_priv;
8981 mcx_timecounter_attach(struct mcx_softc *sc)