Re: [PATCH v5 2/3] i2c: iproc: Add Broadcom iProc I2C Driver

From: Arend van Spriel
Date: Sun Jan 18 2015 - 04:14:22 EST


On 01/17/15 00:42, Ray Jui wrote:

[...]

+/*
+ * Can be expanded in the future if more interrupt status bits are utilized
+ */
+#define ISR_MASK (1<< IS_M_START_BUSY_SHIFT)
+
+static irqreturn_t bcm_iproc_i2c_isr(int irq, void *data)
+{
+ struct bcm_iproc_i2c_dev *iproc_i2c = data;
+ u32 status = readl(iproc_i2c->base + IS_OFFSET);
+
+ status&= ISR_MASK;
+
+ if (!status)
+ return IRQ_NONE;
+
+ writel(status, iproc_i2c->base + IS_OFFSET);
+ complete_all(&iproc_i2c->done);

Looking over this code it seems to me there is always a single process waiting for iproc_i2c->done to complete. So using complete() here would suffice.

Regards,
Arend

+
+ return IRQ_HANDLED;
+}

--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/