Lines Matching refs:idxd

16 	struct idxd_device *idxd = container_of(work, struct idxd_device, work);  in idxd_device_reinit()  local
17 struct device *dev = &idxd->pdev->dev; in idxd_device_reinit()
20 idxd_device_reset(idxd); in idxd_device_reinit()
21 rc = idxd_device_config(idxd); in idxd_device_reinit()
25 rc = idxd_device_enable(idxd); in idxd_device_reinit()
29 for (i = 0; i < idxd->max_wqs; i++) { in idxd_device_reinit()
30 struct idxd_wq *wq = &idxd->wqs[i]; in idxd_device_reinit()
44 idxd_device_wqs_clear_state(idxd); in idxd_device_reinit()
50 struct idxd_device *idxd = irq_entry->idxd; in idxd_irq_handler() local
52 idxd_mask_msix_vector(idxd, irq_entry->id); in idxd_irq_handler()
59 struct idxd_device *idxd = irq_entry->idxd; in idxd_misc_thread() local
60 struct device *dev = &idxd->pdev->dev; in idxd_misc_thread()
66 cause = ioread32(idxd->reg_base + IDXD_INTCAUSE_OFFSET); in idxd_misc_thread()
67 iowrite32(cause, idxd->reg_base + IDXD_INTCAUSE_OFFSET); in idxd_misc_thread()
70 spin_lock_bh(&idxd->dev_lock); in idxd_misc_thread()
72 idxd->sw_err.bits[i] = ioread64(idxd->reg_base + in idxd_misc_thread()
74 iowrite64(IDXD_SWERR_ACK, idxd->reg_base + IDXD_SWERR_OFFSET); in idxd_misc_thread()
76 if (idxd->sw_err.valid && idxd->sw_err.wq_idx_valid) { in idxd_misc_thread()
77 int id = idxd->sw_err.wq_idx; in idxd_misc_thread()
78 struct idxd_wq *wq = &idxd->wqs[id]; in idxd_misc_thread()
85 for (i = 0; i < idxd->max_wqs; i++) { in idxd_misc_thread()
86 struct idxd_wq *wq = &idxd->wqs[i]; in idxd_misc_thread()
93 spin_unlock_bh(&idxd->dev_lock); in idxd_misc_thread()
98 i, idxd->sw_err.bits[i]); in idxd_misc_thread()
104 complete(idxd->cmd_done); in idxd_misc_thread()
128 gensts.bits = ioread32(idxd->reg_base + IDXD_GENSTATS_OFFSET); in idxd_misc_thread()
130 idxd->state = IDXD_DEV_HALTED; in idxd_misc_thread()
137 INIT_WORK(&idxd->work, idxd_device_reinit); in idxd_misc_thread()
138 queue_work(idxd->wq, &idxd->work); in idxd_misc_thread()
140 spin_lock_bh(&idxd->dev_lock); in idxd_misc_thread()
141 idxd_device_wqs_clear_state(idxd); in idxd_misc_thread()
142 dev_err(&idxd->pdev->dev, in idxd_misc_thread()
146 spin_unlock_bh(&idxd->dev_lock); in idxd_misc_thread()
151 idxd_unmask_msix_vector(idxd, irq_entry->id); in idxd_misc_thread()
251 idxd_unmask_msix_vector(irq_entry->idxd, irq_entry->id); in idxd_wq_thread()