All of lore.kernel.org
 help / color / mirror / Atom feed
From: Tony Lindgren <tony@atomide.com>
To: Sudeep Holla <sudeep.holla@arm.com>
Cc: linux-pm@vger.kernel.org,
	Kevin Hilman <khilman@deeprootsystems.com>,
	"Rafael J. Wysocki" <rjw@rjwysocki.net>,
	linux-kernel@vger.kernel.org,
	Thomas Gleixner <tglx@linutronix.de>,
	linux-omap@vger.kernel.org, linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH 12/17] ARM: OMAP2+: remove misuse of IRQF_NO_SUSPEND flag
Date: Tue, 13 Oct 2015 07:53:59 -0700	[thread overview]
Message-ID: <20151013145359.GV23801@atomide.com> (raw)
In-Reply-To: <561CE017.7030704@arm.com>

* Sudeep Holla <sudeep.holla@arm.com> [151013 03:46]:
> 
> 
> On 12/10/15 21:28, Tony Lindgren wrote:
> >* Tony Lindgren <tony@atomide.com> [151012 13:27]:
> >>* Sudeep Holla <sudeep.holla@arm.com> [150921 08:52]:
> >>>The IRQF_NO_SUSPEND flag is used to identify the interrupts that should
> >>>be left enabled so as to allow them to work as expected during the
> >>>suspend-resume cycle, but doesn't guarantee that it will wake the system
> >>>from a suspended state, enable_irq_wake is recommended to be used for
> >>>the wakeup.
> >>>
> >>>This patch removes the use of IRQF_NO_SUSPEND flags replacing it with
> >>>enable_irq_wake instead.
> >>
> >>Applying into omap-for-v4.4/cleanup thanks.
> >
> >Actually I don't think this does the right thing. The interrupts
> >in the $subject patch are in the always on powerdomain, and we really
> 
> Agreed
> 
> >want them to be excluded from the suspend.
> >
> 
> OK but what's wrong with this patch. At-least the name suggest it's a
> wakeup interrupt. And using IRQF_NO_SUSPEND for the wakeup interrupt is
> simply wrong.

Hmm so if we have a separate always on irq controller for the wake-up events
and we want to keep it always on and exclude it from any suspend related
things.. Why would we not use IRQF_NO_SUSPEND on it?

Above you say "The IRQF_NO_SUSPEND flag is used to identify the interrupts
that should be left enabled so as to allow them to work as expected during
the suspend-resume cycle..." and that's exactly what we want to do here :)

For the dedicated wake-up interrupts, we have separate registers to enable
and disable them. The $subject irq is the shared interrupt that allows
making use of the pin specific wake-up interrupts, and for those yes we
are using enable_irq_wake().

> >So not applying without further explanations.
> >
> 
> But I don't understand the real need for IRQF_NO_SUSPEND over wakeup APIs ?

Because in the $subject case we just want to always keep it on and
never suspend it. It's unrelated to the wakeup APIs at least for the
omap related SoCs.

Regards,

Tony

WARNING: multiple messages have this Message-ID (diff)
From: tony@atomide.com (Tony Lindgren)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH 12/17] ARM: OMAP2+: remove misuse of IRQF_NO_SUSPEND flag
Date: Tue, 13 Oct 2015 07:53:59 -0700	[thread overview]
Message-ID: <20151013145359.GV23801@atomide.com> (raw)
In-Reply-To: <561CE017.7030704@arm.com>

* Sudeep Holla <sudeep.holla@arm.com> [151013 03:46]:
> 
> 
> On 12/10/15 21:28, Tony Lindgren wrote:
> >* Tony Lindgren <tony@atomide.com> [151012 13:27]:
> >>* Sudeep Holla <sudeep.holla@arm.com> [150921 08:52]:
> >>>The IRQF_NO_SUSPEND flag is used to identify the interrupts that should
> >>>be left enabled so as to allow them to work as expected during the
> >>>suspend-resume cycle, but doesn't guarantee that it will wake the system
> >>>from a suspended state, enable_irq_wake is recommended to be used for
> >>>the wakeup.
> >>>
> >>>This patch removes the use of IRQF_NO_SUSPEND flags replacing it with
> >>>enable_irq_wake instead.
> >>
> >>Applying into omap-for-v4.4/cleanup thanks.
> >
> >Actually I don't think this does the right thing. The interrupts
> >in the $subject patch are in the always on powerdomain, and we really
> 
> Agreed
> 
> >want them to be excluded from the suspend.
> >
> 
> OK but what's wrong with this patch. At-least the name suggest it's a
> wakeup interrupt. And using IRQF_NO_SUSPEND for the wakeup interrupt is
> simply wrong.

Hmm so if we have a separate always on irq controller for the wake-up events
and we want to keep it always on and exclude it from any suspend related
things.. Why would we not use IRQF_NO_SUSPEND on it?

Above you say "The IRQF_NO_SUSPEND flag is used to identify the interrupts
that should be left enabled so as to allow them to work as expected during
the suspend-resume cycle..." and that's exactly what we want to do here :)

For the dedicated wake-up interrupts, we have separate registers to enable
and disable them. The $subject irq is the shared interrupt that allows
making use of the pin specific wake-up interrupts, and for those yes we
are using enable_irq_wake().

> >So not applying without further explanations.
> >
> 
> But I don't understand the real need for IRQF_NO_SUSPEND over wakeup APIs ?

Because in the $subject case we just want to always keep it on and
never suspend it. It's unrelated to the wakeup APIs at least for the
omap related SoCs.

Regards,

Tony

  reply	other threads:[~2015-10-13 14:53 UTC|newest]

Thread overview: 105+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-21 15:46 [PATCH 00/17] PM / wakeup : remove misuse of IRQF_NO_SUSPEND flag Sudeep Holla
2015-09-21 15:46 ` [PATCH 01/17] rtc: pl031: " Sudeep Holla
2015-09-21 15:46   ` [rtc-linux] " Sudeep Holla
2015-10-02 10:40   ` Linus Walleij
2015-10-02 10:40     ` [rtc-linux] " Linus Walleij
2015-10-02 10:45     ` Sudeep Holla
2015-10-02 10:45       ` [rtc-linux] " Sudeep Holla
2015-10-02 13:16       ` Alexandre Belloni
2015-10-02 13:16         ` [rtc-linux] " Alexandre Belloni
2015-10-05  8:49       ` Linus Walleij
2015-10-05  8:49         ` [rtc-linux] " Linus Walleij
2015-10-03 15:20   ` Alexandre Belloni
2015-10-03 15:20     ` [rtc-linux] " Alexandre Belloni
2015-09-21 15:46 ` [PATCH 02/17] rtc: ab8500: " Sudeep Holla
2015-09-21 15:46   ` [rtc-linux] " Sudeep Holla
2015-10-02 10:41   ` Linus Walleij
2015-10-02 10:41     ` [rtc-linux] " Linus Walleij
2015-10-03 15:20   ` Alexandre Belloni
2015-10-03 15:20     ` [rtc-linux] " Alexandre Belloni
2015-09-21 15:46 ` [PATCH 03/17] input: tegra-kbc: drop use " Sudeep Holla
2015-10-05  5:44   ` Thierry Reding
2015-10-05 10:24   ` Laxman Dewangan
2015-10-05 10:24     ` Laxman Dewangan
2015-10-19 17:34     ` Sudeep Holla
2015-10-26  8:37       ` Dmitry Torokhov
2015-09-21 15:47 ` [PATCH 04/17] powerpc: mpic: use IRQCHIP_SKIP_SET_WAKE instead of redundant mpic_irq_set_wake Sudeep Holla
2015-09-22 23:50   ` Scott Wood
2015-09-22 23:50     ` Scott Wood
2015-09-23  2:35     ` Wang Dongsheng
2015-09-23  2:35       ` Wang Dongsheng
2015-09-23  2:35       ` Wang Dongsheng
2015-09-23  3:49       ` Thomas Gleixner
2015-09-23  5:31         ` Wang Dongsheng
2015-09-23  5:31           ` Wang Dongsheng
2015-09-23  8:00           ` Thomas Gleixner
2015-09-23  4:06   ` Scott Wood
2015-09-23  4:06     ` Scott Wood
2015-10-19 17:35     ` Sudeep Holla
2015-10-19 17:46       ` Scott Wood
2015-09-21 15:47 ` [PATCH 05/17] platform: x86: remove misuse of IRQF_NO_SUSPEND flag Sudeep Holla
2015-10-03 16:09   ` Darren Hart
2015-09-21 15:47 ` [PATCH 06/17] rtc: ds1343: " Sudeep Holla
2015-09-21 15:47   ` [rtc-linux] " Sudeep Holla
2015-10-03 15:20   ` Alexandre Belloni
2015-10-03 15:20     ` [rtc-linux] " Alexandre Belloni
2015-09-21 15:47 ` [PATCH 07/17] input: tegra-kbc: drop use " Sudeep Holla
2015-09-21 23:21   ` Lee Jones
2015-09-22  0:43     ` Dmitry Torokhov
2015-09-22 21:08       ` Lee Jones
2015-09-23  8:53         ` Sudeep Holla
2015-09-22 10:00     ` Sudeep Holla
2015-09-25 12:39   ` [PATCH 07/17][UPDATE] mfd: qcom_rpm: Drop " Sudeep Holla
2015-09-25 16:08     ` Lee Jones
2015-09-21 15:47 ` [PATCH 08/17] hwmon: abx500: drop the use of IRQF_NO_SUSPEND Sudeep Holla
2015-09-23 15:32   ` Guenter Roeck
2015-09-21 15:47 ` [PATCH 09/17] MIPS: ttyFDC: replace IRQF_NO_SUSPEND with IRQF_COND_SUSPEND Sudeep Holla
2015-09-21 15:47 ` [PATCH 10/17] tty/serial: st-asc: drop the use of IRQF_NO_SUSPEND Sudeep Holla
2015-09-21 15:47   ` Sudeep Holla
2015-09-21 15:47 ` [PATCH 11/17] pm: bf609: remove misuse of IRQF_NO_SUSPEND flag Sudeep Holla
2015-10-19 17:38   ` Sudeep Holla
2015-09-21 15:47 ` [PATCH 12/17] ARM: OMAP2+: " Sudeep Holla
2015-09-21 15:47   ` Sudeep Holla
2015-10-12 20:20   ` Tony Lindgren
2015-10-12 20:20     ` Tony Lindgren
2015-10-12 20:28     ` Tony Lindgren
2015-10-12 20:28       ` Tony Lindgren
2015-10-13 10:42       ` Sudeep Holla
2015-10-13 10:42         ` Sudeep Holla
2015-10-13 14:53         ` Tony Lindgren [this message]
2015-10-13 14:53           ` Tony Lindgren
2015-10-13 15:20           ` Sudeep Holla
2015-10-13 15:20             ` Sudeep Holla
2015-10-13 15:20             ` Sudeep Holla
2015-09-21 15:47 ` [PATCH 13/17] net: gianfar: " Sudeep Holla
2015-09-21 16:24   ` Manoil Claudiu
2015-09-21 16:38     ` Sudeep Holla
2015-09-21 16:51     ` Thomas Gleixner
2015-09-22 14:04       ` Manoil Claudiu
2015-09-22 15:09         ` Sudeep Holla
2015-09-23 21:20       ` Li Yang
2015-09-23 22:03         ` Thomas Gleixner
2015-09-24 21:17           ` Li Yang
2015-09-24 21:23   ` David Miller
2015-09-21 15:47 ` [PATCH 14/17] media: st-rc: " Sudeep Holla
2015-09-21 15:47   ` Sudeep Holla
2015-09-21 15:47   ` Sudeep Holla
2015-10-19 17:40   ` Sudeep Holla
2015-10-19 17:40     ` Sudeep Holla
2015-09-21 15:47 ` [PATCH 15/17] ir-hix5hd2: drop the use of IRQF_NO_SUSPEND Sudeep Holla
2015-09-23 14:26   ` zhangfei
2015-09-23 14:37     ` Sudeep Holla
2015-09-23 14:50       ` zhangfei
2015-09-21 15:47 ` [PATCH 16/17] pinctrl: single: remove misuse of IRQF_NO_SUSPEND flag Sudeep Holla
2015-09-21 18:53   ` Thomas Gleixner
2015-09-22  9:42     ` Sudeep Holla
2015-09-21 15:47 ` [PATCH 17/17] mfd : ab8500/db8500: fix the abuse of IRQF_NO_SUSPEND Sudeep Holla
2015-09-21 15:47   ` Sudeep Holla
2015-09-21 23:20   ` Lee Jones
2015-09-21 23:20     ` Lee Jones
2015-09-22 10:04     ` Sudeep Holla
2015-09-22 10:04       ` Sudeep Holla
2015-09-22 21:03       ` Lee Jones
2015-09-22 21:03         ` Lee Jones
2015-09-23  9:44         ` Sudeep Holla
2015-09-23  9:44           ` Sudeep Holla

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20151013145359.GV23801@atomide.com \
    --to=tony@atomide.com \
    --cc=khilman@deeprootsystems.com \
    --cc=linux-arm-kernel@lists.infradead.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-omap@vger.kernel.org \
    --cc=linux-pm@vger.kernel.org \
    --cc=rjw@rjwysocki.net \
    --cc=sudeep.holla@arm.com \
    --cc=tglx@linutronix.de \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.