Lines Matching refs:hpriv

140 static int events_info(struct hl_fpriv *hpriv, struct hl_info_args *args)  in events_info()  argument
149 mutex_lock(&hpriv->notifier_event.lock); in events_info()
150 events_mask = hpriv->notifier_event.events_mask; in events_info()
151 hpriv->notifier_event.events_mask = 0; in events_info()
152 mutex_unlock(&hpriv->notifier_event.lock); in events_info()
157 static int dram_usage_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in dram_usage_info() argument
159 struct hl_device *hdev = hpriv->hdev; in dram_usage_info()
173 if (hpriv->ctx) in dram_usage_info()
175 atomic64_read(&hpriv->ctx->dram_phys_mem); in dram_usage_info()
334 static int pci_counters_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in pci_counters_info() argument
336 struct hl_device *hdev = hpriv->hdev; in pci_counters_info()
353 static int clk_throttle_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in clk_throttle_info() argument
356 struct hl_device *hdev = hpriv->hdev; in clk_throttle_info()
392 static int cs_counters_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in cs_counters_info() argument
396 struct hl_device *hdev = hpriv->hdev; in cs_counters_info()
418 if (hpriv->ctx) { in cs_counters_info()
421 &hpriv->ctx->cs_counters.out_of_mem_drop_cnt); in cs_counters_info()
424 &hpriv->ctx->cs_counters.parsing_drop_cnt); in cs_counters_info()
427 &hpriv->ctx->cs_counters.queue_full_drop_cnt); in cs_counters_info()
430 &hpriv->ctx->cs_counters.device_in_reset_drop_cnt); in cs_counters_info()
433 &hpriv->ctx->cs_counters.max_cs_in_flight_drop_cnt); in cs_counters_info()
436 &hpriv->ctx->cs_counters.validation_drop_cnt); in cs_counters_info()
443 static int sync_manager_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in sync_manager_info() argument
445 struct hl_device *hdev = hpriv->hdev; in sync_manager_info()
468 static int total_energy_consumption_info(struct hl_fpriv *hpriv, in total_energy_consumption_info() argument
471 struct hl_device *hdev = hpriv->hdev; in total_energy_consumption_info()
489 static int pll_frequency_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in pll_frequency_info() argument
491 struct hl_device *hdev = hpriv->hdev; in pll_frequency_info()
508 static int power_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in power_info() argument
510 struct hl_device *hdev = hpriv->hdev; in power_info()
527 static int open_stats_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in open_stats_info() argument
529 struct hl_device *hdev = hpriv->hdev; in open_stats_info()
547 static int dram_pending_rows_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in dram_pending_rows_info() argument
549 struct hl_device *hdev = hpriv->hdev; in dram_pending_rows_info()
566 static int dram_replaced_rows_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in dram_replaced_rows_info() argument
568 struct hl_device *hdev = hpriv->hdev; in dram_replaced_rows_info()
584 static int last_err_open_dev_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in last_err_open_dev_info() argument
587 struct hl_device *hdev = hpriv->hdev; in last_err_open_dev_info()
599 static int cs_timeout_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in cs_timeout_info() argument
602 struct hl_device *hdev = hpriv->hdev; in cs_timeout_info()
615 static int razwi_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in razwi_info() argument
618 struct hl_device *hdev = hpriv->hdev; in razwi_info()
633 static int undefined_opcode_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in undefined_opcode_info() argument
635 struct hl_device *hdev = hpriv->hdev; in undefined_opcode_info()
655 static int dev_mem_alloc_page_sizes_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in dev_mem_alloc_page_sizes_info() argument
659 struct hl_device *hdev = hpriv->hdev; in dev_mem_alloc_page_sizes_info()
676 static int sec_attest_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in sec_attest_info() argument
697 rc = hl_fw_get_sec_attest_info(hpriv->hdev, sec_attest_info, args->sec_attest_nonce); in sec_attest_info()
725 static int dev_info_signed(struct hl_fpriv *hpriv, struct hl_info_args *args) in dev_info_signed() argument
746 rc = hl_fw_get_dev_info_signed(hpriv->hdev, in dev_info_signed()
772 static int eventfd_register(struct hl_fpriv *hpriv, struct hl_info_args *args) in eventfd_register() argument
777 mutex_lock(&hpriv->notifier_event.lock); in eventfd_register()
778 if (hpriv->notifier_event.eventfd) { in eventfd_register()
779 mutex_unlock(&hpriv->notifier_event.lock); in eventfd_register()
783 hpriv->notifier_event.eventfd = eventfd_ctx_fdget(args->eventfd); in eventfd_register()
784 if (IS_ERR(hpriv->notifier_event.eventfd)) { in eventfd_register()
785 rc = PTR_ERR(hpriv->notifier_event.eventfd); in eventfd_register()
786 hpriv->notifier_event.eventfd = NULL; in eventfd_register()
787 mutex_unlock(&hpriv->notifier_event.lock); in eventfd_register()
791 mutex_unlock(&hpriv->notifier_event.lock); in eventfd_register()
795 static int eventfd_unregister(struct hl_fpriv *hpriv, struct hl_info_args *args) in eventfd_unregister() argument
797 mutex_lock(&hpriv->notifier_event.lock); in eventfd_unregister()
798 if (!hpriv->notifier_event.eventfd) { in eventfd_unregister()
799 mutex_unlock(&hpriv->notifier_event.lock); in eventfd_unregister()
803 eventfd_ctx_put(hpriv->notifier_event.eventfd); in eventfd_unregister()
804 hpriv->notifier_event.eventfd = NULL; in eventfd_unregister()
805 mutex_unlock(&hpriv->notifier_event.lock); in eventfd_unregister()
809 static int engine_status_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in engine_status_info() argument
813 struct hl_device *hdev = hpriv->hdev; in engine_status_info()
845 static int page_fault_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in page_fault_info() argument
848 struct hl_device *hdev = hpriv->hdev; in page_fault_info()
863 static int user_mappings_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in user_mappings_info() argument
867 struct hl_device *hdev = hpriv->hdev; in user_mappings_info()
887 static int hw_err_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in hw_err_info() argument
890 struct hl_device *hdev = hpriv->hdev; in hw_err_info()
909 static int fw_err_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in fw_err_info() argument
912 struct hl_device *hdev = hpriv->hdev; in fw_err_info()
931 static int engine_err_info(struct hl_fpriv *hpriv, struct hl_info_args *args) in engine_err_info() argument
934 struct hl_device *hdev = hpriv->hdev; in engine_err_info()
1001 static int _hl_info_ioctl(struct hl_fpriv *hpriv, void *data, in _hl_info_ioctl() argument
1006 struct hl_device *hdev = hpriv->hdev; in _hl_info_ioctl()
1035 return cs_counters_info(hpriv, args); in _hl_info_ioctl()
1038 return clk_throttle_info(hpriv, args); in _hl_info_ioctl()
1041 return sync_manager_info(hpriv, args); in _hl_info_ioctl()
1044 return open_stats_info(hpriv, args); in _hl_info_ioctl()
1047 return last_err_open_dev_info(hpriv, args); in _hl_info_ioctl()
1050 return cs_timeout_info(hpriv, args); in _hl_info_ioctl()
1053 return razwi_info(hpriv, args); in _hl_info_ioctl()
1056 return undefined_opcode_info(hpriv, args); in _hl_info_ioctl()
1059 return dev_mem_alloc_page_sizes_info(hpriv, args); in _hl_info_ioctl()
1062 return events_info(hpriv, args); in _hl_info_ioctl()
1065 return page_fault_info(hpriv, args); in _hl_info_ioctl()
1068 return user_mappings_info(hpriv, args); in _hl_info_ioctl()
1071 return eventfd_unregister(hpriv, args); in _hl_info_ioctl()
1074 return hw_err_info(hpriv, args); in _hl_info_ioctl()
1077 return fw_err_info(hpriv, args); in _hl_info_ioctl()
1080 return engine_err_info(hpriv, args); in _hl_info_ioctl()
1083 return dram_usage_info(hpriv, args); in _hl_info_ioctl()
1112 return pci_counters_info(hpriv, args); in _hl_info_ioctl()
1115 return total_energy_consumption_info(hpriv, args); in _hl_info_ioctl()
1118 return pll_frequency_info(hpriv, args); in _hl_info_ioctl()
1121 return power_info(hpriv, args); in _hl_info_ioctl()
1125 return dram_replaced_rows_info(hpriv, args); in _hl_info_ioctl()
1128 return dram_pending_rows_info(hpriv, args); in _hl_info_ioctl()
1131 return sec_attest_info(hpriv, args); in _hl_info_ioctl()
1134 return eventfd_register(hpriv, args); in _hl_info_ioctl()
1137 return engine_status_info(hpriv, args); in _hl_info_ioctl()
1143 return dev_info_signed(hpriv, args); in _hl_info_ioctl()
1156 struct hl_fpriv *hpriv = file_priv->driver_priv; in hl_info_ioctl() local
1158 return _hl_info_ioctl(hpriv, data, hpriv->hdev->dev); in hl_info_ioctl()
1161 static int hl_info_ioctl_control(struct hl_fpriv *hpriv, void *data) in hl_info_ioctl_control() argument
1174 return _hl_info_ioctl(hpriv, data, hpriv->hdev->dev_ctrl); in hl_info_ioctl_control()
1179 struct hl_fpriv *hpriv = file_priv->driver_priv; in hl_debug_ioctl() local
1180 struct hl_device *hdev = hpriv->hdev; in hl_debug_ioctl()
1207 rc = debug_coresight(hdev, hpriv->ctx, args); in hl_debug_ioctl()
1211 rc = hl_device_set_debug_mode(hdev, hpriv->ctx, (bool) args->enable); in hl_debug_ioctl()
1230 static long _hl_ioctl(struct hl_fpriv *hpriv, unsigned int cmd, unsigned long arg, in _hl_ioctl() argument
1276 retcode = func(hpriv, kdata); in _hl_ioctl()
1298 struct hl_fpriv *hpriv = filep->private_data; in hl_ioctl_control() local
1299 struct hl_device *hdev = hpriv->hdev; in hl_ioctl_control()
1319 return _hl_ioctl(hpriv, cmd, arg, ioctl, hdev->dev_ctrl); in hl_ioctl_control()