| /linux-6.15/drivers/accel/habanalabs/common/ |
| H A D | sysfs.c | 25 hdev->asic_prop.max_freq_value = value; in clk_max_freq_mhz_show() 48 hdev->asic_prop.max_freq_value = value * 1000 * 1000; in clk_max_freq_mhz_store() 50 hl_fw_set_frequency(hdev, hdev->asic_prop.clk_pll_index, hdev->asic_prop.max_freq_value); in clk_max_freq_mhz_store() 90 cpucp_info = &hdev->asic_prop.cpucp_info; in vrm_ver_show() 121 return sprintf(buf, "%s\n", hdev->asic_prop.uboot_ver); in uboot_ver_show() 146 le32_to_cpu(hdev->asic_prop.cpucp_info.cpld_timestamp), in cpld_ver_show() 147 le32_to_cpu(hdev->asic_prop.cpucp_info.cpld_version)); in cpld_ver_show() 213 if (!hdev->asic_prop.allow_inference_soft_reset) { in soft_reset_store() 524 hdev->max_power = hdev->asic_prop.max_power_default; in hl_sysfs_init() 535 if (!hdev->asic_prop.allow_inference_soft_reset) in hl_sysfs_init() [all …]
|
| H A 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()
|
| H A D | context.c | 99 for (i = 0 ; i < hdev->asic_prop.max_pending_cs ; i++) in hl_ctx_fini() 212 ctx->cs_pending = kcalloc(hdev->asic_prop.max_pending_cs, in hl_ctx_init() 346 struct asic_fixed_properties *asic_prop = &ctx->hdev->asic_prop; in hl_ctx_get_fence_locked() local 352 if (seq + asic_prop->max_pending_cs < ctx->cs_sequence) in hl_ctx_get_fence_locked() 355 fence = ctx->cs_pending[seq & (asic_prop->max_pending_cs - 1)]; in hl_ctx_get_fence_locked()
|
| H A D | device.c | 54 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_set_dram_bar() 197 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_dma_map_sgtable_caller() 894 if (hdev->asic_prop.completion_queues_count) { in device_early_init() 1189 hdev->high_pll = hdev->asic_prop.high_pll; in device_late_init() 1218 dc_power = hdev->asic_prop.dc_power_default; in hl_device_utilization() 1936 if (!hdev->asic_prop.fw_security_enabled) in hl_device_reset() 2173 hdev->asic_prop.user_interrupt_count; in hl_device_init() 2235 cq_cnt = hdev->asic_prop.completion_queues_count; in hl_device_init() 2371 hdev->asic_prop.dram_size / SZ_1G); in hl_device_init() 2404 !hdev->asic_prop.fw_security_enabled) in hl_device_init() [all …]
|
| H A D | firmware_if.c | 408 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_send_cpu_message() 863 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_cpucp_info_get() 1180 struct asic_fixed_properties *prop = &hdev->asic_prop; in get_used_pll_index() 1374 if (hdev->asic_prop.dynamic_fw_load) { in hl_fw_ask_hard_reset_without_linux() 1397 if (hdev->asic_prop.dynamic_fw_load) { in hl_fw_ask_halt_machine_without_linux() 1560 prop = &hdev->asic_prop; in hl_fw_read_preboot_caps() 1749 if (hdev->asic_prop.dynamic_fw_load) in hl_fw_read_preboot_status() 2469 if (!hdev->asic_prop.gic_interrupts_enable && in hl_fw_dynamic_update_linux_interrupt_if() 2470 !(hdev->asic_prop.fw_app_cpu_boot_dev_sts0 & in hl_fw_dynamic_update_linux_interrupt_if() 2789 hdev->asic_prop.reserved_fw_mem_size = in hl_fw_dynamic_init_cpu() [all …]
|
| H A 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() 393 offset = job->cs->sequence & (hdev->asic_prop.max_pending_cs - 1); in hw_queue_schedule_job() 661 max_queues = hdev->asic_prop.max_queues; in hl_hw_queue_schedule_cs() 719 (hdev->asic_prop.max_pending_cs - 1)] = cs; in hl_hw_queue_schedule_cs() 916 struct asic_fixed_properties *prop = &hdev->asic_prop; in sync_stream_queue_init() 1081 struct asic_fixed_properties *asic = &hdev->asic_prop; in hl_hw_queues_create() 1129 u32 max_queues = hdev->asic_prop.max_queues; in hl_hw_queues_destroy() 1141 u32 max_queues = hdev->asic_prop.max_queues; in hl_hw_queue_reset()
|
| H A D | decoder.c | 93 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_dec_init() 130 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_dec_ctx_fini()
|
| H A D | command_buffer.c | 20 struct asic_fixed_properties *prop = &hdev->asic_prop; in cb_map_mem() 195 cb_args->cb_size <= cb_args->hdev->asic_prop.cb_pool_cb_size) { in hl_cb_mmap_mem_alloc() 483 for (i = 0 ; i < hdev->asic_prop.cb_pool_cb_cnt ; i++) { in hl_cb_pool_init() 484 cb = hl_cb_alloc(hdev, hdev->asic_prop.cb_pool_cb_size, in hl_cb_pool_init() 513 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_cb_va_pool_init()
|
| H A D | security.c | 640 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_automated_get_block_base_addr() 690 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_read_glbl_errors() 725 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_check_for_glbl_errors() 752 block_info_arr = hdev->asic_prop.special_blocks; in hl_iterate_special_blocks() 756 num_blocks = hdev->asic_prop.num_of_special_blocks; in hl_iterate_special_blocks()
|
| H A D | memory.c | 31 struct asic_fixed_properties *prop = &hdev->asic_prop; in set_alloc_page_size() 600 struct asic_fixed_properties *prop = &hdev->asic_prop; in get_va_block() 1074 u32 page_size = hdev->asic_prop.pmmu.page_size, in map_device_va() 1139 va_block_align = hdev->asic_prop.dmmu.page_size; in map_device_va() 1286 prop = &hdev->asic_prop; in unmap_device_va() 1322 hdev->asic_prop.pmmu.page_size) in unmap_device_va() 1540 struct asic_fixed_properties *prop = &hdev->asic_prop; in alloc_sgt_from_device_pages() 2045 prop = &hdev->asic_prop; in export_dmabuf_from_addr() 2233 if (!hdev->asic_prop.dram_supports_virtual_memory) { in hl_mem_ioctl() 2262 if (!hdev->asic_prop.dram_supports_virtual_memory) { in hl_mem_ioctl() [all …]
|
| H A D | command_submission.c | 972 (hdev->asic_prop.max_pending_cs - 1)]; in allocate_cs() 1001 (hdev->asic_prop.max_pending_cs - 1)] = in allocate_cs() 1120 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_release_pending_user_interrupts() 1208 struct asic_fixed_properties *asic = &hdev->asic_prop; in validate_queue_index() 2024 if (q_idx >= hdev->asic_prop.max_queues) { in cs_ioctl_reserve_signals() 2232 if (chunk->queue_index >= hdev->asic_prop.max_queues) { in cs_ioctl_signal_wait() 2470 if (!hdev->asic_prop.supports_engine_modes) in cs_ioctl_engine_cores() 2508 if (!hdev->asic_prop.supports_engine_modes) in cs_ioctl_engines() 2518 max_num_of_engines = hdev->asic_prop.num_engine_cores; in cs_ioctl_engines() 2545 struct asic_fixed_properties *prop = &hdev->asic_prop; in cs_ioctl_flush_pci_hbw_writes() [all …]
|
| H A D | hwmon.c | 82 use_cpucp_enum = (hdev->asic_prop.fw_app_cpu_boot_dev_sts0 & in adjust_hwmon_flags() 254 use_cpucp_enum = (hdev->asic_prop.fw_app_cpu_boot_dev_sts0 & in hl_read() 402 bool use_cpucp_enum = (hdev->asic_prop.fw_app_cpu_boot_dev_sts0 & in hl_write() 815 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_set_power() 874 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_hwmon_init()
|
| H A D | irq.c | 101 struct asic_fixed_properties *prop = &hdev->asic_prop; in cs_finish() 177 if (hdev->asic_prop.completion_mode == in hl_irq_handler_cq() 655 u32 size = hdev->asic_prop.fw_event_queue_size ? : HL_EQ_SIZE_IN_BYTES; in hl_eq_init()
|
| H A D | debugfs.c | 640 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_device_va() 660 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_device_internal_memory_va() 769 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_access_host_mem() 796 u64 host_start = hdev->asic_prop.host_base_address; in hl_access_mem() 797 u64 host_end = hdev->asic_prop.host_end_address; in hl_access_mem() 1268 if (!hdev->asic_prop.configurable_stop_on_err) in hl_stop_on_err_read() 1289 if (!hdev->asic_prop.configurable_stop_on_err) in hl_stop_on_err_write() 1723 &hdev->asic_prop.server_type); in add_files_to_device() 1793 if (!hdev->asic_prop.fw_security_enabled) in hl_debugfs_add_device()
|
| /linux-6.15/drivers/accel/habanalabs/common/mmu/ |
| H A D | mmu_v2_hr.c | 48 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v2_hr_init() 111 ctx->hdev->asic_prop.pmmu.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.pmmu.hop_table_size); in _hl_mmu_v2_hr_unmap() 172 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_unmap() 175 ctx->hdev->asic_prop.pmmu.hop_table_size)) in _hl_mmu_v2_hr_unmap() 179 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_unmap() 258 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_map() 271 ctx->hdev->asic_prop.pmmu.hop_table_size), in _hl_mmu_v2_hr_map() 282 ctx->hdev->asic_prop.pmmu.hop_table_size); in _hl_mmu_v2_hr_map() [all …]
|
| H A D | mmu.c | 31 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_dram_va() 196 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_get_prop() 386 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_map_contiguous() 446 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_unmap_contiguous() 561 prop = &hdev->asic_prop; in hl_mmu_get_tlb_info() 589 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_if_set_funcs() 782 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_hr_pool_destroy() 827 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_hr_init() 1243 hdev->asic_prop.dmmu.hop_table_size); in hl_mmu_dr_free_pgt_node() 1251 return ctx->hdev->asic_prop.mmu_pgt_addr + in hl_mmu_dr_get_phys_hop0_addr() [all …]
|
| H A D | mmu_v1.c | 23 ctx->hdev->asic_prop.mmu_pte_size * ((virt_addr & mask) >> shift); in get_hop_pte_addr() 29 struct asic_fixed_properties *prop = &hdev->asic_prop; in dram_default_mapping_init() 129 struct asic_fixed_properties *prop = &hdev->asic_prop; in dram_default_mapping_fini() 224 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v1_unmap() 328 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v1_map() 457 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v1_get_tlb_info()
|
| H A D | mmu_v2.c | 62 struct asic_fixed_properties *prop = &ctx->hdev->asic_prop; in hl_mmu_v2_unmap() 135 struct asic_fixed_properties *prop = &ctx->hdev->asic_prop; in hl_mmu_v2_map() 247 struct asic_fixed_properties *prop = &ctx->hdev->asic_prop; in hl_mmu_v2_get_tlb_info()
|
| /linux-6.15/drivers/accel/habanalabs/common/pci/ |
| H A D | pci.c | 215 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_iatu_write() 248 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_set_inbound_region() 311 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_set_outbound_region() 380 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_pci_init() 405 if (hdev->asic_prop.iatu_done_by_fw) in hl_pci_init()
|
| /linux-6.15/drivers/accel/habanalabs/goya/ |
| H A D | goya.c | 564 if (hdev->asic_prop.iatu_done_by_fw) in goya_init_iatu() 646 hdev->asic_prop.iatu_done_by_fw = true; in goya_early_init() 697 kfree(hdev->asic_prop.hw_queues_props); in goya_early_init() 711 kfree(hdev->asic_prop.hw_queues_props); in goya_early_fini() 3577 hdev->asic_prop.pmmu.start_addr, in goya_validate_dma_pkt_mmu() 3578 hdev->asic_prop.pmmu.end_addr)) { in goya_validate_dma_pkt_mmu() 4100 struct asic_fixed_properties *asic_prop = &hdev->asic_prop; in goya_parse_cb_no_ext_queue() local 4110 asic_prop->sram_user_base_address, in goya_parse_cb_no_ext_queue() 4111 asic_prop->sram_end_address)) in goya_parse_cb_no_ext_queue() 4117 asic_prop->dram_user_base_address, in goya_parse_cb_no_ext_queue() [all …]
|
| H A D | goya_coresight.c | 266 frequency = hdev->asic_prop.psoc_timestamp_frequency; in goya_config_stm() 370 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_etr_validate_address() 442 if (!hdev->asic_prop.fw_security_enabled) { in goya_config_etr()
|
| /linux-6.15/drivers/accel/habanalabs/gaudi/ |
| H A D | gaudi.c | 736 if (hdev->asic_prop.iatu_done_by_fw) in gaudi_set_hbm_bar_base() 761 if (hdev->asic_prop.iatu_done_by_fw) in gaudi_init_iatu() 890 kfree(hdev->asic_prop.hw_queues_props); in gaudi_early_init() 896 kfree(hdev->asic_prop.hw_queues_props); in gaudi_early_fini() 3926 if (hdev->asic_prop.iatu_done_by_fw) in gaudi_hw_init() 5465 struct asic_fixed_properties *asic_prop = &hdev->asic_prop; in gaudi_parse_cb_no_ext_queue() local 5484 asic_prop->sram_end_address)) in gaudi_parse_cb_no_ext_queue() 5490 asic_prop->dram_end_address)) in gaudi_parse_cb_no_ext_queue() 5496 asic_prop->pmmu.start_addr, in gaudi_parse_cb_no_ext_queue() 5497 asic_prop->pmmu.end_addr)) in gaudi_parse_cb_no_ext_queue() [all …]
|
| H A D | gaudi_coresight.c | 424 frequency = hdev->asic_prop.psoc_timestamp_frequency; in gaudi_config_stm() 537 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi_etr_validate_address() 645 if (!hdev->asic_prop.fw_security_enabled) { in gaudi_config_etr()
|
| /linux-6.15/drivers/accel/habanalabs/gaudi2/ |
| H A D | gaudi2.c | 2638 if (hdev->asic_prop.iatu_done_by_fw) in gaudi2_set_hbm_bar_base() 2664 if (hdev->asic_prop.iatu_done_by_fw) in gaudi2_init_iatu() 6146 if (hdev->asic_prop.iatu_done_by_fw) in gaudi2_hw_init() 6773 struct asic_fixed_properties *asic_prop = &hdev->asic_prop; in gaudi2_validate_cb_address() local 6786 asic_prop->sram_end_address)) in gaudi2_validate_cb_address() 6792 asic_prop->dram_end_address)) in gaudi2_validate_cb_address() 6798 asic_prop->dmmu.start_addr, in gaudi2_validate_cb_address() 6799 asic_prop->dmmu.end_addr)) in gaudi2_validate_cb_address() 6805 asic_prop->pmmu.start_addr, in gaudi2_validate_cb_address() 6806 asic_prop->pmmu.end_addr) || in gaudi2_validate_cb_address() [all …]
|
| H A D | gaudi2_security.c | 2970 hdev->asic_prop.fw_security_enabled) in gaudi2_init_lbw_range_registers_secure() 3225 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_init_protection_bits() 3264 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_init_protection_bits() 3414 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_init_protection_bits() 3439 if (!hdev->asic_prop.fw_security_enabled) { in gaudi2_init_protection_bits() 3460 if (!hdev->asic_prop.fw_security_enabled) { in gaudi2_init_protection_bits() 3612 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_ack_protection_bits_errors() 3645 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_ack_protection_bits_errors() 3741 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_ack_protection_bits_errors() 3757 if (!hdev->asic_prop.fw_security_enabled) { in gaudi2_ack_protection_bits_errors() [all …]
|