lkml.org 
[lkml]   [2018]   [Feb]   [12]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
/
From
Date
SubjectRe: [PATCH v3 0/3] renesas: irqchip: Use wakeup_path i.s.o. explicit clock handling
On 12 February 2018 at 14:55, Geert Uytterhoeven
<geert+renesas@glider.be> wrote:
> Hi all,
>
> If an interrupt controller in a Renesas ARM SoC is part of a Clock
> Domain, and it is part of the wakeup path, it must be kept active during
> system suspend.
>
> Currently this is handled in all interrupt controller drivers by
> explicitly increasing the use count of the module clock when the device
> is part of the wakeup path. However, this explicit clock handling is
> merely a workaround for a failure to properly communicate wakeup
> information to the device core.
>
> Hence this series fixes the affected drivers by setting the devices'
> power.wakeup_path fields instead, to indicate they are part of the
> wakeup path. Depending on the PM Domain's active_wakeup configuration,
> the genpd core code will keep the device enabled (and the clock running)
> during system suspend when needed.
>
> Target trees:
> - Patches 1 and 2 are meant for the irqchip tree,
> - Patch 3 is meant for the GPIO tree.
>
> Changes compared to v2 (sent by Ulf Hanson):
> - Revert to v1, as WAKEUP_PATH didn't make it,
> - Use an atomic_t instead of a boolean flag, as the boolean tracked
> only the status of the last configured GPIO, while multiple interrupt
> sources on the same irqchip may be involved with wake-up,
> - Use new helper device_set_wakeup_path(),
> - Drop checks for CONFIG_PM_SLEEP, as device_set_wakeup_path() is
> always available, unlike dev_pm_info.wakeup_path,
> - Mark suspend functions __maybe_unused.
>
> Changes compared to v1:
> - Convert to use the WAKEUP_PATH driver PM flag (Ulf Hanson).
>
> This has been tested on r8a73a4/ape6evm, r8a7740/armadillo,
> r8a7791/koelsch, r8a7795/salvator-x and -xs, r8a7796/salvator-x, and
> sh73a0/kzm9g.
>
> Thanks for applying!
>
> Geert Uytterhoeven (3):
> irqchip/renesas-intc-irqpin: Use wakeup_path i.s.o. explicit clock
> handling
> irqchip/renesas-irqc: Use wakeup_path i.s.o. explicit clock handling
> gpio: rcar: Use wakeup_path i.s.o. explicit clock handling
>
> drivers/gpio/gpio-rcar.c | 38 +++++++++++++----------------
> drivers/irqchip/irq-renesas-intc-irqpin.c | 40 +++++++++++++------------------
> drivers/irqchip/irq-renesas-irqc.c | 30 ++++++++++++-----------
> 3 files changed, 48 insertions(+), 60 deletions(-)
>

For the series:

Reviewed-by: Ulf Hansson <ulf.hansson@linaro.org>

Kind regards
Uffe

\
 
 \ /
  Last update: 2018-02-12 15:40    [W:0.868 / U:0.084 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site