Home
last modified time | relevance | path

Searched refs:asic_prop (Results 1 – 25 of 30) sorted by relevance

12

/openbmc/linux/drivers/accel/habanalabs/common/
H A Dsysfs.c20 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 …]
H A Dasid.c14 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 Dcontext.c99 for (i = 0 ; i < hdev->asic_prop.max_pending_cs ; i++) in hl_ctx_fini()
211 ctx->cs_pending = kcalloc(hdev->asic_prop.max_pending_cs, in hl_ctx_init()
342 struct asic_fixed_properties *asic_prop = &ctx->hdev->asic_prop; in hl_ctx_get_fence_locked() local
348 if (seq + asic_prop->max_pending_cs < ctx->cs_sequence) in hl_ctx_get_fence_locked()
351 fence = ctx->cs_pending[seq & (asic_prop->max_pending_cs - 1)]; in hl_ctx_get_fence_locked()
H A Dsecurity.c624 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_automated_get_block_base_addr()
674 struct hl_special_block_info *special_blocks = hdev->asic_prop.special_blocks; in hl_read_glbl_errors()
677 base = current_block->base_addr - lower_32_bits(hdev->asic_prop.cfg_base_address); in hl_read_glbl_errors()
692 for (i = 0 ; i < hdev->asic_prop.glbl_err_cause_num ; i++) { in hl_read_glbl_errors()
697 hdev->asic_prop.cfg_base_address + block_base + in hl_read_glbl_errors()
708 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_check_for_glbl_errors()
735 block_info_arr = hdev->asic_prop.special_blocks; in hl_iterate_special_blocks()
739 num_blocks = hdev->asic_prop.num_of_special_blocks; in hl_iterate_special_blocks()
H A Ddevice.c49 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()
829 if (hdev->asic_prop.completion_queues_count) { in device_early_init()
830 hdev->cq_wq = kcalloc(hdev->asic_prop.completion_queues_count, in device_early_init()
839 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) { in device_early_init()
938 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) in device_early_init()
980 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) in device_early_fini()
1065 hdev->high_pll = hdev->asic_prop.high_pll; in device_late_init()
1104 dc_power = hdev->asic_prop.dc_power_default; in hl_device_utilization()
[all …]
H A Dhw_queue.c53 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()
H A Dfirmware_if.c359 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_send_cpu_message()
855 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_cpucp_info_get()
1168 struct asic_fixed_properties *prop = &hdev->asic_prop; in get_used_pll_index()
1358 if (hdev->asic_prop.dynamic_fw_load) { in hl_fw_ask_hard_reset_without_linux()
1381 if (hdev->asic_prop.dynamic_fw_load) { in hl_fw_ask_halt_machine_without_linux()
1520 prop = &hdev->asic_prop; in hl_fw_read_preboot_caps()
1563 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_static_read_device_fw_version()
1642 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_preboot_update_state()
1709 if (hdev->asic_prop.dynamic_fw_load) in hl_fw_read_preboot_status()
2269 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_fw_dynamic_read_device_fw_version()
[all …]
H A Ddecoder.c93 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 Dcommand_buffer.c20 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()
482 for (i = 0 ; i < hdev->asic_prop.cb_pool_cb_cnt ; i++) { in hl_cb_pool_init()
483 cb = hl_cb_alloc(hdev, hdev->asic_prop.cb_pool_cb_size, in hl_cb_pool_init()
512 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_cb_va_pool_init()
H A Dmemory.c31 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()
845 huge_page_size = ctx->hdev->asic_prop.pmmu_huge.page_size; in init_phys_pg_pack_from_userptr()
1075 u32 page_size = hdev->asic_prop.pmmu.page_size, in map_device_va()
1076 huge_page_size = hdev->asic_prop.pmmu_huge.page_size; in map_device_va()
1140 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()
1544 prop = &hdev->asic_prop; in alloc_sgt_from_device_pages()
1900 struct asic_fixed_properties *prop = &hdev->asic_prop; in validate_export_params_no_mmu()
[all …]
H A Dcommand_submission.c399 if (hdev->asic_prop.completion_mode == HL_COMPLETION_MODE_JOB) in hl_complete_job()
759 hdev->shadow_cs_queue[cs->sequence & (hdev->asic_prop.max_pending_cs - 1)] = NULL; in cs_do_release()
932 cs->jobs_in_queue_cnt = kcalloc(hdev->asic_prop.max_queues, in allocate_cs()
935 cs->jobs_in_queue_cnt = kcalloc(hdev->asic_prop.max_queues, in allocate_cs()
954 (hdev->asic_prop.max_pending_cs - 1)]; in allocate_cs()
983 (hdev->asic_prop.max_pending_cs - 1)] = in allocate_cs()
1057 for (i = 0 ; i < hdev->asic_prop.completion_queues_count ; i++) in hl_cs_rollback_all()
1099 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_release_pending_user_interrupts()
1187 struct asic_fixed_properties *asic = &hdev->asic_prop; in validate_queue_index()
2009 if (q_idx >= hdev->asic_prop.max_queues) { in cs_ioctl_reserve_signals()
[all …]
H A Dhwmon.c82 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()
H A Ddebugfs.c647 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_device_va()
667 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_is_device_internal_memory_va()
776 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_access_host_mem()
803 u64 host_start = hdev->asic_prop.host_base_address; in hl_access_mem()
804 u64 host_end = hdev->asic_prop.host_end_address; in hl_access_mem()
1275 if (!hdev->asic_prop.configurable_stop_on_err) in hl_stop_on_err_read()
1296 if (!hdev->asic_prop.configurable_stop_on_err) in hl_stop_on_err_write()
1794 if (!hdev->asic_prop.fw_security_enabled) in hl_debugfs_add_device()
H A Dirq.c101 struct asic_fixed_properties *prop = &hdev->asic_prop; in cs_finish()
177 if (hdev->asic_prop.completion_mode == in hl_irq_handler_cq()
H A Dhabanalabs_ioctl.c51 struct asic_fixed_properties *prop = &hdev->asic_prop; in hw_ip_info()
158 struct asic_fixed_properties *prop = &hdev->asic_prop; in dram_usage_info()
440 struct asic_fixed_properties *prop = &hdev->asic_prop; in sync_manager_info()
665 info.page_order_bitmask = hdev->asic_prop.dmmu.supported_pages_mask; in dev_mem_alloc_page_sizes_info()
/openbmc/linux/drivers/accel/habanalabs/common/mmu/
H A Dmmu_v2_hr.c48 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 …]
H A Dmmu_v1.c34 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()
375 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_v1_init()
[all …]
H A Dmmu.c30 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()
479 struct asic_fixed_properties *prop = &ctx->hdev->asic_prop; in hl_mmu_pa_page_with_offset()
560 prop = &hdev->asic_prop; in hl_mmu_get_tlb_info()
742 return hop_addr + ctx->hdev->asic_prop.mmu_pte_size * ((virt_addr & mask) >> shift); in hl_mmu_get_hop_pte_phys_addr()
775 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_hr_pool_destroy()
820 struct asic_fixed_properties *prop = &hdev->asic_prop; in hl_mmu_hr_init()
/openbmc/linux/drivers/accel/habanalabs/common/pci/
H A Dpci.c215 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()
/openbmc/linux/drivers/accel/habanalabs/goya/
H A Dgoya.c362 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_set_fixed_properties()
566 if (hdev->asic_prop.iatu_done_by_fw) in goya_init_iatu()
612 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_early_init()
647 if (hdev->asic_prop.fw_security_enabled) { in goya_early_init()
648 hdev->asic_prop.iatu_done_by_fw = true; in goya_early_init()
660 hdev->asic_prop.iatu_done_by_fw = true; in goya_early_init()
699 kfree(hdev->asic_prop.hw_queues_props); in goya_early_init()
713 kfree(hdev->asic_prop.hw_queues_props); in goya_early_fini()
749 struct asic_fixed_properties *prop = &hdev->asic_prop; in goya_fetch_psoc_frequency()
754 if (hdev->asic_prop.fw_security_enabled) { in goya_fetch_psoc_frequency()
[all …]
H A Dgoya_coresight.c266 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()
432 if (!hdev->asic_prop.fw_security_enabled) { in goya_config_etr()
/openbmc/linux/drivers/accel/habanalabs/gaudi/
H A Dgaudi.c516 struct asic_fixed_properties *prop = &hdev->asic_prop; in set_default_power_values()
533 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()
887 kfree(hdev->asic_prop.hw_queues_props); in gaudi_early_init()
[all …]
H A Dgaudi_coresight.c424 frequency = hdev->asic_prop.psoc_timestamp_frequency; in gaudi_config_stm()
532 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi_etr_validate_address()
633 if (!hdev->asic_prop.fw_security_enabled) { in gaudi_config_etr()
/openbmc/linux/drivers/accel/habanalabs/gaudi2/
H A Dgaudi2.c2138 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_iterate_tpcs()
2183 struct asic_fixed_properties *prop = &hdev->asic_prop; in set_number_of_functional_hbms()
2216 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_dram_properties()
2271 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_fixed_properties()
2493 if (hdev->asic_prop.iatu_done_by_fw) in gaudi2_set_hbm_bar_base()
2519 if (hdev->asic_prop.iatu_done_by_fw) in gaudi2_init_iatu()
2583 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_tpc_binning_init_prop()
2604 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_tpc_binning_masks()
2662 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_dec_binning_masks()
2689 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_set_dram_binning_masks()
[all …]
H A Dgaudi2_security.c2970 hdev->asic_prop.fw_security_enabled) in gaudi2_init_lbw_range_registers_secure()
3182 rr_cfg.max = hdev->asic_funcs->scramble_addr(hdev, hdev->asic_prop.dram_user_base_address); in gaudi2_init_mmu_range_registers()
3224 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_init_protection_bits()
3263 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_init_protection_bits()
3400 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_init_protection_bits()
3425 if (!hdev->asic_prop.fw_security_enabled) { in gaudi2_init_protection_bits()
3446 if (!hdev->asic_prop.fw_security_enabled) { in gaudi2_init_protection_bits()
3598 struct asic_fixed_properties *prop = &hdev->asic_prop; in gaudi2_ack_protection_bits_errors()
3631 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_ack_protection_bits_errors()
3727 if (!hdev->asic_prop.fw_security_enabled) in gaudi2_ack_protection_bits_errors()
[all …]

12