| /dpdk/drivers/net/hinic/base/ |
| H A D | hinic_pmd_nicio.c | 272 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 D | hinic_pmd_hwif.c | 31 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 D | hinic_pmd_hwdev.c | 115 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 D | hinic_pmd_niccfg.h | 824 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 D | hinic_pmd_mgmt.c | 110 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 D | hinic_pmd_wq.c | 9 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 D | hinic_pmd_cmdq.c | 155 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 D | hinic_pmd_nicio.h | 205 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 D | hinic_pmd_hwif.h | 92 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 D | hinic_pmd_hwdev.h | 25 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 D | hinic_pmd_cfg.c | 13 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 D | hinic_pmd_mgmt.h | 84 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 D | hinic_pmd_mbox.h | 59 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 D | hinic_pmd_cmdq.h | 205 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 D | hinic_pmd_eqs.h | 60 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 D | hinic_pmd_cfg.h | 75 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 D | hinic_pmd_api_cmd.c | 81 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 D | hinic_pmd_wq.h | 117 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 D | hinic_pmd_api_cmd.h | 230 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 D | hinic_pmd_rx.c | 209 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 D | hinic_pmd_rx.h | 130 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 D | hinic_pmd_tx.h | 142 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 D | hinic_pmd_ethdev.h | 325 struct hinic_hwdev *hwdev; member
|