| /linux/drivers/net/ethernet/huawei/hinic3/ |
| H A D | hinic3_cmdq.c | 122 struct hinic3_cmdqs *cmdqs; in hinic3_alloc_cmd_buf() local 124 cmdqs = hwdev->cmdqs; in hinic3_alloc_cmd_buf() 130 cmd_buf->buf = dma_pool_alloc(cmdqs->cmd_buf_pool, GFP_ATOMIC, in hinic3_alloc_cmd_buf() 151 struct hinic3_cmdqs *cmdqs; in hinic3_free_cmd_buf() local 156 cmdqs = hwdev->cmdqs; in hinic3_free_cmd_buf() 158 dma_pool_free(cmdqs->cmd_buf_pool, cmd_buf->buf, cmd_buf->dma_addr); in hinic3_free_cmd_buf() 235 struct hinic3_cmdqs *cmdqs = hwdev->cmdqs; in hinic3_cmdq_ceq_handler() local 243 if (unlikely(cmdq_type >= ARRAY_SIZE(cmdqs->cmdq))) in hinic3_cmdq_ceq_handler() 246 cmdq = &cmdqs->cmdq[cmdq_type]; in hinic3_cmdq_ceq_handler() 286 static int wait_cmdqs_enable(struct hinic3_cmdqs *cmdqs) in wait_cmdqs_enable() argument [all …]
|
| H A D | hinic3_hw_comm.c | 301 struct hinic3_cmdqs *cmdqs; in check_cmdq_stop_handler() local 303 cmdqs = hwdev->cmdqs; in check_cmdq_stop_handler() 304 for (cmdq_type = 0; cmdq_type < cmdqs->cmdq_num; cmdq_type++) { in check_cmdq_stop_handler() 305 if (!hinic3_cmdq_idle(&cmdqs->cmdq[cmdq_type])) in check_cmdq_stop_handler() 314 struct hinic3_cmdqs *cmdqs = hwdev->cmdqs; in wait_cmdq_stop() local 318 if (!(cmdqs->status & HINIC3_CMDQ_ENABLE)) in wait_cmdq_stop() 321 cmdqs->status &= ~HINIC3_CMDQ_ENABLE; in wait_cmdq_stop() 332 for (cmdq_type = 0; cmdq_type < cmdqs->cmdq_num; cmdq_type++) { in wait_cmdq_stop() 333 if (!hinic3_cmdq_idle(&cmdqs->cmdq[cmdq_type])) in wait_cmdq_stop() 336 cmdqs->status |= HINIC3_CMDQ_ENABLE; in wait_cmdq_stop()
|
| H A D | hinic3_hwdev.h | 69 struct hinic3_cmdqs *cmdqs; member
|
| /linux/drivers/net/ethernet/huawei/hinic/ |
| H A D | hinic_hw_cmdq.c | 81 #define cmdqs_to_func_to_io(cmdqs) container_of(cmdqs, \ argument 83 cmdqs) 126 int hinic_alloc_cmdq_buf(struct hinic_cmdqs *cmdqs, in hinic_alloc_cmdq_buf() argument 129 struct hinic_hwif *hwif = cmdqs->hwif; in hinic_alloc_cmdq_buf() 132 cmdq_buf->buf = dma_pool_alloc(cmdqs->cmdq_buf_pool, GFP_KERNEL, in hinic_alloc_cmdq_buf() 147 void hinic_free_cmdq_buf(struct hinic_cmdqs *cmdqs, in hinic_free_cmdq_buf() argument 150 dma_pool_free(cmdqs->cmdq_buf_pool, cmdq_buf->buf, cmdq_buf->dma_addr); in hinic_free_cmdq_buf() 481 int hinic_cmdq_direct_resp(struct hinic_cmdqs *cmdqs, in hinic_cmdq_direct_resp() argument 485 struct hinic_hwif *hwif = cmdqs->hwif; in hinic_cmdq_direct_resp() 495 return cmdq_sync_cmd_direct_resp(&cmdqs->cmdq[HINIC_CMDQ_SYNC], in hinic_cmdq_direct_resp() [all …]
|
| H A D | hinic_hw_cmdq.h | 170 int hinic_alloc_cmdq_buf(struct hinic_cmdqs *cmdqs, 173 void hinic_free_cmdq_buf(struct hinic_cmdqs *cmdqs, 176 int hinic_cmdq_direct_resp(struct hinic_cmdqs *cmdqs, 180 int hinic_init_cmdqs(struct hinic_cmdqs *cmdqs, struct hinic_hwif *hwif, 183 void hinic_free_cmdqs(struct hinic_cmdqs *cmdqs);
|
| H A D | hinic_hw_io.c | 117 err = hinic_alloc_cmdq_buf(&func_to_io->cmdqs, &cmdq_buf); in write_sq_ctxts() 137 err = hinic_cmdq_direct_resp(&func_to_io->cmdqs, HINIC_MOD_L2NIC, in write_sq_ctxts() 145 hinic_free_cmdq_buf(&func_to_io->cmdqs, &cmdq_buf); in write_sq_ctxts() 161 err = hinic_alloc_cmdq_buf(&func_to_io->cmdqs, &cmdq_buf); in write_rq_ctxts() 181 err = hinic_cmdq_direct_resp(&func_to_io->cmdqs, HINIC_MOD_L2NIC, in write_rq_ctxts() 189 hinic_free_cmdq_buf(&func_to_io->cmdqs, &cmdq_buf); in write_rq_ctxts() 218 err = hinic_alloc_cmdq_buf(&func_to_io->cmdqs, &cmdq_buf); in hinic_clean_queue_offload_ctxt() 236 err = hinic_cmdq_direct_resp(&func_to_io->cmdqs, HINIC_MOD_L2NIC, in hinic_clean_queue_offload_ctxt() 247 hinic_free_cmdq_buf(&func_to_io->cmdqs, &cmdq_buf); in hinic_clean_queue_offload_ctxt() 584 err = hinic_init_cmdqs(&func_to_io->cmdqs, hwif, in hinic_io_init() [all …]
|
| H A D | hinic_port.c | 616 err = hinic_alloc_cmdq_buf(&func_to_io->cmdqs, &cmd_buf); in hinic_rss_set_indir_tbl() 641 err = hinic_cmdq_direct_resp(&func_to_io->cmdqs, HINIC_MOD_L2NIC, in hinic_rss_set_indir_tbl() 654 err = hinic_cmdq_direct_resp(&func_to_io->cmdqs, HINIC_MOD_L2NIC, in hinic_rss_set_indir_tbl() 663 hinic_free_cmdq_buf(&func_to_io->cmdqs, &cmd_buf); in hinic_rss_set_indir_tbl() 716 err = hinic_alloc_cmdq_buf(&func_to_io->cmdqs, &cmd_buf); in hinic_set_rss_type() 743 err = hinic_cmdq_direct_resp(&func_to_io->cmdqs, HINIC_MOD_L2NIC, in hinic_set_rss_type() 747 hinic_free_cmdq_buf(&func_to_io->cmdqs, &cmd_buf); in hinic_set_rss_type()
|
| H A D | hinic_hw_io.h | 86 struct hinic_cmdqs cmdqs; member
|
| /linux/Documentation/networking/device_drivers/ethernet/huawei/ |
| H A D | hinic3.rst | 117 that are initialized as a set (called cmdqs), each with its own type.
|