On Fri, Mar 01, 2013 at 06:04:56PM +0530, Laxman Dewangan wrote: > Currently driver sets the irq type to IRQF_TRIGGER_LOW which is > causing interrupt registration failure in ARM based SoCs as: > [ 0.208479] genirq: Setting trigger mode 8 for irq 118 failed > (gic_set_type+0x0/0xf0) > [ 0.208513] dummy 0-0059: Failed to request IRQ 118: -22
This can't be a generic problem on ARM systems, I'm pretty sure the
primary users of palmas would've noticed, this is more of a new feature
isn't it?
> + /* Change interrupt line output polarity */
> + ret = palmas_read(palmas, PALMAS_PU_PD_OD_BASE,
> + PALMAS_POLARITY_CTRL, ®);
> + if (ret < 0) {
> + dev_err(palmas->dev, "POLARITY_CTRL read failed: %d\n", ret);
> + goto err;
> + }
> +
> + if (pdata->irq_flags & IRQ_TYPE_LEVEL_HIGH)
> + reg |= PALMAS_POLARITY_CTRL_INT_POLARITY;
> + else
> + reg &= ~PALMAS_POLARITY_CTRL_INT_POLARITY;
> + ret = palmas_write(palmas, PALMAS_PU_PD_OD_BASE,
> + PALMAS_POLARITY_CTRL, reg);
> + if (ret < 0) {
> + dev_err(palmas->dev, "POLARITY_CTRL write failed: %d\n", ret);
> + goto err;
> + }
Isn't there a read/modify/write call for palmas?
Otherwise looks good; I wonder if we even need the platform data though
I can't see it hurting.
signature.asc
Description: Digital signature

