From: Catalin Marinas <catalin.marinas@arm.com>
To: Daniel Lezcano <daniel.lezcano@linaro.org>
Cc: Lorenzo Pieralisi <Lorenzo.Pieralisi@arm.com>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>,
"linux-pm@vger.kernel.org" <linux-pm@vger.kernel.org>,
"devicetree@vger.kernel.org" <devicetree@vger.kernel.org>,
Mark Rutland <Mark.Rutland@arm.com>,
Sudeep Holla <Sudeep.Holla@arm.com>,
Will Deacon <Will.Deacon@arm.com>,
Charles Garcia-Tobin <Charles.Garcia-Tobin@arm.com>,
Nicolas Pitre <nico@linaro.org>, Rob Herring <robh+dt@kernel.org>,
"grant.likely@linaro.org" <grant.likely@linaro.org>,
Peter De Schrijver <pdeschrijver@nvidia.com>,
Santosh Shilimkar <santosh.shilimkar@ti.com>,
Amit Kucheria <amit.kucheria@linaro.org>,
Vincent Guittot <vincent.guittot@linaro.org>,
Antti Miettinen <ananaza@iki.fi>,
Stephen Boyd <sboyd@codeaurora.org>,
Kevin Hilman <khilman@linaro.org>,
Sebastian Capella <sebcape@gmail.com>,
Mark Brown <broonie@kernel.o>
Subject: Re: [PATCH v9 6/8] drivers: cpuidle: CPU idle ARM64 driver
Date: Mon, 8 Sep 2014 17:08:39 +0100 [thread overview]
Message-ID: <20140908160838.GA13778@arm.com> (raw)
In-Reply-To: <1409938498-17984-7-git-send-email-lorenzo.pieralisi@arm.com>
On Fri, Sep 05, 2014 at 06:34:55PM +0100, Lorenzo Pieralisi wrote:
> This patch implements a generic CPU idle driver for ARM64 machines.
>
> It relies on the DT idle states infrastructure to initialize idle
> states count and respective parameters. Current code assumes the driver
> is managing idle states on all possible CPUs but can be easily
> generalized to support heterogenous systems and build cpumasks at
> runtime using MIDRs or DT cpu nodes compatible properties.
>
> The driver relies on the arm64 CPU operations to call the idle
> initialization hook used to parse and save suspend back-end specific
> idle states information upon probing.
>
> Idle state index 0 is always initialized as a simple wfi state, ie always
> considered present and functional on all ARM64 platforms.
>
> Idle state indices higher than 0 trigger idle state entry by calling
> the cpu_suspend function, that triggers the suspend operation through
> the CPU operations suspend back-end hook. cpu_suspend passes the idle
> state index as a parameter so that the CPU operations suspend back-end
> can retrieve the required idle state data by using the idle state
> index to execute a look-up on its internal data structures.
>
> Reviewed-by: Ashwin Chaugule <ashwin.chaugule@linaro.org>
> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> ---
> drivers/cpuidle/Kconfig | 5 ++
> drivers/cpuidle/Kconfig.arm64 | 14 +++++
> drivers/cpuidle/Makefile | 4 ++
> drivers/cpuidle/cpuidle-arm64.c | 133 ++++++++++++++++++++++++++++++++++++++++
> 4 files changed, 156 insertions(+)
> create mode 100644 drivers/cpuidle/Kconfig.arm64
> create mode 100644 drivers/cpuidle/cpuidle-arm64.c
Daniel, do you have any preference for how this patch should go in? You
can either ack it so that I can take it via the arm64 tree or you take
it separately (though it doesn't make sense on its own without the arm64
infrastructure in place, we need a bit of synchronisation but it's not
something difficult).
Thanks.
--
Catalin
WARNING: multiple messages have this Message-ID (diff)
From: catalin.marinas@arm.com (Catalin Marinas)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v9 6/8] drivers: cpuidle: CPU idle ARM64 driver
Date: Mon, 8 Sep 2014 17:08:39 +0100 [thread overview]
Message-ID: <20140908160838.GA13778@arm.com> (raw)
In-Reply-To: <1409938498-17984-7-git-send-email-lorenzo.pieralisi@arm.com>
On Fri, Sep 05, 2014 at 06:34:55PM +0100, Lorenzo Pieralisi wrote:
> This patch implements a generic CPU idle driver for ARM64 machines.
>
> It relies on the DT idle states infrastructure to initialize idle
> states count and respective parameters. Current code assumes the driver
> is managing idle states on all possible CPUs but can be easily
> generalized to support heterogenous systems and build cpumasks at
> runtime using MIDRs or DT cpu nodes compatible properties.
>
> The driver relies on the arm64 CPU operations to call the idle
> initialization hook used to parse and save suspend back-end specific
> idle states information upon probing.
>
> Idle state index 0 is always initialized as a simple wfi state, ie always
> considered present and functional on all ARM64 platforms.
>
> Idle state indices higher than 0 trigger idle state entry by calling
> the cpu_suspend function, that triggers the suspend operation through
> the CPU operations suspend back-end hook. cpu_suspend passes the idle
> state index as a parameter so that the CPU operations suspend back-end
> can retrieve the required idle state data by using the idle state
> index to execute a look-up on its internal data structures.
>
> Reviewed-by: Ashwin Chaugule <ashwin.chaugule@linaro.org>
> Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
> Signed-off-by: Lorenzo Pieralisi <lorenzo.pieralisi@arm.com>
> ---
> drivers/cpuidle/Kconfig | 5 ++
> drivers/cpuidle/Kconfig.arm64 | 14 +++++
> drivers/cpuidle/Makefile | 4 ++
> drivers/cpuidle/cpuidle-arm64.c | 133 ++++++++++++++++++++++++++++++++++++++++
> 4 files changed, 156 insertions(+)
> create mode 100644 drivers/cpuidle/Kconfig.arm64
> create mode 100644 drivers/cpuidle/cpuidle-arm64.c
Daniel, do you have any preference for how this patch should go in? You
can either ack it so that I can take it via the arm64 tree or you take
it separately (though it doesn't make sense on its own without the arm64
infrastructure in place, we need a bit of synchronisation but it's not
something difficult).
Thanks.
--
Catalin
next prev parent reply other threads:[~2014-09-08 16:08 UTC|newest]
Thread overview: 29+ messages / expand[flat|nested] mbox.gz Atom feed top
2014-09-05 17:34 [PATCH v9 0/8] ARM generic idle states Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-05 17:34 ` [PATCH v9 1/8] Documentation: arm: define DT idle states bindings Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-05 17:34 ` [PATCH v9 2/8] arm64: kernel: refactor the CPU suspend API for retention states Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-05 17:34 ` [PATCH v9 3/8] arm64: kernel: introduce cpu_init_idle CPU operation Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-05 17:34 ` [PATCH v9 4/8] arm64: add PSCI CPU_SUSPEND based cpu_suspend support Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-05 17:34 ` [PATCH v9 5/8] drivers: cpuidle: implement DT based idle states infrastructure Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-05 20:00 ` Kevin Hilman
2014-09-05 21:29 ` Lorenzo Pieralisi
2014-09-05 21:29 ` Lorenzo Pieralisi
2014-09-05 21:36 ` Mark Brown
2014-09-05 21:36 ` Mark Brown
2014-09-08 15:58 ` Kevin Hilman
2014-09-08 15:58 ` Kevin Hilman
2014-09-09 15:51 ` Lorenzo Pieralisi
2014-09-09 15:51 ` Lorenzo Pieralisi
[not found] ` <1409938498-17984-1-git-send-email-lorenzo.pieralisi-5wv7dgnIgG8@public.gmane.org>
2014-09-05 17:34 ` [PATCH v9 6/8] drivers: cpuidle: CPU idle ARM64 driver Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-08 16:08 ` Catalin Marinas [this message]
2014-09-08 16:08 ` Catalin Marinas
2014-09-05 17:34 ` [PATCH v9 7/8] drivers: cpuidle: initialize big.LITTLE driver through DT Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
2014-09-05 17:34 ` [PATCH v9 8/8] drivers: cpuidle: initialize Exynos " Lorenzo Pieralisi
2014-09-05 17:34 ` Lorenzo Pieralisi
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=20140908160838.GA13778@arm.com \
--to=catalin.marinas@arm.com \
--cc=Charles.Garcia-Tobin@arm.com \
--cc=Lorenzo.Pieralisi@arm.com \
--cc=Mark.Rutland@arm.com \
--cc=Sudeep.Holla@arm.com \
--cc=Will.Deacon@arm.com \
--cc=amit.kucheria@linaro.org \
--cc=ananaza@iki.fi \
--cc=broonie@kernel.o \
--cc=daniel.lezcano@linaro.org \
--cc=devicetree@vger.kernel.org \
--cc=grant.likely@linaro.org \
--cc=khilman@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-pm@vger.kernel.org \
--cc=nico@linaro.org \
--cc=pdeschrijver@nvidia.com \
--cc=robh+dt@kernel.org \
--cc=santosh.shilimkar@ti.com \
--cc=sboyd@codeaurora.org \
--cc=sebcape@gmail.com \
--cc=vincent.guittot@linaro.org \
/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.