Lines Matching refs:ena_dev

114 	ret = ena_com_set_dev_mtu(adapter->ena_dev, new_mtu);  in ena_change_mtu()
160 ring->ena_dev = adapter->ena_dev; in ena_init_io_rings_common()
171 struct ena_com_dev *ena_dev; in ena_init_io_rings() local
175 ena_dev = adapter->ena_dev; in ena_init_io_rings()
187 txr->tx_max_header_size = ena_dev->tx_max_header_size; in ena_init_io_rings()
188 txr->tx_mem_queue_type = ena_dev->tx_mem_queue_type; in ena_init_io_rings()
191 ena_com_get_nonadaptive_moderation_interval_tx(ena_dev); in ena_init_io_rings()
198 ena_com_get_nonadaptive_moderation_interval_rx(ena_dev); in ena_init_io_rings()
674 ena_com_destroy_io_queue(adapter->ena_dev, ena_qid); in ena_destroy_all_tx_queues()
685 ena_com_destroy_io_queue(adapter->ena_dev, ena_qid); in ena_destroy_all_rx_queues()
1136 ena_com_calculate_interrupt_delay(rx_ring->ena_dev, in ena_adjust_intr_moderation()
1236 if (ena_com_get_adaptive_moderation_enabled(rx_ring->ena_dev)) in ena_io_poll()
1261 ena_com_admin_q_comp_intr_handler(adapter->ena_dev); in ena_intr_msix_mgmnt()
1265 ena_com_aenq_intr_handler(adapter->ena_dev, data); in ena_intr_msix_mgmnt()
1539 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_rss_configure() local
1543 if (!ena_dev->rss.tbl_log_size) { in ena_rss_configure()
1553 rc = ena_com_indirect_table_set(ena_dev); in ena_rss_configure()
1558 rc = ena_com_set_hash_function(ena_dev); in ena_rss_configure()
1563 rc = ena_com_set_hash_ctrl(ena_dev); in ena_rss_configure()
1595 struct ena_com_dev *ena_dev; in ena_create_io_tx_queue() local
1601 ena_dev = adapter->ena_dev; in ena_create_io_tx_queue()
1609 ctx.mem_queue_type = ena_dev->tx_mem_queue_type; in ena_create_io_tx_queue()
1614 rc = ena_com_create_io_queue(ena_dev, &ctx); in ena_create_io_tx_queue()
1622 rc = ena_com_get_io_handlers(ena_dev, ena_qid, in ena_create_io_tx_queue()
1629 ena_com_destroy_io_queue(ena_dev, ena_qid); in ena_create_io_tx_queue()
1639 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_create_all_io_tx_queues() local
1652 ena_com_destroy_io_queue(ena_dev, ENA_IO_TXQ_IDX(i)); in ena_create_all_io_tx_queues()
1659 struct ena_com_dev *ena_dev; in ena_create_io_rx_queue() local
1666 ena_dev = adapter->ena_dev; in ena_create_io_rx_queue()
1679 rc = ena_com_create_io_queue(ena_dev, &ctx); in ena_create_io_rx_queue()
1687 rc = ena_com_get_io_handlers(ena_dev, ena_qid, in ena_create_io_rx_queue()
1694 ena_com_destroy_io_queue(ena_dev, ena_qid); in ena_create_io_rx_queue()
1705 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_create_all_io_rx_queues() local
1718 ena_com_destroy_io_queue(ena_dev, ENA_IO_RXQ_IDX(i)); in ena_create_all_io_rx_queues()
1824 rc = ena_com_dev_reset(adapter->ena_dev, adapter->reset_reason); in ena_down()
2210 static void ena_config_host_info(struct ena_com_dev *ena_dev) in ena_config_host_info() argument
2216 rc = ena_com_allocate_host_info(ena_dev); in ena_config_host_info()
2222 host_info = ena_dev->host_attr.host_info; in ena_config_host_info()
2236 rc = ena_com_set_host_attributes(ena_dev); in ena_config_host_info()
2249 ena_com_delete_host_info(ena_dev); in ena_config_host_info()
2267 rc = ena_com_allocate_debug_area(adapter->ena_dev, debug_area_size); in ena_config_debug_area()
2273 rc = ena_com_set_host_attributes(adapter->ena_dev); in ena_config_debug_area()
2286 ena_com_delete_debug_area(adapter->ena_dev); in ena_config_debug_area()
2390 static int ena_device_init(struct ena_com_dev *ena_dev, struct pci_dev *pdev, in ena_device_init() argument
2400 rc = ena_com_mmio_reg_read_request_init(ena_dev); in ena_device_init()
2410 ena_com_set_mmio_read_mode(ena_dev, readless_supported); in ena_device_init()
2412 rc = ena_com_dev_reset(ena_dev, ENA_REGS_RESET_NORMAL); in ena_device_init()
2418 rc = ena_com_validate_version(ena_dev); in ena_device_init()
2424 dma_width = ena_com_get_dma_width(ena_dev); in ena_device_init()
2445 rc = ena_com_admin_init(ena_dev, &aenq_handlers, true); in ena_device_init()
2456 ena_com_set_admin_polling_mode(ena_dev, true); in ena_device_init()
2458 ena_config_host_info(ena_dev); in ena_device_init()
2461 rc = ena_com_get_dev_attr_feat(ena_dev, get_feat_ctx); in ena_device_init()
2476 rc = ena_com_set_aenq_config(ena_dev, aenq_groups); in ena_device_init()
2487 ena_com_delete_host_info(ena_dev); in ena_device_init()
2488 ena_com_admin_destroy(ena_dev); in ena_device_init()
2490 ena_com_mmio_reg_read_request_destroy(ena_dev); in ena_device_init()
2498 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_enable_msix_and_set_admin_interrupts() local
2516 ena_com_set_admin_polling_mode(ena_dev, false); in ena_enable_msix_and_set_admin_interrupts()
2518 ena_com_admin_aenq_enable(ena_dev); in ena_enable_msix_and_set_admin_interrupts()
2531 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_destroy_device() local
2545 ena_com_set_admin_running_state(ena_dev, false); in ena_destroy_device()
2556 ena_com_dev_reset(adapter->ena_dev, adapter->reset_reason); in ena_destroy_device()
2562 ena_com_abort_admin_commands(ena_dev); in ena_destroy_device()
2564 ena_com_wait_for_abort_completion(ena_dev); in ena_destroy_device()
2566 ena_com_admin_destroy(ena_dev); in ena_destroy_device()
2568 ena_com_mmio_reg_read_request_destroy(ena_dev); in ena_destroy_device()
2579 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_restore_device() local
2585 rc = ena_device_init(ena_dev, adapter->pdev, &get_feat_ctx, &wd_state); in ena_restore_device()
2627 ena_com_abort_admin_commands(ena_dev); in ena_restore_device()
2628 ena_com_wait_for_abort_completion(ena_dev); in ena_restore_device()
2629 ena_com_admin_destroy(ena_dev); in ena_restore_device()
2630 ena_com_mmio_reg_read_request_destroy(ena_dev); in ena_restore_device()
2631 ena_com_dev_reset(ena_dev, ENA_REGS_RESET_DRIVER_INVALID_STATE); in ena_restore_device()
2860 if (unlikely(!ena_com_get_admin_running_state(adapter->ena_dev))) { in check_for_admin_com_state()
2877 adapter->ena_dev->admin_queue.completion_timeout = in ena_update_hints()
2882 adapter->ena_dev->mmio_read.reg_read_to = in ena_update_hints()
2921 u8 *debug_area = adapter->ena_dev->host_attr.debug_area_virt_addr; in ena_timer_service()
2923 adapter->ena_dev->host_attr.host_info; in ena_timer_service()
2952 struct ena_com_dev *ena_dev, in ena_calc_io_queue_num() argument
2958 if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) { in ena_calc_io_queue_num()
2965 ena_dev->tx_mem_queue_type = in ena_calc_io_queue_num()
2987 static void ena_set_push_mode(struct pci_dev *pdev, struct ena_com_dev *ena_dev, in ena_set_push_mode() argument
2996 ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_DEV; in ena_set_push_mode()
2998 ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; in ena_set_push_mode()
3066 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_rss_init_default() local
3071 rc = ena_com_rss_init(ena_dev, ENA_RX_RSS_TABLE_LOG_SIZE); in ena_rss_init_default()
3079 rc = ena_com_indirect_table_fill_entry(ena_dev, i, in ena_rss_init_default()
3087 rc = ena_com_fill_hash_function(ena_dev, ENA_ADMIN_CRC32, NULL, in ena_rss_init_default()
3094 rc = ena_com_set_default_hash_ctrl(ena_dev); in ena_rss_init_default()
3103 ena_com_rss_destroy(ena_dev); in ena_rss_init_default()
3109 static void ena_release_bars(struct ena_com_dev *ena_dev, struct pci_dev *pdev) in ena_release_bars() argument
3117 struct ena_com_dev *ena_dev, in ena_calc_queue_size() argument
3129 if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) in ena_calc_queue_size()
3164 struct ena_com_dev *ena_dev = NULL; in ena_probe() local
3185 ena_dev = vzalloc(sizeof(*ena_dev)); in ena_probe()
3186 if (!ena_dev) { in ena_probe()
3199 ena_dev->reg_bar = devm_ioremap(&pdev->dev, in ena_probe()
3202 if (!ena_dev->reg_bar) { in ena_probe()
3208 ena_dev->dmadev = &pdev->dev; in ena_probe()
3210 rc = ena_device_init(ena_dev, pdev, &get_feat_ctx, &wd_state); in ena_probe()
3218 ena_set_push_mode(pdev, ena_dev, &get_feat_ctx); in ena_probe()
3220 if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) { in ena_probe()
3221 ena_dev->mem_bar = devm_ioremap_wc(&pdev->dev, in ena_probe()
3224 if (!ena_dev->mem_bar) { in ena_probe()
3233 ena_dev->intr_moder_tx_interval = ENA_INTR_INITIAL_TX_INTERVAL_USECS; in ena_probe()
3234 io_queue_num = ena_calc_io_queue_num(pdev, ena_dev, &get_feat_ctx); in ena_probe()
3235 queue_size = ena_calc_queue_size(pdev, ena_dev, &tx_sgl_size, in ena_probe()
3258 adapter->ena_dev = ena_dev; in ena_probe()
3281 rc = ena_com_init_interrupt_moderation(adapter->ena_dev); in ena_probe()
3344 ena_com_delete_debug_area(ena_dev); in ena_probe()
3345 ena_com_rss_destroy(ena_dev); in ena_probe()
3347 ena_com_dev_reset(ena_dev, ENA_REGS_RESET_INIT_ERR); in ena_probe()
3351 ena_com_destroy_interrupt_moderation(ena_dev); in ena_probe()
3356 ena_com_delete_host_info(ena_dev); in ena_probe()
3357 ena_com_admin_destroy(ena_dev); in ena_probe()
3359 ena_release_bars(ena_dev, pdev); in ena_probe()
3361 vfree(ena_dev); in ena_probe()
3378 struct ena_com_dev *ena_dev; in ena_remove() local
3381 ena_dev = adapter->ena_dev; in ena_remove()
3408 ena_com_rss_destroy(ena_dev); in ena_remove()
3410 ena_com_delete_debug_area(ena_dev); in ena_remove()
3412 ena_com_delete_host_info(ena_dev); in ena_remove()
3414 ena_release_bars(ena_dev, pdev); in ena_remove()
3418 ena_com_destroy_interrupt_moderation(ena_dev); in ena_remove()
3420 vfree(ena_dev); in ena_remove()