diff mbox

pinctrl: single: call pcs_soc->rearm() whenever IRQ mask is changed

Message ID 1381507996-15021-1-git-send-email-rogerq@ti.com (mailing list archive)
State New, archived
Headers show

Commit Message

Roger Quadros Oct. 11, 2013, 4:13 p.m. UTC
On OMAPs the IO ring must be rearmed each time the pad wakeup
configuration is changed. So call pcs_soc->rearm() from
pcs_irq_set().

Signed-off-by: Roger Quadros <rogerq@ti.com>
---
 drivers/pinctrl/pinctrl-single.c |    5 +++--
 1 files changed, 3 insertions(+), 2 deletions(-)

Comments

Linus Walleij Oct. 11, 2013, 4:19 p.m. UTC | #1
On Fri, Oct 11, 2013 at 6:13 PM, Roger Quadros <rogerq@ti.com> wrote:

> On OMAPs the IO ring must be rearmed each time the pad wakeup
> configuration is changed. So call pcs_soc->rearm() from
> pcs_irq_set().
>
> Signed-off-by: Roger Quadros <rogerq@ti.com>

If Tony needs to apply this with the other patches: Acked-by.

Yours,
Linus Walleij
Tony Lindgren Oct. 11, 2013, 5:23 p.m. UTC | #2
* Linus Walleij <linus.walleij@linaro.org> [131011 09:27]:
> On Fri, Oct 11, 2013 at 6:13 PM, Roger Quadros <rogerq@ti.com> wrote:
> 
> > On OMAPs the IO ring must be rearmed each time the pad wakeup
> > configuration is changed. So call pcs_soc->rearm() from
> > pcs_irq_set().
> >
> > Signed-off-by: Roger Quadros <rogerq@ti.com>
> 
> If Tony needs to apply this with the other patches: Acked-by.

Just replied with a slightly modified version of Roger's patch
suggesting you pull in the signed tag I posted for you yesterday
and then you can pick up Roger's fix into the pinctrl tree :)

Tony
Linus Walleij Nov. 12, 2013, 6:44 p.m. UTC | #3
On Fri, Oct 11, 2013 at 7:23 PM, Tony Lindgren <tony@atomide.com> wrote:
> * Linus Walleij <linus.walleij@linaro.org> [131011 09:27]:
>> On Fri, Oct 11, 2013 at 6:13 PM, Roger Quadros <rogerq@ti.com> wrote:
>>
>> > On OMAPs the IO ring must be rearmed each time the pad wakeup
>> > configuration is changed. So call pcs_soc->rearm() from
>> > pcs_irq_set().
>> >
>> > Signed-off-by: Roger Quadros <rogerq@ti.com>
>>
>> If Tony needs to apply this with the other patches: Acked-by.
>
> Just replied with a slightly modified version of Roger's patch
> suggesting you pull in the signed tag I posted for you yesterday
> and then you can pick up Roger's fix into the pinctrl tree :)

Hm now that I go over these old mails in my inbox I start to
worry that I missed something here, I have no memory of pulling
a tag for OMAP... is this all in the state
it needs to be for OMAP?

Yours,
Linus Walleij
Tony Lindgren Nov. 12, 2013, 7:56 p.m. UTC | #4
* Linus Walleij <linus.walleij@linaro.org> [131112 10:45]:
> On Fri, Oct 11, 2013 at 7:23 PM, Tony Lindgren <tony@atomide.com> wrote:
> > * Linus Walleij <linus.walleij@linaro.org> [131011 09:27]:
> >> On Fri, Oct 11, 2013 at 6:13 PM, Roger Quadros <rogerq@ti.com> wrote:
> >>
> >> > On OMAPs the IO ring must be rearmed each time the pad wakeup
> >> > configuration is changed. So call pcs_soc->rearm() from
> >> > pcs_irq_set().
> >> >
> >> > Signed-off-by: Roger Quadros <rogerq@ti.com>
> >>
> >> If Tony needs to apply this with the other patches: Acked-by.
> >
> > Just replied with a slightly modified version of Roger's patch
> > suggesting you pull in the signed tag I posted for you yesterday
> > and then you can pick up Roger's fix into the pinctrl tree :)
> 
> Hm now that I go over these old mails in my inbox I start to
> worry that I missed something here, I have no memory of pulling
> a tag for OMAP... is this all in the state
> it needs to be for OMAP?

The other pinctrl-single related patches are now merged to mainline:

1b9c0fb365cbb1154f4e7997061db972cbf58300 pinctrl: single: Fix build when not built on ARM
dc7743aa3c49fabbc6dc9edbcf7df74d776ac32e pinctrl: single: Add support for auxdata
3e6cee1786a13cb2308609b5f8c020e1754e37cf pinctrl: single: Add support for wake-up interrupts
02e483f66deb6bd8df6af450726574614eb53be3 pinctrl: single: Prepare for supporting SoC specific features

The fix from Roger is still missing. You can go ahead and queue
it, or if you prefer me to do it I can add it to my fixes.

Regards,

Tony
Tony Lindgren Nov. 14, 2013, 6:24 p.m. UTC | #5
* Tony Lindgren <tony@atomide.com> [131112 11:57]:
> * Linus Walleij <linus.walleij@linaro.org> [131112 10:45]:
> > On Fri, Oct 11, 2013 at 7:23 PM, Tony Lindgren <tony@atomide.com> wrote:
> > > * Linus Walleij <linus.walleij@linaro.org> [131011 09:27]:
> > >> On Fri, Oct 11, 2013 at 6:13 PM, Roger Quadros <rogerq@ti.com> wrote:
> > >>
> > >> > On OMAPs the IO ring must be rearmed each time the pad wakeup
> > >> > configuration is changed. So call pcs_soc->rearm() from
> > >> > pcs_irq_set().
> > >> >
> > >> > Signed-off-by: Roger Quadros <rogerq@ti.com>
> > >>
> > >> If Tony needs to apply this with the other patches: Acked-by.
> > >
> > > Just replied with a slightly modified version of Roger's patch
> > > suggesting you pull in the signed tag I posted for you yesterday
> > > and then you can pick up Roger's fix into the pinctrl tree :)
> > 
> > Hm now that I go over these old mails in my inbox I start to
> > worry that I missed something here, I have no memory of pulling
> > a tag for OMAP... is this all in the state
> > it needs to be for OMAP?
> 
> The other pinctrl-single related patches are now merged to mainline:
> 
> 1b9c0fb365cbb1154f4e7997061db972cbf58300 pinctrl: single: Fix build when not built on ARM
> dc7743aa3c49fabbc6dc9edbcf7df74d776ac32e pinctrl: single: Add support for auxdata
> 3e6cee1786a13cb2308609b5f8c020e1754e37cf pinctrl: single: Add support for wake-up interrupts
> 02e483f66deb6bd8df6af450726574614eb53be3 pinctrl: single: Prepare for supporting SoC specific features
> 
> The fix from Roger is still missing. You can go ahead and queue
> it, or if you prefer me to do it I can add it to my fixes.

Actually Linus, I'll queue this with your ack as the interrupts-extended
property is now merged in and I can also enable some minimal wake-up
events for omap3.

Regards,

Tony
Linus Walleij Nov. 19, 2013, 8:41 a.m. UTC | #6
On Thu, Nov 14, 2013 at 7:24 PM, Tony Lindgren <tony@atomide.com> wrote:
> * Tony Lindgren <tony@atomide.com> [131112 11:57]:

>> The fix from Roger is still missing. You can go ahead and queue
>> it, or if you prefer me to do it I can add it to my fixes.
>
> Actually Linus, I'll queue this with your ack as the interrupts-extended
> property is now merged in and I can also enable some minimal wake-up
> events for omap3.

OK thanks for the heads-up, go ahead.

Yours,
Linus Walleij
diff mbox

Patch

diff --git a/drivers/pinctrl/pinctrl-single.c b/drivers/pinctrl/pinctrl-single.c
index c2aada7..1800e47 100644
--- a/drivers/pinctrl/pinctrl-single.c
+++ b/drivers/pinctrl/pinctrl-single.c
@@ -1604,6 +1604,9 @@  static inline void pcs_irq_set(struct pcs_soc_data *pcs_soc,
 		pcs->write(mask, pcswi->reg);
 		raw_spin_unlock(&pcs->lock);
 	}
+
+	if (pcs_soc->rearm)
+		pcs_soc->rearm();
 }
 
 /**
@@ -1626,8 +1629,6 @@  static void pcs_irq_unmask(struct irq_data *d)
 	struct pcs_soc_data *pcs_soc = irq_data_get_irq_chip_data(d);
 
 	pcs_irq_set(pcs_soc, d->irq, true);
-	if (pcs_soc->rearm)
-		pcs_soc->rearm();
 }
 
 /**