Home
last modified time | relevance | path

Searched refs:hl_device (Results 1 – 25 of 39) sorted by relevance

12

/linux/drivers/accel/habanalabs/goya/
H A DgoyaP.h157 struct hl_device *hdev;
180 int goya_set_fixed_properties(struct hl_device *hdev);
181 int goya_mmu_init(struct hl_device *hdev);
182 void goya_init_dma_qmans(struct hl_device *hdev);
183 void goya_init_mme_qmans(struct hl_device *hdev);
184 void goya_init_tpc_qmans(struct hl_device *hdev);
185 int goya_init_cpu_queues(struct hl_device *hdev);
186 void goya_init_security(struct hl_device *hdev);
187 void goya_ack_protection_bits_errors(struct hl_device *hdev);
188 int goya_late_init(struct hl_device *hdev);
[all …]
H A Dgoya_hwmgr.c10 void goya_set_pll_profile(struct hl_device *hdev, enum hl_pll_frequency freq) in goya_set_pll_profile()
41 struct hl_device *hdev = dev_get_drvdata(dev); in mme_clk_show()
58 struct hl_device *hdev = dev_get_drvdata(dev); in mme_clk_store()
90 struct hl_device *hdev = dev_get_drvdata(dev); in tpc_clk_show()
107 struct hl_device *hdev = dev_get_drvdata(dev); in tpc_clk_store()
139 struct hl_device *hdev = dev_get_drvdata(dev); in ic_clk_show()
156 struct hl_device *hdev = dev_get_drvdata(dev); in ic_clk_store()
188 struct hl_device *hdev = dev_get_drvdata(dev); in mme_clk_curr_show()
205 struct hl_device *hdev = dev_get_drvdata(dev); in tpc_clk_curr_show()
222 struct hl_device *hdev = dev_get_drvdata(dev); in ic_clk_curr_show()
[all …]
H A Dgoya.c355 static int goya_mmu_clear_pgt_range(struct hl_device *hdev);
356 static int goya_mmu_set_dram_default_page(struct hl_device *hdev);
357 static int goya_mmu_add_mappings_for_device_cpu(struct hl_device *hdev);
358 static void goya_mmu_prepare(struct hl_device *hdev, u32 asid);
360 int goya_set_fixed_properties(struct hl_device *hdev) in goya_set_fixed_properties()
507 static int goya_pci_bars_map(struct hl_device *hdev) in goya_pci_bars_map()
523 static u64 goya_set_ddr_bar_base(struct hl_device *hdev, u64 addr) in goya_set_ddr_bar_base()
557 static int goya_init_iatu(struct hl_device *hdev) in goya_init_iatu()
591 static enum hl_device_hw_state goya_get_hw_state(struct hl_device *hdev) in goya_get_hw_state()
607 static int goya_early_init(struct hl_device *hdev) in goya_early_init()
[all …]
/linux/drivers/accel/habanalabs/common/
H A Dhabanalabs.h39 struct hl_device;
248 void (*fn)(struct hl_device *hdev, int block, int inst, u32 offset,
426 struct hl_device *hdev;
871 struct hl_device *hdev;
985 struct hl_device *hdev;
1118 struct hl_device *hdev;
1164 struct hl_device *hdev;
1202 struct hl_device *hdev;
1260 struct hl_device *hdev;
1277 struct hl_device *hdev;
[all …]
H A Dhldio.h21 struct hl_device;
74 int hl_dio_ssd2hl(struct hl_device *hdev, struct hl_ctx *ctx, int fd,
77 void hl_p2p_region_fini_all(struct hl_device *hdev);
78 int hl_p2p_region_init(struct hl_device *hdev, struct hl_p2p_region *p2pr);
79 int hl_dio_start(struct hl_device *hdev);
80 void hl_dio_stop(struct hl_device *hdev);
83 int hl_hldio_init(struct hl_device *hdev);
84 void hl_hldio_fini(struct hl_device *hdev);
91 void hl_hldio_debugfs_init(struct hl_device *hdev);
92 void hl_hldio_debugfs_fini(struct hl_device *hdev);
[all …]
H A Dsysfs.c15 struct hl_device *hdev = dev_get_drvdata(dev); in clk_max_freq_mhz_show()
33 struct hl_device *hdev = dev_get_drvdata(dev); in clk_max_freq_mhz_store()
58 struct hl_device *hdev = dev_get_drvdata(dev); in clk_cur_freq_mhz_show()
82 struct hl_device *hdev = dev_get_drvdata(dev); in vrm_ver_show()
126 struct hl_device *hdev = dev_get_drvdata(dev); in uboot_ver_show()
134 struct hl_device *hdev = dev_get_drvdata(dev); in armcp_kernel_ver_show()
142 struct hl_device *hdev = dev_get_drvdata(dev); in armcp_ver_show()
150 struct hl_device *hdev = dev_get_drvdata(dev); in cpld_ver_show()
160 struct hl_device *hdev = dev_get_drvdata(dev); in cpucp_kernel_ver_show()
168 struct hl_device *hdev = dev_get_drvdata(dev); in cpucp_ver_show()
[all …]
H A Dhabanalabs_drv.c120 static enum hl_asic_type get_asic_type(struct hl_device *hdev) in get_asic_type()
179 struct hl_device *hdev = to_hl_device(ddev); in hl_device_open()
280 struct hl_device *hdev; in hl_device_open_ctrl()
333 static void set_driver_behavior_per_device(struct hl_device *hdev) in set_driver_behavior_per_device()
345 static void copy_kernel_module_params_to_device(struct hl_device *hdev) in copy_kernel_module_params_to_device()
355 static void fixup_device_params_per_asic(struct hl_device *hdev, int timeout) in fixup_device_params_per_asic()
379 static int fixup_device_params(struct hl_device *hdev) in fixup_device_params()
414 static int allocate_device_id(struct hl_device *hdev) in allocate_device_id()
449 static int create_hdev(struct hl_device **dev, struct pci_dev *pdev) in create_hdev()
451 struct hl_device *hdev; in create_hdev()
[all …]
H A Dirq.c22 struct hl_device *hdev;
62 struct hl_device *hdev = eqe_work->hdev; in irq_handle_eqe()
78 static void job_finish(struct hl_device *hdev, u32 cs_seq, struct hl_cq *cq, ktime_t timestamp) in job_finish()
99 static void cs_finish(struct hl_device *hdev, u16 cs_seq, ktime_t timestamp) in cs_finish()
133 struct hl_device *hdev = cq->hdev; in hl_irq_handler_cq()
211 struct hl_device *hdev = job->hdev; in hl_ts_free_objects()
255 static int handle_registration_node(struct hl_device *hdev, struct hl_user_pending_interrupt *pend, in handle_registration_node()
331 static void handle_user_interrupt_ts_list(struct hl_device *hdev, struct hl_user_interrupt *intr) in handle_user_interrupt_ts_list()
379 static void handle_user_interrupt_wait_list(struct hl_device *hdev, struct hl_user_interrupt *intr) in handle_user_interrupt_wait_list()
396 static void handle_tpc_interrupt(struct hl_device *hdev) in handle_tpc_interrupt()
[all …]
H A Dsecurity.c48 static int hl_get_pb_block(struct hl_device *hdev, u32 mm_reg_addr, in hl_get_pb_block()
75 static int hl_unset_pb_in_block(struct hl_device *hdev, u32 reg_offset, in hl_unset_pb_in_block()
103 int hl_unsecure_register(struct hl_device *hdev, u32 mm_reg_addr, int offset, in hl_unsecure_register()
132 static int hl_unsecure_register_range(struct hl_device *hdev, in hl_unsecure_register_range()
168 int hl_unsecure_registers(struct hl_device *hdev, const u32 mm_reg_array[], in hl_unsecure_registers()
198 static int hl_unsecure_registers_range(struct hl_device *hdev, in hl_unsecure_registers_range()
225 static void hl_ack_pb_security_violations(struct hl_device *hdev, in hl_ack_pb_security_violations()
253 void hl_config_glbl_sec(struct hl_device *hdev, const u32 pb_blocks[], in hl_config_glbl_sec()
281 void hl_secure_block(struct hl_device *hdev, in hl_secure_block()
307 int hl_init_pb_with_mask(struct hl_device *hdev, u32 num_dcores, in hl_init_pb_with_mask()
[all …]
H A Dfirmware_if.c55 int hl_fw_version_cmp(struct hl_device *hdev, u32 major, u32 minor, u32 subminor) in hl_fw_version_cmp()
137 static int hl_get_sw_major_minor_subminor(struct hl_device *hdev, const char *fw_str) in hl_get_sw_major_minor_subminor()
197 static int hl_get_preboot_major_minor(struct hl_device *hdev, char *preboot_ver) in hl_get_preboot_major_minor()
220 static int hl_request_fw(struct hl_device *hdev, in hl_request_fw()
284 static int hl_fw_copy_fw_to_device(struct hl_device *hdev, in hl_fw_copy_fw_to_device()
318 static int hl_fw_copy_msg_to_device(struct hl_device *hdev, in hl_fw_copy_msg_to_device()
355 int hl_fw_load_fw_to_device(struct hl_device *hdev, const char *fw_name, in hl_fw_load_fw_to_device()
371 int hl_fw_send_pci_access_msg(struct hl_device *hdev, u32 opcode, u64 value) in hl_fw_send_pci_access_msg()
404 int hl_fw_send_cpu_message(struct hl_device *hdev, u32 hw_queue_id, u32 *msg, in hl_fw_send_cpu_message()
542 int hl_fw_unmask_irq(struct hl_device *hdev, u16 event_type) in hl_fw_unmask_irq()
[all …]
H A Ddevice.c51 static u64 hl_set_dram_bar(struct hl_device *hdev, u64 addr, struct pci_mem_region *region, in hl_set_dram_bar()
73 int hl_access_sram_dram_region(struct hl_device *hdev, u64 addr, u64 *val, in hl_access_sram_dram_region()
119 static void *hl_dma_alloc_common(struct hl_device *hdev, size_t size, dma_addr_t *dma_handle, in hl_dma_alloc_common()
141 static void hl_asic_dma_free_common(struct hl_device *hdev, size_t size, void *cpu_addr, in hl_asic_dma_free_common()
160 void *hl_asic_dma_alloc_coherent_caller(struct hl_device *hdev, size_t size, dma_addr_t *dma_handle, in hl_asic_dma_alloc_coherent_caller()
166 void hl_asic_dma_free_coherent_caller(struct hl_device *hdev, size_t size, void *cpu_addr, in hl_asic_dma_free_coherent_caller()
172 void *hl_asic_dma_pool_zalloc_caller(struct hl_device *hdev, size_t size, gfp_t mem_flags, in hl_asic_dma_pool_zalloc_caller()
178 void hl_asic_dma_pool_free_caller(struct hl_device *hdev, void *vaddr, dma_addr_t dma_addr, in hl_asic_dma_pool_free_caller()
184 void *hl_cpu_accessible_dma_pool_alloc(struct hl_device *hdev, size_t size, dma_addr_t *dma_handle) in hl_cpu_accessible_dma_pool_alloc()
189 void hl_cpu_accessible_dma_pool_free(struct hl_device *hdev, size_t size, void *vaddr) in hl_cpu_accessible_dma_pool_free()
[all …]
H A Dhldio.c62 bool hl_device_supports_nvme(struct hl_device *hdev) in hl_device_supports_nvme()
69 struct hl_device *hdev = ctx->hdev; in hl_dio_fd_register()
138 static long hl_dio_count_io(struct hl_device *hdev) in hl_dio_count_io()
151 struct hl_device *hdev = ctx->hdev; in hl_dio_get_iopath()
172 struct hl_device *hdev = ctx->hdev; in hl_dio_put_iopath()
178 static void hl_dio_set_io_enabled(struct hl_device *hdev, bool enabled) in hl_dio_set_io_enabled()
183 static bool hl_dio_validate_io(struct hl_device *hdev, struct hl_direct_io *io) in hl_dio_validate_io()
203 static struct page *hl_dio_va2page(struct hl_device *hdev, struct hl_ctx *ctx, u64 device_va) in hl_dio_va2page()
226 static ssize_t hl_direct_io(struct hl_device *hdev, struct hl_direct_io *io) in hl_direct_io()
302 int hl_dio_ssd2hl(struct hl_device *hdev, struct hl_ctx *ctx, int fd, in hl_dio_ssd2hl()
[all …]
H A Dhw_queue.c43 struct hl_device *hdev = cs->ctx->hdev; in hl_hw_queue_update_ci()
83 void hl_hw_queue_submit_bd(struct hl_device *hdev, struct hl_hw_queue *q, in hl_hw_queue_submit_bd()
127 static int ext_queue_sanity_checks(struct hl_device *hdev, in ext_queue_sanity_checks()
176 static int int_queue_sanity_checks(struct hl_device *hdev, in int_queue_sanity_checks()
211 static int hw_queue_sanity_checks(struct hl_device *hdev, struct hl_hw_queue *q, in hw_queue_sanity_checks()
239 int hl_hw_queue_send_cb_no_cmpl(struct hl_device *hdev, u32 hw_queue_id, in hl_hw_queue_send_cb_no_cmpl()
281 struct hl_device *hdev = job->cs->ctx->hdev; in ext_queue_schedule_job()
346 struct hl_device *hdev = job->cs->ctx->hdev; in int_queue_schedule_job()
382 struct hl_device *hdev = job->cs->ctx->hdev; in hw_queue_schedule_job()
415 static int init_signal_cs(struct hl_device *hdev, in init_signal_cs()
[all …]
H A Ddebugfs.c22 static int hl_debugfs_i2c_read(struct hl_device *hdev, u8 i2c_bus, u8 i2c_addr, in hl_debugfs_i2c_read()
53 static int hl_debugfs_i2c_write(struct hl_device *hdev, u8 i2c_bus, u8 i2c_addr, in hl_debugfs_i2c_write()
85 static void hl_debugfs_led_set(struct hl_device *hdev, u8 led, u8 state) in hl_debugfs_led_set()
424 struct hl_device *hdev = dev_entry->hdev; in mmu_show()
482 struct hl_device *hdev = dev_entry->hdev; in mmu_asid_va_write()
520 struct hl_device *hdev = dev_entry->hdev; in mmu_ack_error()
544 struct hl_device *hdev = dev_entry->hdev; in mmu_ack_error_value_write()
574 struct hl_device *hdev = dev_entry->hdev; in engines_show()
612 struct hl_device *hdev = dev_entry->hdev; in dio_ssd2hl_show()
632 struct hl_device *hdev = dev_entry->hdev; in dio_ssd2hl_write()
[all …]
H A Dsecurity.h13 struct hl_device;
134 bool (*skip_block_hook)(struct hl_device *hdev,
154 int (*fn)(struct hl_device *hdev, u32 block_id, u32 major, u32 minor,
159 int hl_iterate_special_blocks(struct hl_device *hdev, struct iterate_special_ctx *ctx);
160 void hl_check_for_glbl_errors(struct hl_device *hdev);
H A Dhwmon.c17 static u32 fixup_flags_legacy_fw(struct hl_device *hdev, enum hwmon_sensor_types type, in fixup_flags_legacy_fw()
64 static u32 fixup_flags_legacy_fw(struct hl_device *hdev, enum hwmon_sensor_types type, in fixup_flags_legacy_fw()
77 static u32 adjust_hwmon_flags(struct hl_device *hdev, enum hwmon_sensor_types type, u32 cpucp_flags) in adjust_hwmon_flags()
148 int hl_build_hwmon_channel_info(struct hl_device *hdev, struct cpucp_sensor *sensors_arr) in hl_build_hwmon_channel_info()
246 struct hl_device *hdev = dev_get_drvdata(dev); in hl_read()
400 struct hl_device *hdev = dev_get_drvdata(dev); in hl_write()
569 int hl_get_temperature(struct hl_device *hdev, in hl_get_temperature()
598 int hl_set_temperature(struct hl_device *hdev, in hl_set_temperature()
622 int hl_get_voltage(struct hl_device *hdev, in hl_get_voltage()
652 int hl_get_current(struct hl_device *hdev, in hl_get_current()
[all …]
H A Dhabanalabs_ioctl.c34 static int device_status_info(struct hl_device *hdev, struct hl_info_args *args) in device_status_info()
49 static int hw_ip_info(struct hl_device *hdev, struct hl_info_args *args) in hw_ip_info()
119 static int hw_events_info(struct hl_device *hdev, bool aggregate, in hw_events_info()
157 struct hl_device *hdev = hpriv->hdev; in dram_usage_info()
179 static int hw_idle(struct hl_device *hdev, struct hl_info_args *args) in hw_idle()
198 static int debug_coresight(struct hl_device *hdev, struct hl_ctx *ctx, struct hl_debug_args *args) in debug_coresight()
263 static int device_utilization(struct hl_device *hdev, struct hl_info_args *args) in device_utilization()
281 static int get_clk_rate(struct hl_device *hdev, struct hl_info_args *args) in get_clk_rate()
299 static int get_reset_count(struct hl_device *hdev, struct hl_info_args *args) in get_reset_count()
315 static int time_sync_info(struct hl_device *hdev, struct hl_info_args *args) in time_sync_info()
[all …]
H A Dasid.c12 int hl_asid_init(struct hl_device *hdev) in hl_asid_init()
26 void hl_asid_fini(struct hl_device *hdev) in hl_asid_fini()
32 unsigned long hl_asid_alloc(struct hl_device *hdev) in hl_asid_alloc()
50 void hl_asid_free(struct hl_device *hdev, unsigned long asid) in hl_asid_free()
H A Dcommand_submission.c53 static int _hl_cs_wait_ioctl(struct hl_device *hdev, struct hl_ctx *ctx, u64 timeout_us, u64 seq,
57 static void hl_push_cs_outcome(struct hl_device *hdev, in hl_push_cs_outcome()
139 struct hl_device *hdev = hw_sob->hdev; in hl_sob_reset()
152 struct hl_device *hdev = hw_sob->hdev; in hl_sob_reset_error()
299 static bool is_cb_patched(struct hl_device *hdev, struct hl_cs_job *job) in is_cb_patched()
318 struct hl_device *hdev = hpriv->hdev; in cs_parser()
361 static void hl_complete_job(struct hl_device *hdev, struct hl_cs_job *job) in hl_complete_job()
436 struct hl_cs *hl_staged_cs_find_first(struct hl_device *hdev, u64 cs_seq) in hl_staged_cs_find_first()
455 bool is_staged_cs_last_exists(struct hl_device *hdev, struct hl_cs *cs) in is_staged_cs_last_exists()
478 static void staged_cs_get(struct hl_device *hdev, struct hl_cs *cs) in staged_cs_get()
[all …]
/linux/drivers/accel/habanalabs/gaudi2/
H A Dgaudi2.c2551 static int gaudi2_memset_device_memory(struct hl_device *hdev, u64 addr, u64 size, u64 val);
2552 static bool gaudi2_is_queue_enabled(struct hl_device *hdev, u32 hw_queue_id);
2553 static bool gaudi2_is_arc_enabled(struct hl_device *hdev, u64 arc_id);
2554 static void gaudi2_clr_arc_id_cap(struct hl_device *hdev, u64 arc_id);
2555 static void gaudi2_set_arc_id_cap(struct hl_device *hdev, u64 arc_id);
2556 static void gaudi2_memset_device_lbw(struct hl_device *hdev, u32 addr, u32 size, u32 val);
2557 static int gaudi2_send_job_to_kdma(struct hl_device *hdev, u64 src_addr, u64 dst_addr, u32 size,
2559 static bool gaudi2_get_tpc_idle_status(struct hl_device *hdev, u64 *mask_arr, u8 mask_len,
2561 static bool gaudi2_get_mme_idle_status(struct hl_device *hdev, u64 *mask_arr, u8 mask_len,
2563 static bool gaudi2_get_edma_idle_status(struct hl_device *hdev, u64 *mask_arr, u8 mask_len,
[all …]
H A Dgaudi2P.h453 void (*instance_cfg_fn)(struct hl_device *hdev, u64 base, void *data);
535 int (*cpucp_info_get)(struct hl_device *hdev);
607 void gaudi2_iterate_tpcs(struct hl_device *hdev, struct iterate_module_ctx *ctx);
608 int gaudi2_coresight_init(struct hl_device *hdev);
609 int gaudi2_debug_coresight(struct hl_device *hdev, struct hl_ctx *ctx, void *data);
610 void gaudi2_halt_coresight(struct hl_device *hdev, struct hl_ctx *ctx);
611 void gaudi2_init_blocks(struct hl_device *hdev, struct dup_block_ctx *cfg_ctx);
612 bool gaudi2_is_hmmu_enabled(struct hl_device *hdev, int dcore_id, int hmmu_id);
613 void gaudi2_write_rr_to_all_lbw_rtrs(struct hl_device *hdev, u8 rr_type, u32 rr_index, u64 min_val,
615 void gaudi2_pb_print_security_errors(struct hl_device *hdev, u32 block_addr, u32 cause,
[all …]
/linux/drivers/accel/habanalabs/gaudi/
H A Dgaudi.c479 static int gaudi_mmu_update_asid_hop0_addr(struct hl_device *hdev, u32 asid,
481 static int gaudi_send_job_on_qman0(struct hl_device *hdev,
483 static int gaudi_memset_device_memory(struct hl_device *hdev, u64 addr,
485 static int gaudi_memset_registers(struct hl_device *hdev, u64 reg_base,
487 static int gaudi_run_tpc_kernel(struct hl_device *hdev, u64 tpc_kernel,
489 static int gaudi_mmu_clear_pgt_range(struct hl_device *hdev);
490 static int gaudi_cpucp_info_get(struct hl_device *hdev);
491 static void gaudi_disable_clock_gating(struct hl_device *hdev);
492 static void gaudi_mmu_prepare(struct hl_device *hdev, u32 asid);
493 static u32 gaudi_gen_signal_cb(struct hl_device *hdev, void *data, u16 sob_id,
[all …]
H A DgaudiP.h265 struct hl_device *hdev;
319 int (*cpucp_info_get)(struct hl_device *hdev);
337 void gaudi_init_security(struct hl_device *hdev);
338 void gaudi_ack_protection_bits_errors(struct hl_device *hdev);
339 int gaudi_debug_coresight(struct hl_device *hdev, struct hl_ctx *ctx, void *data);
340 void gaudi_halt_coresight(struct hl_device *hdev, struct hl_ctx *ctx);
341 void gaudi_mmu_prepare_reg(struct hl_device *hdev, u64 reg, u32 asid);
/linux/drivers/accel/habanalabs/common/mmu/
H A Dmmu.c23 static struct hl_mmu_funcs *hl_mmu_get_funcs(struct hl_device *hdev, int pgt_residency, in hl_mmu_get_funcs()
29 bool hl_is_dram_va(struct hl_device *hdev, u64 virt_addr) in hl_is_dram_va()
44 int hl_mmu_init(struct hl_device *hdev) in hl_mmu_init()
84 void hl_mmu_fini(struct hl_device *hdev) in hl_mmu_fini()
108 struct hl_device *hdev = ctx->hdev; in hl_mmu_ctx_init()
147 struct hl_device *hdev = ctx->hdev; in hl_mmu_ctx_fini()
175 int hl_mmu_get_real_page_size(struct hl_device *hdev, struct hl_mmu_properties *mmu_prop, in hl_mmu_get_real_page_size()
193 static struct hl_mmu_properties *hl_mmu_get_prop(struct hl_device *hdev, u32 page_size, in hl_mmu_get_prop()
229 struct hl_device *hdev = ctx->hdev; in hl_mmu_unmap_page()
297 struct hl_device *hdev = ctx->hdev; in hl_mmu_map_page()
[all …]
/linux/drivers/accel/habanalabs/common/pci/
H A Dpci.c32 int hl_pci_bars_map(struct hl_device *hdev, const char * const name[3], in hl_pci_bars_map()
77 static void hl_pci_bars_unmap(struct hl_device *hdev) in hl_pci_bars_unmap()
90 int hl_pci_elbi_read(struct hl_device *hdev, u64 addr, u32 *data) in hl_pci_elbi_read()
153 static int hl_pci_elbi_write(struct hl_device *hdev, u64 addr, u32 data) in hl_pci_elbi_write()
213 int hl_pci_iatu_write(struct hl_device *hdev, u32 addr, u32 data) in hl_pci_iatu_write()
245 int hl_pci_set_inbound_region(struct hl_device *hdev, u8 region, in hl_pci_set_inbound_region()
308 int hl_pci_set_outbound_region(struct hl_device *hdev, in hl_pci_set_outbound_region()
352 enum pci_region hl_get_pci_memory_region(struct hl_device *hdev, u64 addr) in hl_get_pci_memory_region()
378 int hl_pci_init(struct hl_device *hdev) in hl_pci_init()
434 void hl_pci_fini(struct hl_device *hdev) in hl_pci_fini()

12