Re: [PATCH V3 1/2] mfd: add TI TPS80031 mfd core driver

From: Laxman Dewangan
Date: Tue Nov 13 2012 - 12:51:07 EST


On Tuesday 13 November 2012 01:16 PM, Mark Brown wrote:
* PGP Signed by an unknown key

On Sun, Nov 11, 2012 at 08:42:00PM +0530, Laxman Dewangan wrote:

+#define TPS80031_RGEMAP_IRQ(_reg, _mask) \
Why RGEMAP_IRQ?

I think not require. I will remove it.

+static struct regmap_irq_chip tps80031_irq_chip = {
+ .name = "tps80031",
+ .irqs = tps80031_main_irqs,
+ .num_irqs = ARRAY_SIZE(tps80031_main_irqs),
+ .num_regs = 3,
+ .status_base = TPS80031_INT_STS_A,
+ .mask_base = TPS80031_INT_MSK_LINE_A,
+ .wake_base = 1,
I'm not sure your wake_base setting is sane here - this is expected to
be a register. If it is a register why is it not a #define?

There is no wake register. Here I kept for the incerease the wake conut so that irq_set_irq_wake() can be called.

I think it is also not correct after change
regmap: irq: initialize all irqs to wake disabled

I need to set the irq_wake(0 without the register.


+static int __devinit tps80031_irq_init(struct tps80031 *tps80031, int irq,
+ int irq_base)
+{
+ struct device *dev = tps80031->dev;
+ int i, ret;
+
+ for (i = 0; i< 3; i++)
+ tps80031_write(dev, SLAVE_ID2,
+ TPS80031_INT_MSK_STS_A + i, 0x00);
regmap ought to be masking everything for you on init.

There is 2 sets of registers which need to be configure, MASK and LINE enable.

regmap take care of mask only.
* Unknown Key
* 0x7EA229BD

--
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/