Home
last modified time | relevance | path

Searched refs:hwdev (Results 1 – 23 of 23) sorted by relevance

/dpdk/drivers/net/hinic/base/
H A Dhinic_pmd_nicio.c272 struct hinic_hwdev *hwdev = nic_io->hwdev; in init_sq_ctxts() local
281 cmd_buf = hinic_alloc_cmd_buf(hwdev); in init_sq_ctxts()
310 err = hinic_cmdq_direct_resp(hwdev, HINIC_ACK_TYPE_CMDQ, in init_sq_ctxts()
324 hinic_free_cmd_buf(hwdev, cmd_buf); in init_sq_ctxts()
331 struct hinic_hwdev *hwdev = nic_io->hwdev; in init_rq_ctxts() local
340 cmd_buf = hinic_alloc_cmd_buf(hwdev); in init_rq_ctxts()
368 err = hinic_cmdq_direct_resp(hwdev, HINIC_ACK_TYPE_CMDQ, in init_rq_ctxts()
381 hinic_free_cmd_buf(hwdev, cmd_buf); in init_rq_ctxts()
394 struct hinic_hwdev *hwdev = nic_io->hwdev; in clean_queue_offload_ctxt() local
400 cmd_buf = hinic_alloc_cmd_buf(hwdev); in clean_queue_offload_ctxt()
[all …]
H A Dhinic_pmd_hwif.c31 static int hwif_ready(struct hinic_hwdev *hwdev) in hwif_ready() argument
36 attr1 = hinic_hwif_read_reg(hwdev->hwif, addr); in hwif_ready()
41 attr0 = hinic_hwif_read_reg(hwdev->hwif, addr); in hwif_ready()
249 void hinic_free_db_addr(void *hwdev, void __iomem *db_base) in hinic_free_db_addr() argument
251 struct hinic_hwif *hwif = ((struct hinic_hwdev *)hwdev)->hwif; in hinic_free_db_addr()
257 int hinic_alloc_db_addr(void *hwdev, void __iomem **db_base) in hinic_alloc_db_addr() argument
259 struct hinic_hwif *hwif = ((struct hinic_hwdev *)hwdev)->hwif; in hinic_alloc_db_addr()
272 void hinic_set_msix_state(void *hwdev, u16 msix_idx, enum hinic_msix_state flag) in hinic_set_msix_state() argument
274 struct hinic_hwdev *hw = hwdev; in hinic_set_msix_state()
294 static void disable_all_msix(struct hinic_hwdev *hwdev) in disable_all_msix() argument
[all …]
H A Dhinic_pmd_hwdev.c115 static void *hinic_dma_mem_zalloc(struct hinic_hwdev *hwdev, size_t size, in hinic_dma_mem_zalloc() argument
128 alloc_cnt = rte_atomic32_add_return(&hwdev->os_dep.dma_alloc_cnt, 1); in hinic_dma_mem_zalloc()
130 hwdev->pcidev_hdl->name, alloc_cnt); in hinic_dma_mem_zalloc()
145 rc = rte_hash_lookup_with_hash(hwdev->os_dep.dma_addr_hash, in hinic_dma_mem_zalloc()
154 rte_spinlock_lock(&hwdev->os_dep.dma_hash_lock); in hinic_dma_mem_zalloc()
155 rc = rte_hash_add_key_with_hash_data(hwdev->os_dep.dma_addr_hash, in hinic_dma_mem_zalloc()
158 rte_spinlock_unlock(&hwdev->os_dep.dma_hash_lock); in hinic_dma_mem_zalloc()
176 hinic_dma_mem_free(struct hinic_hwdev *hwdev, size_t size, in hinic_dma_mem_free() argument
187 hash = hwdev->os_dep.dma_addr_hash; in hinic_dma_mem_free()
205 rte_spinlock_lock(&hwdev->os_dep.dma_hash_lock); in hinic_dma_mem_free()
[all …]
H A Dhinic_pmd_niccfg.h824 int hinic_set_mac(void *hwdev, u8 *mac_addr, u16 vlan_id, u16 func_id);
826 int hinic_del_mac(void *hwdev, u8 *mac_addr, u16 vlan_id, u16 func_id);
828 int hinic_update_mac(void *hwdev, u8 *old_mac, u8 *new_mac, u16 vlan_id,
831 int hinic_get_default_mac(void *hwdev, u8 *mac_addr);
833 int hinic_set_port_mtu(void *hwdev, u32 new_mtu);
835 int hinic_add_remove_vlan(void *hwdev, u16 vlan_id, u16 func_id, bool add);
837 int hinic_config_vlan_filter(void *hwdev, u32 vlan_filter_ctrl);
839 int hinic_set_rx_vlan_offload(void *hwdev, u8 en);
841 int hinic_set_vport_enable(void *hwdev, bool enable);
843 int hinic_set_port_enable(void *hwdev, bool enable);
[all …]
H A Dhinic_pmd_mgmt.c110 struct hinic_hwif *hwif = pf_to_mgmt->hwdev->hwif; in prepare_header()
247 static int hinic_get_mgmt_channel_status(void *hwdev) in hinic_get_mgmt_channel_status() argument
249 struct hinic_hwif *hwif = ((struct hinic_hwdev *)hwdev)->hwif; in hinic_get_mgmt_channel_status()
252 if (hinic_func_type((struct hinic_hwdev *)hwdev) == TYPE_VF) in hinic_get_mgmt_channel_status()
322 if (hinic_get_mgmt_channel_status(pf_to_mgmt->hwdev)) { in send_msg_to_mgmt_sync()
349 static int hinic_pf_to_mgmt_init(struct hinic_hwdev *hwdev) in hinic_pf_to_mgmt_init() argument
360 hwdev->pf_to_mgmt = pf_to_mgmt; in hinic_pf_to_mgmt_init()
361 pf_to_mgmt->hwdev = hwdev; in hinic_pf_to_mgmt_init()
373 err = hinic_api_cmd_init(hwdev, pf_to_mgmt->cmd_chain); in hinic_pf_to_mgmt_init()
397 static void hinic_pf_to_mgmt_free(struct hinic_hwdev *hwdev) in hinic_pf_to_mgmt_free() argument
[all …]
H A Dhinic_pmd_wq.c9 static void free_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq) in free_wq_pages() argument
11 dma_free_coherent(hwdev, wq->wq_buf_size, (void *)wq->queue_buf_vaddr, in free_wq_pages()
18 static int alloc_wq_pages(struct hinic_hwdev *hwdev, struct hinic_wq *wq, in alloc_wq_pages() argument
24 dma_zalloc_coherent_aligned256k(hwdev, wq->wq_buf_size, in alloc_wq_pages()
33 dma_free_coherent(hwdev, wq->wq_buf_size, in alloc_wq_pages()
43 int hinic_wq_allocate(struct hinic_hwdev *hwdev, struct hinic_wq *wq, in hinic_wq_allocate() argument
64 err = alloc_wq_pages(hwdev, wq, socket_id); in hinic_wq_allocate()
78 void hinic_wq_free(struct hinic_hwdev *hwdev, struct hinic_wq *wq) in hinic_wq_free() argument
80 free_wq_pages(hwdev, wq); in hinic_wq_free()
105 int hinic_cmdq_alloc(struct hinic_wq *wq, struct hinic_hwdev *hwdev, in hinic_cmdq_alloc() argument
[all …]
H A Dhinic_pmd_cmdq.c155 static void hinic_cmdqs_free(struct hinic_hwdev *hwdev);
164 struct hinic_cmd_buf *hinic_alloc_cmd_buf(void *hwdev) in hinic_alloc_cmd_buf() argument
166 struct hinic_cmdqs *cmdqs = ((struct hinic_hwdev *)hwdev)->cmdqs; in hinic_alloc_cmd_buf()
188 void hinic_free_cmd_buf(void *hwdev, struct hinic_cmd_buf *cmd_buf) in hinic_free_cmd_buf() argument
190 struct hinic_cmdqs *cmdqs = ((struct hinic_hwdev *)hwdev)->cmdqs; in hinic_free_cmd_buf()
425 static int hinic_set_cmdq_ctxts(struct hinic_hwdev *hwdev) in hinic_set_cmdq_ctxts() argument
427 struct hinic_cmdqs *cmdqs = hwdev->cmdqs; in hinic_set_cmdq_ctxts()
441 err = hinic_msg_to_mgmt_sync(hwdev, HINIC_MOD_COMM, in hinic_set_cmdq_ctxts()
463 void hinic_comm_cmdqs_free(struct hinic_hwdev *hwdev) in hinic_comm_cmdqs_free() argument
465 hinic_cmdqs_free(hwdev); in hinic_comm_cmdqs_free()
[all …]
H A Dhinic_pmd_nicio.h205 struct hinic_hwdev *hwdev; member
237 int hinic_init_qp_ctxts(struct hinic_hwdev *hwdev);
239 void hinic_free_qp_ctxts(struct hinic_hwdev *hwdev);
241 int hinic_rx_tx_flush(struct hinic_hwdev *hwdev);
243 int hinic_get_sq_free_wqebbs(struct hinic_hwdev *hwdev, u16 q_id);
245 u16 hinic_get_sq_local_ci(struct hinic_hwdev *hwdev, u16 q_id);
247 void hinic_update_sq_local_ci(struct hinic_hwdev *hwdev, u16 q_id,
250 void hinic_return_sq_wqe(struct hinic_hwdev *hwdev, u16 q_id,
253 int hinic_get_rq_free_wqebbs(struct hinic_hwdev *hwdev, u16 q_id);
255 void *hinic_get_rq_wqe(struct hinic_hwdev *hwdev, u16 q_id, u16 *pi);
[all …]
H A Dhinic_pmd_hwif.h92 u16 hinic_global_func_id(void *hwdev); /* func_attr.glb_func_idx */
94 enum func_type hinic_func_type(void *hwdev);
104 int hinic_alloc_db_addr(void *hwdev, void __iomem **db_base);
106 void hinic_free_db_addr(void *hwdev, void __iomem *db_base);
111 void hinic_set_msix_state(void *hwdev, u16 msix_idx,
114 void hinic_misx_intr_clear_resend_bit(void *hwdev, u16 msix_idx,
117 u8 hinic_ppf_idx(void *hwdev);
119 int hinic_hwif_res_init(struct hinic_hwdev *hwdev);
121 void hinic_hwif_res_free(struct hinic_hwdev *hwdev);
123 u8 hinic_dma_attr_entry_num(void *hwdev);
H A Dhinic_pmd_hwdev.h25 void *hwdev; member
447 int hinic_osdep_init(struct hinic_hwdev *hwdev);
449 void hinic_osdep_deinit(struct hinic_hwdev *hwdev);
451 void dma_free_coherent_volatile(void *hwdev, size_t size,
454 int hinic_get_board_info(void *hwdev, struct hinic_board_info *info);
456 int hinic_set_ci_table(void *hwdev, u16 q_id, struct hinic_sq_attr *attr);
458 int hinic_func_rx_tx_flush(struct hinic_hwdev *hwdev);
460 int hinic_set_interrupt_cfg(struct hinic_hwdev *hwdev,
463 int init_aeqs_msix_attr(void *hwdev);
465 void hinic_comm_async_event_handle(struct hinic_hwdev *hwdev, u8 cmd,
[all …]
H A Dhinic_pmd_cfg.c13 bool hinic_support_nic(struct hinic_hwdev *hwdev, struct nic_service_cap *cap) in hinic_support_nic() argument
15 if (!IS_NIC_TYPE(hwdev)) in hinic_support_nic()
19 memcpy(cap, &hwdev->cfg_mgmt->svc_cap.nic_cap, sizeof(*cap)); in hinic_support_nic()
81 u16 hinic_func_max_qnum(void *hwdev) in hinic_func_max_qnum() argument
83 struct hinic_hwdev *dev = hwdev; in hinic_func_max_qnum()
88 int init_cfg_mgmt(struct hinic_hwdev *hwdev) in init_cfg_mgmt() argument
96 hwdev->cfg_mgmt = cfg_mgmt; in init_cfg_mgmt()
97 cfg_mgmt->hwdev = hwdev; in init_cfg_mgmt()
102 void free_cfg_mgmt(struct hinic_hwdev *hwdev) in free_cfg_mgmt() argument
104 kfree(hwdev->cfg_mgmt); in free_cfg_mgmt()
[all …]
H A Dhinic_pmd_mgmt.h84 struct hinic_hwdev *hwdev; member
103 int hinic_msg_to_mgmt_no_ack(void *hwdev, enum hinic_mod_type mod, u8 cmd,
106 int hinic_comm_pf_to_mgmt_init(struct hinic_hwdev *hwdev);
108 void hinic_comm_pf_to_mgmt_free(struct hinic_hwdev *hwdev);
112 int hinic_msg_to_mgmt_sync(void *hwdev, enum hinic_mod_type mod, u8 cmd,
116 void hinic_dev_handle_aeq_event(struct hinic_hwdev *hwdev, void *param);
H A Dhinic_pmd_mbox.h59 struct hinic_hwdev *hwdev; member
80 int hinic_comm_func_to_func_init(struct hinic_hwdev *hwdev);
81 void hinic_comm_func_to_func_free(struct hinic_hwdev *hwdev);
84 int hinic_mbox_to_pf(struct hinic_hwdev *hwdev, enum hinic_mod_type mod, u8 cmd,
87 int hinic_mbox_to_pf_no_ack(struct hinic_hwdev *hwdev, enum hinic_mod_type mod,
H A Dhinic_pmd_cmdq.h205 struct hinic_hwdev *hwdev; member
223 int hinic_reinit_cmdq_ctxts(struct hinic_hwdev *hwdev);
227 struct hinic_cmd_buf *hinic_alloc_cmd_buf(void *hwdev);
229 void hinic_free_cmd_buf(void *hwdev, struct hinic_cmd_buf *cmd_buf);
234 int hinic_cmdq_direct_resp(void *hwdev, enum hinic_ack_type ack_type,
239 int hinic_comm_cmdqs_init(struct hinic_hwdev *hwdev);
241 void hinic_comm_cmdqs_free(struct hinic_hwdev *hwdev);
H A Dhinic_pmd_eqs.h60 struct hinic_hwdev *hwdev; member
87 struct hinic_hwdev *hwdev; member
96 void hinic_dump_aeq_info(struct hinic_hwdev *hwdev);
98 int hinic_comm_aeqs_init(struct hinic_hwdev *hwdev);
100 void hinic_comm_aeqs_free(struct hinic_hwdev *hwdev);
H A Dhinic_pmd_cfg.h75 struct hinic_hwdev *hwdev; member
136 u16 hinic_func_max_qnum(void *hwdev);
138 int init_cfg_mgmt(struct hinic_hwdev *hwdev);
140 void free_cfg_mgmt(struct hinic_hwdev *hwdev);
142 int hinic_init_capability(struct hinic_hwdev *hwdev);
144 bool hinic_support_nic(struct hinic_hwdev *hwdev, struct nic_service_cap *cap);
H A Dhinic_pmd_api_cmd.c81 struct hinic_hwif *hwif = chain->hwdev->hwif; in set_prod_idx()
93 val = hinic_hwif_read_reg(chain->hwdev->hwif, addr); in get_hw_cons_idx()
103 val = hinic_hwif_read_reg(chain->hwdev->hwif, addr); in dump_api_chain_reg()
116 val = hinic_hwif_read_reg(chain->hwdev->hwif, addr); in dump_api_chain_reg()
440 struct hinic_hwif *hwif = chain->hwdev->hwif; in api_cmd_hw_restart()
476 struct hinic_hwif *hwif = chain->hwdev->hwif; in api_cmd_ctrl_init()
503 struct hinic_hwif *hwif = chain->hwdev->hwif; in api_cmd_set_status_addr()
521 struct hinic_hwif *hwif = chain->hwdev->hwif; in api_cmd_set_num_cells()
535 struct hinic_hwif *hwif = chain->hwdev->hwif; in api_cmd_head_init()
554 struct hinic_hwif *hwif = chain->hwdev->hwif; in wait_for_ready_chain()
[all …]
H A Dhinic_pmd_wq.h117 int hinic_cmdq_alloc(struct hinic_wq *wq, struct hinic_hwdev *hwdev,
121 void hinic_cmdq_free(struct hinic_hwdev *hwdev, struct hinic_wq *wq,
124 int hinic_wq_allocate(struct hinic_hwdev *hwdev, struct hinic_wq *wq,
127 void hinic_wq_free(struct hinic_hwdev *hwdev, struct hinic_wq *wq);
H A Dhinic_pmd_api_cmd.h230 struct hinic_hwdev *hwdev; member
239 struct hinic_hwdev *hwdev; member
266 int hinic_api_cmd_init(struct hinic_hwdev *hwdev,
/dpdk/drivers/net/hinic/
H A Dhinic_pmd_rx.c209 nic_dev->hwdev->nic_io->rq_buf_size = buf_size; in hinic_get_func_rx_buf_size()
212 int hinic_create_rq(struct hinic_hwdev *hwdev, u16 q_id, in hinic_create_rq() argument
216 struct hinic_nic_io *nic_io = hwdev->nic_io; in hinic_create_rq()
226 err = hinic_wq_allocate(hwdev, &nic_io->rq_wq[q_id], in hinic_create_rq()
234 rq->pi_virt_addr = (volatile u16 *)dma_zalloc_coherent(hwdev, in hinic_create_rq()
245 hinic_wq_free(hwdev, &nic_io->rq_wq[q_id]); in hinic_create_rq()
250 void hinic_destroy_rq(struct hinic_hwdev *hwdev, u16 q_id) in hinic_destroy_rq() argument
252 struct hinic_nic_io *nic_io = hwdev->nic_io; in hinic_destroy_rq()
259 dma_free_coherent_volatile(hwdev, HINIC_PAGE_SIZE, in hinic_destroy_rq()
262 hinic_wq_free(nic_io->hwdev, qp->rq.wq); in hinic_destroy_rq()
[all …]
H A Dhinic_pmd_rx.h130 int hinic_create_rq(struct hinic_hwdev *hwdev, u16 q_id,
133 void hinic_destroy_rq(struct hinic_hwdev *hwdev, u16 q_id);
H A Dhinic_pmd_tx.h142 int hinic_create_sq(struct hinic_hwdev *hwdev, u16 q_id,
145 void hinic_destroy_sq(struct hinic_hwdev *hwdev, u16 q_id);
H A Dhinic_pmd_ethdev.h325 struct hinic_hwdev *hwdev; member