/Linux-v6.1/drivers/misc/habanalabs/common/ |
D | sysfs.c | 20 value = hl_fw_get_frequency(hdev, hdev->asic_prop.clk_pll_index, false); in clk_max_freq_mhz_show() 24 hdev->asic_prop.max_freq_value = value; in clk_max_freq_mhz_show() 47 hdev->asic_prop.max_freq_value = value * 1000 * 1000; in clk_max_freq_mhz_store() 49 hl_fw_set_frequency(hdev, hdev->asic_prop.clk_pll_index, hdev->asic_prop.max_freq_value); in clk_max_freq_mhz_store() 63 value = hl_fw_get_frequency(hdev, hdev->asic_prop.clk_pll_index, true); in clk_cur_freq_mhz_show() 84 cpucp_info = &hdev->asic_prop.cpucp_info; in vrm_ver_show() 105 return sprintf(buf, "%s\n", hdev->asic_prop.uboot_ver); in uboot_ver_show() 113 return sprintf(buf, "%s", hdev->asic_prop.cpucp_info.kernel_version); in armcp_kernel_ver_show() 121 return sprintf(buf, "%s\n", hdev->asic_prop.cpucp_info.cpucp_version); in armcp_ver_show() 130 le32_to_cpu(hdev->asic_prop.cpucp_info.cpld_version)); in cpld_ver_show() [all …]
|
D | asid.c | 14 hdev->asid_bitmap = bitmap_zalloc(hdev->asic_prop.max_asid, GFP_KERNEL); in hl_asid_init() 39 hdev->asic_prop.max_asid); in hl_asid_alloc() 40 if (found == hdev->asic_prop.max_asid) in hl_asid_alloc() 52 if (asid == HL_KERNEL_ASID_ID || asid >= hdev->asic_prop.max_asid) { in hl_asid_free()
|
D | context.c | 89 for (i = 0 ; i < hdev->asic_prop.max_pending_cs ; i++) in hl_ctx_fini() 201 ctx->cs_pending = kcalloc(hdev->asic_prop.max_pending_cs, in hl_ctx_init() 332 struct asic_fixed_properties *asic_prop = &ctx->hdev->asic_prop; in hl_ctx_get_fence_locked() local 338 if (seq + asic_prop->max_pending_cs < ctx->cs_sequence) in hl_ctx_get_fence_locked() 341 fence = ctx->cs_pending[seq & (asic_prop->max_pending_cs - 1)]; in hl_ctx_get_fence_locked()
|
D | device.c | 45 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_set_dram_bar() 190 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_dma_map_sgtable() 208 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_dma_unmap_sgtable() 720 if (hdev->asic_prop.completion_queues_count) { in device_early_init() 721 hdev->cq_wq = kcalloc(hdev->asic_prop.completion_queues_count, in device_early_init() 730 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) { in device_early_init() 822 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) in device_early_init() 863 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) in device_early_fini() 930 hdev->high_pll = hdev->asic_prop.high_pll; in device_late_init() 969 dc_power = hdev->asic_prop.dc_power_default; in hl_device_utilization() [all …]
|
D | hw_queue.c | 53 if (!hdev->asic_prop.max_queues || q->queue_type == QUEUE_TYPE_HW) in hl_hw_queue_update_ci() 61 for (i = 0 ; i < hdev->asic_prop.max_queues ; i++, q++) { in hl_hw_queue_update_ci() 382 offset = job->cs->sequence & (hdev->asic_prop.max_pending_cs - 1); in hw_queue_schedule_job() 650 max_queues = hdev->asic_prop.max_queues; in hl_hw_queue_schedule_cs() 708 (hdev->asic_prop.max_pending_cs - 1)] = cs; in hl_hw_queue_schedule_cs() 905 struct asic_fixed_properties *prop = &hdev->asic_prop; in sync_stream_queue_init() 1070 struct asic_fixed_properties *asic = &hdev->asic_prop; in hl_hw_queues_create() 1112 u32 max_queues = hdev->asic_prop.max_queues; in hl_hw_queues_destroy() 1124 u32 max_queues = hdev->asic_prop.max_queues; in hl_hw_queue_reset()
|
D | firmware_if.c | 251 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_send_cpu_message() 736 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_cpucp_info_get() 1049 struct asic_fixed_properties *prop = &hdev->asic_prop; in get_used_pll_index() 1239 if (hdev->asic_prop.dynamic_fw_load) { in hl_fw_ask_hard_reset_without_linux() 1260 if (hdev->asic_prop.dynamic_fw_load) { in hl_fw_ask_halt_machine_without_linux() 1384 prop = &hdev->asic_prop; in hl_fw_read_preboot_caps() 1427 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_static_read_device_fw_version() 1506 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_preboot_update_state() 1573 if (hdev->asic_prop.dynamic_fw_load) in hl_fw_read_preboot_status() 2061 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_dynamic_read_device_fw_version() [all …]
|
D | decoder.c | 85 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_dec_init() 122 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_dec_ctx_fini()
|
D | command_buffer.c | 20 struct asic_fixed_properties *prop = &hdev->asic_prop; in cb_map_mem() 191 cb_args->cb_size <= cb_args->hdev->asic_prop.cb_pool_cb_size) { in hl_cb_mmap_mem_alloc() 461 for (i = 0 ; i < hdev->asic_prop.cb_pool_cb_cnt ; i++) { in hl_cb_pool_init() 462 cb = hl_cb_alloc(hdev, hdev->asic_prop.cb_pool_cb_size, in hl_cb_pool_init() 491 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_cb_va_pool_init()
|
D | memory.c | 29 struct asic_fixed_properties *prop = &hdev->asic_prop; in set_alloc_page_size() 606 struct asic_fixed_properties *prop = &hdev->asic_prop; in get_va_block() 846 huge_page_size = ctx->hdev->asic_prop.pmmu_huge.page_size; in init_phys_pg_pack_from_userptr() 1100 u32 page_size = hdev->asic_prop.pmmu.page_size, in map_device_va() 1101 huge_page_size = hdev->asic_prop.pmmu_huge.page_size; in map_device_va() 1167 va_block_align = hdev->asic_prop.dmmu.page_size; in map_device_va() 1300 prop = &hdev->asic_prop; in unmap_device_va() 1335 hdev->asic_prop.pmmu.page_size) in unmap_device_va() 1557 prop = &hdev->asic_prop; in alloc_sgt_from_device_pages() 1850 prop = &hdev->asic_prop; in export_dmabuf_from_addr() [all …]
|
D | hwmon.c | 82 use_cpucp_enum = (hdev->asic_prop.fw_app_cpu_boot_dev_sts0 & in adjust_hwmon_flags() 253 use_cpucp_enum = (hdev->asic_prop.fw_app_cpu_boot_dev_sts0 & in hl_read() 401 bool use_cpucp_enum = (hdev->asic_prop.fw_app_cpu_boot_dev_sts0 & in hl_write() 818 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_set_power() 877 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_hwmon_init()
|
D | command_submission.c | 759 hdev->shadow_cs_queue[cs->sequence & (hdev->asic_prop.max_pending_cs - 1)] = NULL; in cs_do_release() 928 cs->jobs_in_queue_cnt = kcalloc(hdev->asic_prop.max_queues, in allocate_cs() 931 cs->jobs_in_queue_cnt = kcalloc(hdev->asic_prop.max_queues, in allocate_cs() 950 (hdev->asic_prop.max_pending_cs - 1)]; in allocate_cs() 979 (hdev->asic_prop.max_pending_cs - 1)] = in allocate_cs() 1025 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) in hl_cs_rollback_all() 1066 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_release_pending_user_interrupts() 1118 struct asic_fixed_properties *asic = &hdev->asic_prop; in validate_queue_index() 1930 if (q_idx >= hdev->asic_prop.max_queues) { in cs_ioctl_reserve_signals() 1937 hw_queue_prop = &hdev->asic_prop.hw_queues_props[q_idx]; in cs_ioctl_reserve_signals() [all …]
|
D | irq.c | 98 struct asic_fixed_properties *prop = &hdev->asic_prop; in cs_finish() 172 if (hdev->asic_prop.completion_mode == in hl_irq_handler_cq()
|
D | debugfs.c | 662 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_device_va() 685 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_device_internal_memory_va() 797 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_access_host_mem() 824 u64 host_start = hdev->asic_prop.host_base_address; in hl_access_mem() 825 u64 host_end = hdev->asic_prop.host_end_address; in hl_access_mem() 1296 if (!hdev->asic_prop.configurable_stop_on_err) in hl_stop_on_err_read() 1317 if (!hdev->asic_prop.configurable_stop_on_err) in hl_stop_on_err_write() 1782 if (!hdev->asic_prop.fw_security_enabled) in hl_debugfs_add_device()
|
D | habanalabs_ioctl.c | 50 struct asic_fixed_properties *prop = &hdev->asic_prop; in hw_ip_info() 151 struct asic_fixed_properties *prop = &hdev->asic_prop; in dram_usage_info() 433 struct asic_fixed_properties *prop = &hdev->asic_prop; in sync_manager_info() 660 info.page_order_bitmask = hdev->asic_prop.dmmu.supported_pages_mask; in dev_mem_alloc_page_sizes_info()
|
/Linux-v6.1/drivers/misc/habanalabs/common/mmu/ |
D | mmu_v2_hr.c | 48 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v2_hr_init() 66 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v2_hr_fini() 111 ctx->hdev->asic_prop.mmu_hop_table_size); in hl_mmu_v2_hr_ctx_fini() 126 prop = &hdev->asic_prop; in _hl_mmu_v2_hr_unmap() 153 ctx->hdev->asic_prop.mmu_hop_table_size); in _hl_mmu_v2_hr_unmap() 172 ctx->hdev->asic_prop.mmu_hop_table_size); in _hl_mmu_v2_hr_unmap() 175 ctx->hdev->asic_prop.mmu_hop_table_size)) in _hl_mmu_v2_hr_unmap() 179 ctx->hdev->asic_prop.mmu_hop_table_size); in _hl_mmu_v2_hr_unmap() 214 struct asic_fixed_properties *prop = &hdev->asic_prop; in _hl_mmu_v2_hr_map() 258 ctx->hdev->asic_prop.mmu_hop_table_size); in _hl_mmu_v2_hr_map() [all …]
|
D | mmu_v1.c | 34 hdev->asic_prop.mmu_hop_table_size); in _free_hop() 50 struct asic_fixed_properties *prop = &hdev->asic_prop; in alloc_hop() 89 return ctx->hdev->asic_prop.mmu_pgt_addr + in get_phys_hop0_addr() 90 (ctx->asid * ctx->hdev->asic_prop.mmu_hop_table_size); in get_phys_hop0_addr() 96 (ctx->asid * ctx->hdev->asic_prop.mmu_hop_table_size); in get_hop0_addr() 183 ctx->hdev->asic_prop.mmu_pte_size * ((virt_addr & mask) >> shift); in get_hop_pte_addr() 202 u64 page_mask = (ctx->hdev->asic_prop.mmu_hop_table_size - 1); in get_phys_addr() 218 struct asic_fixed_properties *prop = &hdev->asic_prop; in dram_default_mapping_init() 318 struct asic_fixed_properties *prop = &hdev->asic_prop; in dram_default_mapping_fini() 376 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v1_init() [all …]
|
D | mmu.c | 30 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_dram_va() 195 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_get_prop() 385 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_map_contiguous() 445 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_unmap_contiguous() 519 struct asic_fixed_properties *prop = &ctx->hdev->asic_prop; in hl_mmu_pa_page_with_offset() 600 prop = &hdev->asic_prop; in hl_mmu_get_tlb_info() 777 return hop_addr + ctx->hdev->asic_prop.mmu_pte_size * ((virt_addr & mask) >> shift); in hl_mmu_get_hop_pte_phys_addr() 810 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_hr_pool_destroy() 855 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_hr_init()
|
/Linux-v6.1/drivers/misc/habanalabs/common/pci/ |
D | pci.c | 207 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_iatu_write() 240 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_set_inbound_region() 303 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_set_outbound_region() 372 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_init() 397 if (hdev->asic_prop.iatu_done_by_fw) in hl_pci_init()
|
/Linux-v6.1/drivers/misc/habanalabs/goya/ |
D | goya.c | 362 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_set_fixed_properties() 564 if (hdev->asic_prop.iatu_done_by_fw) in goya_init_iatu() 610 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_early_init() 645 if (hdev->asic_prop.fw_security_enabled) { in goya_early_init() 646 hdev->asic_prop.iatu_done_by_fw = true; in goya_early_init() 658 hdev->asic_prop.iatu_done_by_fw = true; in goya_early_init() 692 kfree(hdev->asic_prop.hw_queues_props); in goya_early_init() 706 kfree(hdev->asic_prop.hw_queues_props); in goya_early_fini() 742 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_fetch_psoc_frequency() 747 if (hdev->asic_prop.fw_security_enabled) { in goya_fetch_psoc_frequency() [all …]
|
D | goya_coresight.c | 266 frequency = hdev->asic_prop.psoc_timestamp_frequency; in goya_config_stm() 365 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_etr_validate_address() 437 if (!hdev->asic_prop.fw_security_enabled) { in goya_config_etr()
|
D | goya_hwmgr.c | 370 cpucp_info = &hdev->asic_prop.cpucp_info; in infineon_ver_show()
|
/Linux-v6.1/drivers/misc/habanalabs/gaudi/ |
D | gaudi.c | 523 struct asic_fixed_properties *prop = &hdev->asic_prop; in set_default_power_values() 540 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi_set_fixed_properties() 733 if (hdev->asic_prop.iatu_done_by_fw) in gaudi_set_hbm_bar_base() 758 if (hdev->asic_prop.iatu_done_by_fw) in gaudi_init_iatu() 801 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi_early_init() 836 if (hdev->asic_prop.fw_security_enabled) { in gaudi_early_init() 837 hdev->asic_prop.iatu_done_by_fw = true; in gaudi_early_init() 843 hdev->asic_prop.gic_interrupts_enable = false; in gaudi_early_init() 855 hdev->asic_prop.iatu_done_by_fw = true; in gaudi_early_init() 882 kfree(hdev->asic_prop.hw_queues_props); in gaudi_early_init() [all …]
|
D | gaudi_coresight.c | 423 frequency = hdev->asic_prop.psoc_timestamp_frequency; in gaudi_config_stm() 531 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi_etr_validate_address() 632 if (!hdev->asic_prop.fw_security_enabled) { in gaudi_config_etr()
|
/Linux-v6.1/drivers/misc/habanalabs/gaudi2/ |
D | gaudi2.c | 1751 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_iterate_tpcs() 1796 struct asic_fixed_properties *prop = &hdev->asic_prop; in set_number_of_functional_hbms() 1829 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_dram_properties() 1884 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_fixed_properties() 2099 if (hdev->asic_prop.iatu_done_by_fw) in gaudi2_set_hbm_bar_base() 2125 if (hdev->asic_prop.iatu_done_by_fw) in gaudi2_init_iatu() 2189 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_tpc_binning_init_prop() 2210 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_tpc_binning_masks() 2268 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_dec_binning_masks() 2295 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_dram_binning_masks() [all …]
|
D | gaudi2_security.c | 2955 hdev->asic_prop.fw_security_enabled) in gaudi2_init_lbw_range_registers_secure() 3167 rr_cfg.max = hdev->asic_funcs->scramble_addr(hdev, hdev->asic_prop.dram_user_base_address); in gaudi2_init_mmu_range_registers() 3209 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_init_protection_bits() 3248 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_init_protection_bits() 3385 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_init_protection_bits() 3410 if (!hdev->asic_prop.fw_security_enabled) { in gaudi2_init_protection_bits() 3431 if (!hdev->asic_prop.fw_security_enabled) { in gaudi2_init_protection_bits() 3592 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_ack_protection_bits_errors() 3625 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_ack_protection_bits_errors() 3721 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_ack_protection_bits_errors() [all …]
|