Lines Matching refs:cause
56 static int process_misc_interrupts(struct idxd_device *idxd, u32 cause)
64 if (cause & IDXD_INTC_ERR) {
99 if (cause & IDXD_INTC_CMD) {
104 if (cause & IDXD_INTC_OCCUPY) {
109 if (cause & IDXD_INTC_PERFMON_OVFL) {
117 val ^= cause;
119 dev_warn_once(dev, "Unexpected interrupt cause bits set: %#x\n",
156 u32 cause;
158 cause = ioread32(idxd->reg_base + IDXD_INTCAUSE_OFFSET);
159 if (cause)
160 iowrite32(cause, idxd->reg_base + IDXD_INTCAUSE_OFFSET);
162 while (cause) {
163 rc = process_misc_interrupts(idxd, cause);
166 cause = ioread32(idxd->reg_base + IDXD_INTCAUSE_OFFSET);
167 if (cause)
168 iowrite32(cause, idxd->reg_base + IDXD_INTCAUSE_OFFSET);