[PATCH v5 7/8] drivers: cpuidle: initialize Exynos driver through DT
From: Bartlomiej Zolnierkiewicz <hidden>
Date: 2014-07-18 16:10:39
Also in:
linux-devicetree, linux-pm
Hi, On Friday, July 18, 2014 02:15:01 PM Chander Kashyap wrote:
Hi Lorenzo, On 17 July 2014 19:50, Lorenzo Pieralisi [off-list ref] wrote:quoted
On Wed, Jun 25, 2014 at 04:23:38PM +0100, Bartlomiej Zolnierkiewicz wrote:quoted
Hi, On Wednesday, June 25, 2014 03:10:20 PM Lorenzo Pieralisi wrote:quoted
With the introduction of DT based idle states, CPUidle drivers for ARM can now initialize idle states data through properties in the device tree. This patch adds code to the Exynos CPUidle driver to dynamically initialize idle states data through the updated device tree source files. Cc: Kukjin Kim <redacted> Cc: Tomasz Figa <redacted> Signed-off-by: Lorenzo Pieralisi <redacted> --- Compile tested, I am not sure I patched the right dts files, please check.cpuidle-exynos driver is currently working properly in deeper cpuidle mode (AFTR) on Exynos4210 and Exynos5250 (please also see the following patch from Tomasz Figa: [1]). There is ongoing work to AFTR mode work also on Exynos4x12 and Exynos3250 but it is not complete yet. Exynos5410 OTOH should probably use the generic big little cpuidle driver (this SoC is similar to Exynos5420 one for which Chander Kashyap has developed cpuidle-big_little support [2]). Making long story short, I think that your patch should depend on patch [1] and update only exynos4210.dtsi and exynos5250.dtsi. Also for your patch #6 there needs to be some coordination with merging of Chander's patchset ([2]). [1] http://www.spinics.net/lists/arm-kernel/msg341023.html [2] https://www.mail-archive.com/linux-kernel at vger.kernel.org/msg664470.htmlexynos4210.dtsi does not even have cpu nodes in it. Should I add them or this might trigger regression (ie cpu_logical_map()) ?Yes that can cause regression.
Yes, two patches from Tomasz Figa are needed to fix it: - [PATCH 2/6] ARM: EXYNOS: Fix core ID used by platsmp and hotplug code http://www.mail-archive.com/linux-samsung-soc at vger.kernel.org/msg32811.html - [PATCH] irqchip: gic: Fix core ID calculation when topology is read from DT http://www.mail-archive.com/linux-samsung-soc at vger.kernel.org/msg34277.html
quoted
I will post a new version soon, should I just patch 5250 for now ?
I posted patch adding CPU nodes for Exynos4 SoCs to DT: - [PATCH] ARM: dts: add CPU nodes for Exynos4 SoCs http://www.mail-archive.com/linux-samsung-soc at vger.kernel.org/msg34378.html Please make your series depend on it and add Exynos4210 support.
quoted
I would need help to test this patch thanks.I can test the patch for 5250.
I can do testing on Exynos4210 if needed. Best regards, -- Bartlomiej Zolnierkiewicz Samsung R&D Institute Poland Samsung Electronics
quoted
Lorenzoquoted
quoted
.../devicetree/bindings/arm/exynos/idle-states.txt | 27 ++++++++++++++++++++ arch/arm/boot/dts/exynos3250.dtsi | 16 ++++++++++++ arch/arm/boot/dts/exynos5250.dtsi | 15 +++++++++++ arch/arm/boot/dts/exynos5410.dtsi | 17 +++++++++++++ drivers/cpuidle/Kconfig.arm | 1 + drivers/cpuidle/cpuidle-exynos.c | 29 +++++++++++++--------- 6 files changed, 93 insertions(+), 12 deletions(-) create mode 100644 Documentation/devicetree/bindings/arm/exynos/idle-states.txt