Lines Matching refs:idxd

103 	struct idxd_device *idxd;  member
118 struct idxd_device *idxd; member
203 struct idxd_device *idxd; member
244 struct idxd_device *idxd; member
273 struct idxd_device *idxd; member
277 typedef int (*load_device_defaults_fn_t) (struct idxd_device *idxd);
379 static inline unsigned int evl_ent_size(struct idxd_device *idxd) in evl_ent_size() argument
381 return idxd->hw.gen_cap.evl_support ? in evl_ent_size()
382 (32 * (1 << idxd->hw.gen_cap.evl_support)) : 0; in evl_ent_size()
385 static inline unsigned int evl_size(struct idxd_device *idxd) in evl_size() argument
387 return idxd->evl->size * evl_ent_size(idxd); in evl_size()
429 #define idxd_confdev(idxd) &idxd->idxd_dev.conf_dev argument
494 static inline struct idxd_irq_entry *idxd_get_ie(struct idxd_device *idxd, int idx) in idxd_get_ie() argument
496 return (idx == 0) ? &idxd->ie : &idxd->wqs[idx - 1]->ie; in idxd_get_ie()
509 static inline void idxd_set_user_intr(struct idxd_device *idxd, bool enable) in idxd_set_user_intr() argument
513 reg.bits = ioread32(idxd->reg_base + IDXD_GENCFG_OFFSET); in idxd_set_user_intr()
515 iowrite32(reg.bits, idxd->reg_base + IDXD_GENCFG_OFFSET); in idxd_set_user_intr()
575 static inline bool device_pasid_enabled(struct idxd_device *idxd) in device_pasid_enabled() argument
577 return test_bit(IDXD_FLAG_PASID_ENABLED, &idxd->flags); in device_pasid_enabled()
580 static inline bool device_user_pasid_enabled(struct idxd_device *idxd) in device_user_pasid_enabled() argument
582 return test_bit(IDXD_FLAG_USER_PASID_ENABLED, &idxd->flags); in device_user_pasid_enabled()
587 return (is_idxd_wq_kernel(wq) && device_pasid_enabled(wq->idxd)) || in wq_pasid_enabled()
588 (is_idxd_wq_user(wq) && device_user_pasid_enabled(wq->idxd)); in wq_pasid_enabled()
665 static inline void idxd_set_max_batch_size(int idxd_type, struct idxd_device *idxd, in idxd_set_max_batch_size() argument
669 idxd->max_batch_size = 0; in idxd_set_max_batch_size()
671 idxd->max_batch_size = max_batch_size; in idxd_set_max_batch_size()
730 int idxd_register_devices(struct idxd_device *idxd);
731 void idxd_unregister_devices(struct idxd_device *idxd);
732 void idxd_wqs_quiesce(struct idxd_device *idxd);
735 int idxd_load_iaa_device_defaults(struct idxd_device *idxd);
740 void idxd_mask_error_interrupts(struct idxd_device *idxd);
741 void idxd_unmask_error_interrupts(struct idxd_device *idxd);
748 int idxd_device_init_reset(struct idxd_device *idxd);
749 int idxd_device_enable(struct idxd_device *idxd);
750 int idxd_device_disable(struct idxd_device *idxd);
751 void idxd_device_reset(struct idxd_device *idxd);
752 void idxd_device_clear_state(struct idxd_device *idxd);
753 int idxd_device_config(struct idxd_device *idxd);
754 void idxd_device_drain_pasid(struct idxd_device *idxd, int pasid);
755 int idxd_device_load_config(struct idxd_device *idxd);
756 int idxd_device_request_int_handle(struct idxd_device *idxd, int idx, int *handle,
758 int idxd_device_release_int_handle(struct idxd_device *idxd, int handle,
762 void idxd_wqs_unmap_portal(struct idxd_device *idxd);
785 int idxd_register_dma_device(struct idxd_device *idxd);
786 void idxd_unregister_dma_device(struct idxd_device *idxd);
791 int idxd_cdev_get_major(struct idxd_device *idxd);
800 int perfmon_pmu_init(struct idxd_device *idxd);
801 void perfmon_pmu_remove(struct idxd_device *idxd);
802 void perfmon_counter_overflow(struct idxd_device *idxd);
804 static inline int perfmon_pmu_init(struct idxd_device *idxd) { return 0; } in perfmon_pmu_init() argument
805 static inline void perfmon_pmu_remove(struct idxd_device *idxd) {} in perfmon_pmu_remove() argument
806 static inline void perfmon_counter_overflow(struct idxd_device *idxd) {} in perfmon_counter_overflow() argument
810 int idxd_device_init_debugfs(struct idxd_device *idxd);
811 void idxd_device_remove_debugfs(struct idxd_device *idxd);