Lines Matching defs:hl_device
3213 struct hl_device { struct
3223 struct hl_device_reset_work device_reset_work; argument
3224 char asic_name[HL_STR_MAX];
3225 char status[HL_DEV_STS_MAX][HL_STR_MAX];
3226 enum hl_asic_type asic_type;
3227 struct hl_cq *completion_queue;
3228 struct hl_user_interrupt *user_interrupt;
3229 struct hl_user_interrupt common_user_cq_interrupt;
3230 struct hl_user_interrupt common_decoder_interrupt;
3231 struct hl_cs **shadow_cs_queue;
3232 struct workqueue_struct **cq_wq;
3233 struct workqueue_struct *eq_wq;
3234 struct workqueue_struct *cs_cmplt_wq;
3235 struct workqueue_struct *ts_free_obj_wq;
3236 struct workqueue_struct *pf_wq;
3237 struct hl_ctx *kernel_ctx;
3238 struct hl_hw_queue *kernel_queues;
3239 struct list_head cs_mirror_list;
3240 spinlock_t cs_mirror_lock;
3241 struct hl_mem_mgr kernel_mem_mgr;
3242 struct hl_eq event_queue;
3243 struct dma_pool *dma_pool;
3244 void *cpu_accessible_dma_mem;
3245 dma_addr_t cpu_accessible_dma_address;
3246 struct gen_pool *cpu_accessible_dma_pool;
3247 unsigned long *asid_bitmap;
3248 struct mutex asid_mutex;
3249 struct mutex send_cpu_message_lock;
3250 struct mutex debug_lock;
3251 struct mutex mmu_lock;
3252 struct asic_fixed_properties asic_prop;
3253 const struct hl_asic_funcs *asic_funcs;
3254 void *asic_specific;
3255 struct hl_vm vm;
3256 struct device *hwmon_dev;
3257 struct hwmon_chip_info *hl_chip_info;
3259 struct hl_dbg_device_entry hl_debugfs;
3261 struct list_head cb_pool;
3262 spinlock_t cb_pool_lock;
3264 void *internal_cb_pool_virt_addr;
3265 dma_addr_t internal_cb_pool_dma_addr;
3266 struct gen_pool *internal_cb_pool;
3267 u64 internal_cb_va_base;
3269 struct list_head fpriv_list;
3270 struct list_head fpriv_ctrl_list;
3271 struct mutex fpriv_list_lock;
3272 struct mutex fpriv_ctrl_list_lock;
3274 struct hl_cs_counters_atomic aggregated_cs_counters;
3276 struct hl_mmu_priv mmu_priv;
3277 struct hl_mmu_funcs mmu_func[MMU_NUM_PGT_LOCATIONS];
3279 struct hl_dec *dec;
3281 struct fw_load_mgr fw_loader;
3283 struct pci_mem_region pci_mem_region[PCI_REGION_NUMBER];
3285 struct hl_state_dump_specs state_dump_specs;
3287 struct multi_cs_completion multi_cs_completion[
3289 struct hl_clk_throttle clk_throttling;
3290 struct hl_error_info captured_err_info;
3292 struct hl_reset_info reset_info;
3294 u32 *stream_master_qid_arr;
3295 u32 fw_major_version;
3296 u32 fw_minor_version;
3297 atomic64_t dram_used_mem;
3298 u64 memory_scrub_val;
3299 u64 timeout_jiffies;
3300 u64 max_power;
3301 u64 boot_error_status_mask;
3302 u64 dram_pci_bar_start;
3303 u64 last_successful_open_jif;
3304 u64 last_open_session_duration_jif;
3305 u64 open_counter;
3306 u64 fw_poll_interval_usec;
3307 ktime_t last_successful_open_ktime;
3308 u64 fw_comms_poll_interval_usec;
3309 u64 dram_binning;
3310 u64 tpc_binning;
3312 enum cpucp_card_types card_type;
3313 u32 major;
3314 u32 high_pll;
3315 u32 decoder_binning;
3316 u32 edma_binning;
3317 u16 id;
3318 u16 id_control;
3319 u16 cdev_idx;
3320 u16 cpu_pci_msb_addr;
3321 u8 is_in_dram_scrub;
3322 u8 disabled;
3323 u8 late_init_done;
3324 u8 hwmon_initialized;
3325 u8 reset_on_lockup;
3326 u8 dram_default_page_mapping;
3327 u8 memory_scrub;
3328 u8 pmmu_huge_range;
3329 u8 init_done;
3330 u8 device_cpu_disabled;
3331 u8 in_debug;
3332 u8 cdev_sysfs_created;
3333 u8 stop_on_err;
3334 u8 supports_sync_stream;
3335 u8 sync_stream_queue_idx;
3336 u8 collective_mon_idx;
3337 u8 supports_coresight;
3338 u8 supports_cb_mapping;
3339 u8 process_kill_trial_cnt;
3340 u8 device_fini_pending;
3341 u8 supports_staged_submission;
3342 u8 device_cpu_is_halted;
3343 u8 supports_wait_for_multi_cs;
3344 u8 stream_master_qid_arr_size;
3345 u8 is_compute_ctx_active;
3346 u8 compute_ctx_in_release;
3347 u8 supports_mmu_prefetch;
3348 u8 reset_upon_device_release;
3349 u8 supports_ctx_switch;
3352 u64 nic_ports_mask;
3353 u64 fw_components;
3354 u8 mmu_enable;
3355 u8 cpu_queues_enable;
3379 struct hl_device *hdev; argument