diff options
-rw-r--r-- | arch/arm/plat-s3c64xx/irq-eint.c | 2 | ||||
-rw-r--r-- | drivers/mfd/pcf50633-core.c | 12 |
2 files changed, 4 insertions, 10 deletions
diff --git a/arch/arm/plat-s3c64xx/irq-eint.c b/arch/arm/plat-s3c64xx/irq-eint.c index b05999eaa03..7f853473df7 100644 --- a/arch/arm/plat-s3c64xx/irq-eint.c +++ b/arch/arm/plat-s3c64xx/irq-eint.c @@ -36,7 +36,7 @@ static inline void s3c_irq_eint_mask(unsigned int irq) u32 mask; mask = __raw_readl(S3C64XX_EINT0MASK); - mask &= ~eint_irq_to_bit(irq); + mask |= eint_irq_to_bit(irq); __raw_writel(mask, S3C64XX_EINT0MASK); } diff --git a/drivers/mfd/pcf50633-core.c b/drivers/mfd/pcf50633-core.c index 5a2b76a8205..891f7623377 100644 --- a/drivers/mfd/pcf50633-core.c +++ b/drivers/mfd/pcf50633-core.c @@ -367,8 +367,7 @@ static void pcf50633_irq_worker(struct work_struct *work) put_device(pcf->dev); - if (!machine_is_openmoko_gta03()) - enable_irq(pcf->irq); + enable_irq(pcf->irq); return; reschedule: @@ -387,8 +386,7 @@ static irqreturn_t pcf50633_irq(int irq, void *data) get_device(pcf->dev); - if (!machine_is_openmoko_gta03()) - disable_irq(pcf->irq); + disable_irq(pcf->irq); schedule_work(&pcf->irq_work); @@ -486,10 +484,6 @@ static int pcf50633_probe(struct i2c_client *client, u8 mbcs1; int version; int variant; - int irqf = IRQF_TRIGGER_LOW; - - if (machine_is_openmoko_gta03()) - irqf = IRQF_TRIGGER_FALLING; pdata = client->dev.platform_data; @@ -563,7 +557,7 @@ static int pcf50633_probe(struct i2c_client *client, if (client->irq) { ret = request_irq(client->irq, pcf50633_irq, - irqf, "pcf50633", pcf); + IRQF_TRIGGER_LOW, "pcf50633", pcf); if (ret) { dev_err(pcf->dev, "Failed to request IRQ %d\n", ret); |