/linux/drivers/gpu/drm/amd/amdgpu/ |
H A D | amdgpu.h | 956 const struct amdgpu_asic_funcs *asic_funcs; member 1509 ((adev)->asic_funcs->set_vga_state ? (adev)->asic_funcs->set_vga_state((adev), (state)) : 0) 1510 #define amdgpu_asic_reset(adev) (adev)->asic_funcs->reset((adev)) 1511 #define amdgpu_asic_reset_method(adev) (adev)->asic_funcs->reset_method((adev)) 1512 #define amdgpu_asic_get_xclk(adev) (adev)->asic_funcs->get_xclk((adev)) 1513 #define amdgpu_asic_set_uvd_clocks(adev, v, d) (adev)->asic_funcs->set_uvd_clocks((adev), (v), (d)) 1514 #define amdgpu_asic_set_vce_clocks(adev, ev, ec) (adev)->asic_funcs->set_vce_clocks((adev), (ev), (… 1515 #define amdgpu_get_pcie_lanes(adev) (adev)->asic_funcs->get_pcie_lanes((adev)) 1516 #define amdgpu_set_pcie_lanes(adev, l) (adev)->asic_funcs->set_pcie_lanes((adev), (l)) 1517 #define amdgpu_asic_get_gpu_clock_counter(adev) (adev)->asic_funcs->get_gpu_clock_counter((adev)) [all …]
|
H A D | amdgpu_bios.c | 171 if (!adev->asic_funcs || !adev->asic_funcs->read_bios_from_rom) in amdgpu_read_bios_from_rom() 353 return (!adev->asic_funcs || !adev->asic_funcs->read_disabled_bios) ? in amdgpu_read_disabled_bios()
|
H A D | soc15_common.h | 200 + adev->asic_funcs->encode_ext_smn_addressing(ext)) \ 204 + adev->asic_funcs->encode_ext_smn_addressing(ext), \ 208 RREG64_PCIE_EXT(adev->asic_funcs->encode_ext_smn_addressing(ext) + mca_base + (idx * 8)) 211 WREG64_PCIE_EXT(adev->asic_funcs->encode_ext_smn_addressing(ext) + mca_base + (idx * 8), val)
|
H A D | soc24.c | 383 adev->asic_funcs = &soc24_asic_funcs; in soc24_common_early_init()
|
H A D | psp_v13_0.c | 165 adev->asic_funcs->encode_ext_smn_addressing(i); in psp_v13_0_bootloader_print_status()
|
H A D | soc21.c | 575 adev->asic_funcs = &soc21_asic_funcs; in soc21_common_early_init()
|
H A D | nv.c | 659 adev->asic_funcs = &nv_asic_funcs; in nv_common_early_init()
|
/linux/drivers/accel/habanalabs/common/ |
H A D | device.c | 64 old_base = hdev->asic_funcs->set_dram_bar_base(hdev, bar_base_addr); in hl_set_dram_bar() 127 ptr = hdev->asic_funcs->asic_dma_alloc_coherent(hdev, size, dma_handle, flag); in hl_dma_alloc_common() 130 ptr = hdev->asic_funcs->asic_dma_pool_zalloc(hdev, size, flag, dma_handle); in hl_dma_alloc_common() 150 hdev->asic_funcs->asic_dma_free_coherent(hdev, size, cpu_addr, dma_handle); in hl_asic_dma_free_common() 153 hdev->asic_funcs->asic_dma_pool_free(hdev, cpu_addr, dma_handle); in hl_asic_dma_free_common() 186 return hdev->asic_funcs->cpu_accessible_dma_pool_alloc(hdev, size, dma_handle); in hl_cpu_accessible_dma_pool_alloc() 191 hdev->asic_funcs->cpu_accessible_dma_pool_free(hdev, size, vaddr); in hl_cpu_accessible_dma_pool_free() 201 rc = hdev->asic_funcs->dma_map_sgtable(hdev, sgt, dir); in hl_dma_map_sgtable_caller() 248 hdev->asic_funcs->dma_unmap_sgtable(hdev, sgt, dir); in hl_dma_unmap_sgtable_caller() 471 hdev->asic_funcs->send_device_activity(hdev, false); in hpriv_release() [all …]
|
H A D | firmware_if.c | 379 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), 0, NULL); in hl_fw_send_pci_access_msg() 554 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), in hl_fw_unmask_irq() 593 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) pkt, in hl_fw_unmask_irq_arr() 614 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &test_pkt, in hl_fw_test_cpu_queue() 655 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), 0, NULL); in hl_fw_send_soft_reset() 670 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), 0, NULL); in hl_fw_send_device_activity() 687 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &hb_pkt, sizeof(hb_pkt), 0, &result); in hl_fw_send_heartbeat() 886 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), in hl_fw_cpucp_info_get() 946 if (!hdev->asic_funcs->get_msi_info) in hl_fw_send_msi_info_msg() 968 hdev->asic_funcs->get_msi_info(pkt->data); in hl_fw_send_msi_info_msg() [all …]
|
H A D | hw_queue.c | 100 hdev->asic_funcs->access_dev_mem(hdev, PCI_REGION_DRAM, addr, in hl_hw_queue_submit_bd() 106 hdev->asic_funcs->ring_doorbell(hdev, q->hw_queue_id, q->pi); in hl_hw_queue_submit_bd() 245 hdev->asic_funcs->hw_queues_lock(hdev); in hl_hw_queue_send_cb_no_cmpl() 266 hdev->asic_funcs->hw_queues_unlock(hdev); in hl_hw_queue_send_cb_no_cmpl() 321 hdev->asic_funcs->add_end_of_cb_packets(hdev, cb->kernel_address, len, in ext_queue_schedule_job() 367 hdev->asic_funcs->pqe_write(hdev, pi, &bd); in int_queue_schedule_job() 369 hdev->asic_funcs->ring_doorbell(hdev, q->hw_queue_id, q->pi); in int_queue_schedule_job() 438 hdev->asic_funcs->gen_signal_cb(hdev, job->patched_cb, in init_signal_cs() 543 hdev->asic_funcs->gen_wait_cb(hdev, &wait_prop); in init_wait_cs() 650 hdev->asic_funcs->hw_queues_lock(hdev); in hl_hw_queue_schedule_cs() [all …]
|
H A D | context.c | 114 hdev->asic_funcs->ctx_fini(ctx); in hl_ctx_fini() 125 hdev->asic_funcs->ctx_fini(ctx); in hl_ctx_fini() 236 rc = hdev->asic_funcs->ctx_init(ctx); in hl_ctx_init() 263 rc = hdev->asic_funcs->ctx_init(ctx); in hl_ctx_init()
|
H A D | debugfs.c | 45 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), 0, val); in hl_debugfs_i2c_read() 77 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), 0, NULL); in hl_debugfs_i2c_write() 99 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), 0, NULL); in hl_debugfs_led_set() 527 rc = hdev->asic_funcs->ack_mmu_errors(hdev, dev_entry->mmu_cap_mask); in mmu_ack_error() 588 hdev->asic_funcs->is_device_idle(hdev, NULL, 0, &eng_data); in engines_show() 627 rc = hdev->asic_funcs->scrub_device_dram(hdev, val); in hl_memory_scrub() 760 return hdev->asic_funcs->access_dev_mem(hdev, i, addr, val, acc_type); in hl_access_dev_mem_by_region() 987 rc = hdev->asic_funcs->debugfs_read_dma(hdev, addr, size, in hl_dma_size_write() 1032 rc = hdev->asic_funcs->get_monitor_dump(hdev, entry->mon_dump_blob_desc.data); in hl_monitor_dump_trigger() 1234 hdev->asic_funcs->suspend(hdev); in hl_device_write() [all …]
|
H A D | command_submission.c | 143 hdev->asic_funcs->reset_sob(hdev, hw_sob); in hl_sob_reset() 336 rc = hdev->asic_funcs->cs_parser(hdev, &parser); in cs_parser() 687 hdev->asic_funcs->reset_sob_group(hdev, in cs_release_sob_reset_handler() 1706 rc = hdev->asic_funcs->context_switch(hdev, ctx->asid); in hl_cs_ctx_switch() 1727 hdev->asic_funcs->restore_phase_topology(hdev); in hl_cs_ctx_switch() 1958 cb_size = hdev->asic_funcs->get_wait_cb_size(hdev); in cs_ioctl_signal_wait_create_jobs() 1960 cb_size = hdev->asic_funcs->get_signal_cb_size(hdev); in cs_ioctl_signal_wait_create_jobs() 2070 hdev->asic_funcs->hw_queues_lock(hdev); in cs_ioctl_reserve_signals() 2084 hdev->asic_funcs->hw_queues_unlock(hdev); in cs_ioctl_reserve_signals() 2101 hdev->asic_funcs->hw_queues_unlock(hdev); in cs_ioctl_reserve_signals() [all …]
|
H A D | decoder.c | 111 dec->base_addr = hdev->asic_funcs->get_dec_base_addr(hdev, j); in hl_dec_init()
|
H A D | habanalabs_ioctl.c | 65 hw_ip.device_id = hdev->asic_funcs->get_pci_id(hdev); in hw_ip_info() 129 arr = hdev->asic_funcs->get_events_stat(hdev, aggregate, &size); in hw_events_info() 188 hw_idle.is_idle = hdev->asic_funcs->is_device_idle(hdev, in hw_idle() 240 rc = hdev->asic_funcs->debug_coresight(hdev, ctx, params); in debug_coresight() 324 time_sync.device_time = hdev->asic_funcs->get_device_time(hdev); in time_sync_info() 824 hdev->asic_funcs->is_device_idle(hdev, NULL, 0, &eng_data); in engine_status_info()
|
H A D | habanalabs_drv.c | 248 hdev->asic_funcs->send_device_activity(hdev, true); in hl_device_open() 642 hdev->asic_funcs->halt_engines(hdev, true, false); in hl_pci_err_detected()
|
H A D | irq.c | 64 hdev->asic_funcs->handle_eqe(hdev, &eqe_work->eq_entry); in irq_handle_eqe() 563 hdev->asic_funcs->update_eq_ci(hdev, eq->ci); in hl_irq_handler_eq()
|
H A D | command_buffer.c | 254 return cb->hdev->asic_funcs->mmap(cb->hdev, vma, cb->kernel_address, in hl_cb_mmap()
|
H A D | habanalabs.h | 2591 #define RREG32(reg) hdev->asic_funcs->rreg(hdev, (reg)) 2592 #define WREG32(reg, v) hdev->asic_funcs->wreg(hdev, (reg), (v)) 2594 hdev->asic_funcs->rreg(hdev, (reg))) 3457 const struct hl_asic_funcs *asic_funcs; member
|
/linux/drivers/accel/habanalabs/common/mmu/ |
H A D | mmu_v2.c | 76 scrambled_virt_addr = hdev->asic_funcs->scramble_addr(hdev, virt_addr); in hl_mmu_v2_unmap() 149 scrambled_virt_addr = hdev->asic_funcs->scramble_addr(hdev, virt_addr); in hl_mmu_v2_map() 150 scrambled_phys_addr = hdev->asic_funcs->scramble_addr(hdev, phys_addr); in hl_mmu_v2_map() 264 hops->scrambled_vaddr = hdev->asic_funcs->scramble_addr(hdev, virt_addr); in hl_mmu_v2_get_tlb_info() 273 hops->hop_info[0].hop_pte_val = hdev->asic_funcs->read_pte(hdev, in hl_mmu_v2_get_tlb_info() 292 hdev->asic_funcs->read_pte(hdev, in hl_mmu_v2_get_tlb_info() 310 hops->unscrambled_paddr = hdev->asic_funcs->descramble_addr in hl_mmu_v2_get_tlb_info()
|
H A D | mmu.c | 246 rc = hdev->asic_funcs->mmu_get_real_page_size(hdev, mmu_prop, page_size, &real_page_size, in hl_mmu_unmap_page() 314 rc = hdev->asic_funcs->mmu_get_real_page_size(hdev, mmu_prop, page_size, &real_page_size, in hl_mmu_map_page() 325 ((hdev->asic_funcs->scramble_addr(hdev, phys_addr) & in hl_mmu_map_page() 327 (hdev->asic_funcs->scramble_addr(hdev, virt_addr) & in hl_mmu_map_page() 646 rc = hdev->asic_funcs->mmu_invalidate_cache(hdev, is_hard, flags); in hl_mmu_invalidate_cache() 661 rc = hdev->asic_funcs->mmu_invalidate_cache_range(hdev, is_hard, flags, in hl_mmu_invalidate_cache_range() 683 hdev->asic_funcs->mmu_prefetch_cache_range(ctx, pfw->flags, pfw->asid, pfw->va, pfw->size); in hl_mmu_prefetch_work_function() 1175 hops->scrambled_vaddr = hdev->asic_funcs->scramble_addr(hdev, virt_addr); in hl_mmu_hr_get_tlb_info() 1209 hops->unscrambled_paddr = hdev->asic_funcs->descramble_addr in hl_mmu_hr_get_tlb_info() 1280 ctx->hdev->asic_funcs->write_pte(ctx->hdev, hl_mmu_dr_get_phys_addr(ctx, shadow_pte_addr), in hl_mmu_dr_write_pte() [all …]
|
H A D | mmu_v2_hr.c | 132 scrambled_virt_addr = hdev->asic_funcs->scramble_addr(hdev, virt_addr); in _hl_mmu_v2_hr_unmap() 238 scrambled_virt_addr = hdev->asic_funcs->scramble_addr(hdev, virt_addr); in _hl_mmu_v2_hr_map() 239 scrambled_phys_addr = hdev->asic_funcs->scramble_addr(hdev, phys_addr); in _hl_mmu_v2_hr_map()
|
H A D | mmu_v1.c | 496 hdev->asic_funcs->read_pte(hdev, in hl_mmu_v1_get_tlb_info() 511 hdev->asic_funcs->read_pte(hdev, in hl_mmu_v1_get_tlb_info()
|
/linux/drivers/accel/habanalabs/goya/ |
H A D | goya.c | 672 hdev->asic_funcs->hw_fini(hdev, true, false); in goya_early_init() 678 rc = hdev->asic_funcs->hw_fini(hdev, true, false); in goya_early_init() 1032 hdev->asic_funcs->set_pci_memory_regions(hdev); in goya_sw_init() 3078 if (!hdev->asic_funcs->is_device_idle(hdev, NULL, 0, NULL)) { in goya_send_job_on_qman0() 4531 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) pkt, in goya_unmask_irq_arr() 4564 rc = hdev->asic_funcs->send_cpu_message(hdev, (u32 *) &pkt, sizeof(pkt), in goya_unmask_irq() 5537 hdev->asic_funcs = &goya_funcs; in goya_set_asic_funcs()
|
/linux/drivers/accel/habanalabs/gaudi/ |
H A D | gaudi.c | 872 hdev->asic_funcs->hw_fini(hdev, true, false); in gaudi_early_init() 878 rc = hdev->asic_funcs->hw_fini(hdev, true, false); in gaudi_early_init() 1646 rc = hdev->asic_funcs->scrub_device_mem(hdev); in gaudi_late_init() 1921 hdev->asic_funcs->set_pci_memory_regions(hdev); in gaudi_sw_init() 1923 hdev->asic_funcs->get_stream_master_qid_arr(); in gaudi_sw_init() 4626 while (!hdev->asic_funcs->is_device_idle(hdev, NULL, 0, NULL)) { in gaudi_scrub_device_mem() 5933 hdev->asic_funcs->hw_queues_lock(hdev); in gaudi_debugfs_read_dma() 6015 hdev->asic_funcs->hw_queues_unlock(hdev); in gaudi_debugfs_read_dma() 6850 hdev->asic_funcs->hw_queues_lock(hdev); in gaudi_handle_last_pqes_on_err() 6895 hdev->asic_funcs->hw_queues_unlock(hdev); in gaudi_handle_last_pqes_on_err() [all …]
|