Lines Matching refs:ena_dev
103 ret = ena_com_set_dev_mtu(adapter->ena_dev, new_mtu); in ena_change_mtu()
198 ring->ena_dev = adapter->ena_dev; in ena_init_io_rings_common()
209 struct ena_com_dev *ena_dev; in ena_init_io_rings() local
213 ena_dev = adapter->ena_dev; in ena_init_io_rings()
224 txr->tx_max_header_size = ena_dev->tx_max_header_size; in ena_init_io_rings()
225 txr->tx_mem_queue_type = ena_dev->tx_mem_queue_type; in ena_init_io_rings()
228 ena_com_get_nonadaptive_moderation_interval_tx(ena_dev); in ena_init_io_rings()
242 ena_com_get_nonadaptive_moderation_interval_rx(ena_dev); in ena_init_io_rings()
774 ena_com_destroy_io_queue(adapter->ena_dev, ena_qid); in ena_destroy_all_tx_queues()
787 ena_com_destroy_io_queue(adapter->ena_dev, ena_qid); in ena_destroy_all_rx_queues()
1401 rx_interval = ena_com_get_adaptive_moderation_enabled(rx_ring->ena_dev) ? in ena_unmask_interrupt()
1403 ena_com_get_nonadaptive_moderation_interval_rx(rx_ring->ena_dev); in ena_unmask_interrupt()
1509 if (ena_com_get_adaptive_moderation_enabled(rx_ring->ena_dev)) in ena_io_poll()
1535 ena_com_admin_q_comp_intr_handler(adapter->ena_dev); in ena_intr_msix_mgmnt()
1539 ena_com_aenq_intr_handler(adapter->ena_dev, data); in ena_intr_msix_mgmnt()
1833 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_rss_configure() local
1837 if (!ena_dev->rss.tbl_log_size) { in ena_rss_configure()
1846 rc = ena_com_indirect_table_set(ena_dev); in ena_rss_configure()
1851 rc = ena_com_set_hash_function(ena_dev); in ena_rss_configure()
1856 rc = ena_com_set_hash_ctrl(ena_dev); in ena_rss_configure()
1888 struct ena_com_dev *ena_dev; in ena_create_io_tx_queue() local
1894 ena_dev = adapter->ena_dev; in ena_create_io_tx_queue()
1904 ctx.mem_queue_type = ena_dev->tx_mem_queue_type; in ena_create_io_tx_queue()
1909 rc = ena_com_create_io_queue(ena_dev, &ctx); in ena_create_io_tx_queue()
1917 rc = ena_com_get_io_handlers(ena_dev, ena_qid, in ena_create_io_tx_queue()
1924 ena_com_destroy_io_queue(ena_dev, ena_qid); in ena_create_io_tx_queue()
1935 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_create_io_tx_queues_in_range() local
1948 ena_com_destroy_io_queue(ena_dev, ENA_IO_TXQ_IDX(i)); in ena_create_io_tx_queues_in_range()
1955 struct ena_com_dev *ena_dev; in ena_create_io_rx_queue() local
1962 ena_dev = adapter->ena_dev; in ena_create_io_rx_queue()
1977 rc = ena_com_create_io_queue(ena_dev, &ctx); in ena_create_io_rx_queue()
1985 rc = ena_com_get_io_handlers(ena_dev, ena_qid, in ena_create_io_rx_queue()
1999 ena_com_destroy_io_queue(ena_dev, ena_qid); in ena_create_io_rx_queue()
2005 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_create_all_io_rx_queues() local
2023 ena_com_destroy_io_queue(ena_dev, ENA_IO_RXQ_IDX(i)); in ena_create_all_io_rx_queues()
2165 if (ena_com_interrupt_moderation_supported(adapter->ena_dev)) in ena_up()
2166 ena_com_enable_adaptive_moderation(adapter->ena_dev); in ena_up()
2234 rc = ena_com_dev_reset(adapter->ena_dev, adapter->reset_reason); in ena_down()
2239 ena_com_set_admin_running_state(adapter->ena_dev, false); in ena_down()
2343 large_llq_changed = adapter->ena_dev->tx_mem_queue_type == in ena_update_queue_params()
2346 new_llq_header_len != adapter->ena_dev->tx_max_header_size; in ena_update_queue_params()
2379 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_update_queue_count() local
2406 ena_com_rss_destroy(ena_dev); in ena_update_queue_count()
2702 static void ena_config_host_info(struct ena_com_dev *ena_dev, struct pci_dev *pdev) in ena_config_host_info() argument
2710 rc = ena_com_allocate_host_info(ena_dev); in ena_config_host_info()
2716 host_info = ena_dev->host_attr.host_info; in ena_config_host_info()
2748 rc = ena_com_set_host_attributes(ena_dev); in ena_config_host_info()
2761 ena_com_delete_host_info(ena_dev); in ena_config_host_info()
2779 rc = ena_com_allocate_debug_area(adapter->ena_dev, debug_area_size); in ena_config_debug_area()
2786 rc = ena_com_set_host_attributes(adapter->ena_dev); in ena_config_debug_area()
2798 ena_com_delete_debug_area(adapter->ena_dev); in ena_config_debug_area()
2886 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_calc_io_queue_size() local
2901 if (ena_dev->supported_features & BIT(ENA_ADMIN_MAX_QUEUES_EXT)) { in ena_calc_io_queue_size()
2908 if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) in ena_calc_io_queue_size()
2926 if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) in ena_calc_io_queue_size()
2959 ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) { in ena_calc_io_queue_size()
3015 struct ena_com_dev *ena_dev = adapter->ena_dev; in set_default_llq_configurations() local
3022 !!(ena_dev->supported_features & BIT(ENA_ADMIN_LLQ)); in set_default_llq_configurations()
3038 struct ena_com_dev *ena_dev, in ena_set_queues_placement_policy() argument
3046 if (!(ena_dev->supported_features & llq_feature_mask)) { in ena_set_queues_placement_policy()
3049 ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; in ena_set_queues_placement_policy()
3053 if (!ena_dev->mem_bar) { in ena_set_queues_placement_policy()
3054 netdev_err(ena_dev->net_device, in ena_set_queues_placement_policy()
3056 ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; in ena_set_queues_placement_policy()
3060 rc = ena_com_config_dev_mode(ena_dev, llq, llq_default_configurations); in ena_set_queues_placement_policy()
3064 ena_dev->tx_mem_queue_type = ENA_ADMIN_PLACEMENT_POLICY_HOST; in ena_set_queues_placement_policy()
3070 static int ena_map_llq_mem_bar(struct pci_dev *pdev, struct ena_com_dev *ena_dev, in ena_map_llq_mem_bar() argument
3078 ena_dev->mem_bar = devm_ioremap_wc(&pdev->dev, in ena_map_llq_mem_bar()
3082 if (!ena_dev->mem_bar) in ena_map_llq_mem_bar()
3092 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_device_init() local
3101 rc = ena_com_mmio_reg_read_request_init(ena_dev); in ena_device_init()
3111 ena_com_set_mmio_read_mode(ena_dev, readless_supported); in ena_device_init()
3113 rc = ena_com_dev_reset(ena_dev, ENA_REGS_RESET_NORMAL); in ena_device_init()
3119 rc = ena_com_validate_version(ena_dev); in ena_device_init()
3125 dma_width = ena_com_get_dma_width(ena_dev); in ena_device_init()
3139 rc = ena_com_admin_init(ena_dev, &aenq_handlers); in ena_device_init()
3150 ena_com_set_admin_polling_mode(ena_dev, true); in ena_device_init()
3152 ena_config_host_info(ena_dev, pdev); in ena_device_init()
3155 rc = ena_com_get_dev_attr_feat(ena_dev, get_feat_ctx); in ena_device_init()
3170 rc = ena_com_set_aenq_config(ena_dev, aenq_groups); in ena_device_init()
3180 rc = ena_set_queues_placement_policy(pdev, ena_dev, &get_feat_ctx->llq, in ena_device_init()
3194 ena_com_abort_admin_commands(ena_dev); in ena_device_init()
3195 ena_com_wait_for_abort_completion(ena_dev); in ena_device_init()
3196 ena_com_delete_host_info(ena_dev); in ena_device_init()
3197 ena_com_admin_destroy(ena_dev); in ena_device_init()
3199 ena_com_mmio_reg_read_request_destroy(ena_dev); in ena_device_init()
3206 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_enable_msix_and_set_admin_interrupts() local
3224 ena_com_set_admin_polling_mode(ena_dev, false); in ena_enable_msix_and_set_admin_interrupts()
3226 ena_com_admin_aenq_enable(ena_dev); in ena_enable_msix_and_set_admin_interrupts()
3239 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_destroy_device() local
3253 ena_com_set_admin_running_state(ena_dev, false); in ena_destroy_device()
3262 rc = ena_com_dev_reset(adapter->ena_dev, adapter->reset_reason); in ena_destroy_device()
3268 ena_com_abort_admin_commands(ena_dev); in ena_destroy_device()
3270 ena_com_wait_for_abort_completion(ena_dev); in ena_destroy_device()
3272 ena_com_admin_destroy(ena_dev); in ena_destroy_device()
3274 ena_com_mmio_reg_read_request_destroy(ena_dev); in ena_destroy_device()
3288 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_restore_device() local
3305 txr->tx_mem_queue_type = ena_dev->tx_mem_queue_type; in ena_restore_device()
3306 txr->tx_max_header_size = ena_dev->tx_max_header_size; in ena_restore_device()
3343 ena_com_abort_admin_commands(ena_dev); in ena_restore_device()
3344 ena_com_wait_for_abort_completion(ena_dev); in ena_restore_device()
3345 ena_com_admin_destroy(ena_dev); in ena_restore_device()
3346 ena_com_dev_reset(ena_dev, ENA_REGS_RESET_DRIVER_INVALID_STATE); in ena_restore_device()
3347 ena_com_mmio_reg_read_request_destroy(ena_dev); in ena_restore_device()
3612 if (unlikely(!ena_com_get_admin_running_state(adapter->ena_dev))) { in check_for_admin_com_state()
3627 adapter->ena_dev->admin_queue.completion_timeout = in ena_update_hints()
3632 adapter->ena_dev->mmio_read.reg_read_to = in ena_update_hints()
3671 u8 *debug_area = adapter->ena_dev->host_attr.debug_area_virt_addr; in ena_timer_service()
3673 adapter->ena_dev->host_attr.host_info; in ena_timer_service()
3702 struct ena_com_dev *ena_dev, in ena_calc_max_io_queue_num() argument
3707 if (ena_dev->supported_features & BIT(ENA_ADMIN_MAX_QUEUES_EXT)) { in ena_calc_max_io_queue_num()
3724 if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) in ena_calc_max_io_queue_num()
3802 struct ena_com_dev *ena_dev = adapter->ena_dev; in ena_rss_init_default() local
3807 rc = ena_com_rss_init(ena_dev, ENA_RX_RSS_TABLE_LOG_SIZE); in ena_rss_init_default()
3815 rc = ena_com_indirect_table_fill_entry(ena_dev, i, in ena_rss_init_default()
3823 rc = ena_com_fill_hash_function(ena_dev, ENA_ADMIN_TOEPLITZ, NULL, ENA_HASH_KEY_SIZE, in ena_rss_init_default()
3830 rc = ena_com_set_default_hash_ctrl(ena_dev); in ena_rss_init_default()
3839 ena_com_rss_destroy(ena_dev); in ena_rss_init_default()
3845 static void ena_release_bars(struct ena_com_dev *ena_dev, struct pci_dev *pdev) in ena_release_bars() argument
3865 struct ena_com_dev *ena_dev = NULL; in ena_probe() local
3889 ena_dev = vzalloc(sizeof(*ena_dev)); in ena_probe()
3890 if (!ena_dev) { in ena_probe()
3903 ena_dev->reg_bar = devm_ioremap(&pdev->dev, in ena_probe()
3906 if (!ena_dev->reg_bar) { in ena_probe()
3912 ena_dev->ena_min_poll_delay_us = ENA_ADMIN_POLL_DELAY_US; in ena_probe()
3914 ena_dev->dmadev = &pdev->dev; in ena_probe()
3925 adapter->ena_dev = ena_dev; in ena_probe()
3930 ena_dev->net_device = netdev; in ena_probe()
3934 rc = ena_com_allocate_customer_metrics_buffer(ena_dev); in ena_probe()
3940 rc = ena_map_llq_mem_bar(pdev, ena_dev, bars); in ena_probe()
3957 ena_dev->intr_moder_tx_interval = ENA_INTR_INITIAL_TX_INTERVAL_USECS; in ena_probe()
3958 ena_dev->intr_moder_rx_interval = ENA_INTR_INITIAL_RX_INTERVAL_USECS; in ena_probe()
3959 ena_dev->intr_delay_resolution = ENA_DEFAULT_INTR_DELAY_RESOLUTION; in ena_probe()
3960 max_num_io_queues = ena_calc_max_io_queue_num(pdev, ena_dev, &get_feat_ctx); in ena_probe()
3978 if (ena_dev->tx_mem_queue_type == ENA_ADMIN_PLACEMENT_POLICY_DEV) in ena_probe()
3987 rc = ena_com_init_interrupt_moderation(adapter->ena_dev); in ena_probe()
4059 ena_com_delete_debug_area(ena_dev); in ena_probe()
4060 ena_com_rss_destroy(ena_dev); in ena_probe()
4062 ena_com_dev_reset(ena_dev, ENA_REGS_RESET_INIT_ERR); in ena_probe()
4064 ena_com_set_admin_running_state(ena_dev, false); in ena_probe()
4070 ena_com_delete_host_info(ena_dev); in ena_probe()
4071 ena_com_admin_destroy(ena_dev); in ena_probe()
4073 ena_com_delete_customer_metrics_buffer(ena_dev); in ena_probe()
4077 ena_release_bars(ena_dev, pdev); in ena_probe()
4079 vfree(ena_dev); in ena_probe()
4098 struct ena_com_dev *ena_dev; in __ena_shutoff() local
4101 ena_dev = adapter->ena_dev; in __ena_shutoff()
4131 ena_com_rss_destroy(ena_dev); in __ena_shutoff()
4133 ena_com_delete_debug_area(ena_dev); in __ena_shutoff()
4135 ena_com_delete_host_info(ena_dev); in __ena_shutoff()
4137 ena_com_delete_customer_metrics_buffer(ena_dev); in __ena_shutoff()
4139 ena_release_bars(ena_dev, pdev); in __ena_shutoff()
4143 vfree(ena_dev); in __ena_shutoff()