Re: [PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
On 05/22/2014 08:35 PM, Kukjin Kim wrote: On 04/26/14 20:05, Kukjin Kim wrote: Tomasz Figa wrote: On 14.04.2014 11:01, Daniel Lezcano wrote: Hi Kukjin, I believe I addressed all the comments. Is it possible to take this patchset for next ? Sure ;-) +1. Also when applying you might add Reviewed-by: Tomasz Figat.f...@samsung.com to any patches that don't have it yet. Tomasz, thanks for your review. I will take this series, moving exynos-cpuidle into drivers/cpuidle into samsung tree if Rafael is OK on that. Daniel, Can you please check/test the functionality your series with using my for-next because there were merge conflicts with mcpm-exynos stuff...? Hi Kukjin, I tested the latest tree. Unfortunately it panics when unplugging cpu1: [3.124189] Unable to handle kernel paging request at virtual address f8400024 [3.129950] pgd = c0004000 [3.132626] [f8400024] *pgd=6f7f7841, *pte=, *ppte= [3.138877] Internal error: Oops: 827 [#1] PREEMPT SMP ARM [3.192782] r3 : f8400024 r2 : f8180800 r1 : ee836e44 r0 : f8400024 [3.199293] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel [3.206673] Control: 10c5387d Table: 6e37c04a DAC: 0015 [3.212398] Process swapper/0 (pid: 0, stack limit = 0xc0510240) [3.218388] Stack: (0xc0511ef4 to 0xc0512000) [3.222728] 1ee0: 0030 c02b20f8 ee836e40 [3.230894] 1f00: c001234c 6e88 c0511f34 40018a80 0015 [3.239053] 1f20: 4000404a 10c5387d 0041 00f0 c02b20e4 edc4a540 [3.247212] 1f40: c038dacc eefc5cf8 c050ecf0 c0543210 c0012460 0001 c0543210 [3.255371] 1f60: eefc5cf8 c02b2148 b9f92927 c054326c c02b0968 b9f92927 [3.263530] 1f80: c051 c0518480 c038dacc c051 c051 c0518480 c038dacc eefc5cf8 [3.271689] 1fa0: c0543210 c004e990 c0511fb4 c03873b8 c04f90c8 c04d4b18 [3.279848] 1fc0: c04d457c c04f90c8 10c5387d [3.288007] 1fe0: c0518410 c04f90c4 c051bd5c 4000406a 40008074 [3.296184] [c0019c5c] (exynos_enter_aftr) from [c02b20f8] (idle_finisher+0x14/0x20) [3.304247] [c02b20f8] (idle_finisher) from [c001234c] (cpu_suspend_abort+0x0/0x14) [3.312226] [c001234c] (cpu_suspend_abort) from [] ( (null)) [3.318994] Code: e34f3840 e3500010 11a2 01a3 (e5804000) [3.325069] ---[ end trace fca911f75a18c040 ]--- After git bisecting I falls on this commit: commit b3205dea8fbf6db9b1e46a0dad19a0712fdff44f Author: Sachin Kamat sachin.ka...@linaro.org Date: Tue May 13 07:13:44 2014 +0900 ARM: EXYNOS: Map SYSRAM through generic DT bindings Instead of hardcoding the SYSRAM details for each SoC, pass this information through device tree (DT) and make the code SoC agnostic. Generic DT SRAM bindings are used for achieving this. Signed-off-by: Sachin Kamat sachin.ka...@linaro.org Acked-by: Arnd Bergmann a...@arndb.de Acked-by: Heiko Stuebner he...@sntech.de Reviewed-by: Tomasz Figa t.f...@samsung.com Signed-off-by: Kukjin Kim kgene@samsung.com ... which is before my series is applied. So I am not able to tell yet if my series is correctly rebased or not. And before someone asks me, yes I updated the dtb :) -- http://www.linaro.org/ Linaro.org │ Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro Facebook | http://twitter.com/#!/linaroorg Twitter | http://www.linaro.org/linaro-blog/ Blog -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
On 24 May 2014 03:01, Tomasz Figa tomasz.f...@gmail.com wrote: Hi Daniel, On 23.05.2014 17:32, Daniel Lezcano wrote: On 05/22/2014 08:35 PM, Kukjin Kim wrote: On 04/26/14 20:05, Kukjin Kim wrote: Tomasz Figa wrote: On 14.04.2014 11:01, Daniel Lezcano wrote: Hi Kukjin, I believe I addressed all the comments. Is it possible to take this patchset for next ? Sure ;-) +1. Also when applying you might add Reviewed-by: Tomasz Figat.f...@samsung.com to any patches that don't have it yet. Tomasz, thanks for your review. I will take this series, moving exynos-cpuidle into drivers/cpuidle into samsung tree if Rafael is OK on that. Daniel, Can you please check/test the functionality your series with using my for-next because there were merge conflicts with mcpm-exynos stuff...? Hi Kukjin, I tested the latest tree. Unfortunately it panics when unplugging cpu1: [3.124189] Unable to handle kernel paging request at virtual address f8400024 [3.129950] pgd = c0004000 [3.132626] [f8400024] *pgd=6f7f7841, *pte=, *ppte= [3.138877] Internal error: Oops: 827 [#1] PREEMPT SMP ARM [3.192782] r3 : f8400024 r2 : f8180800 r1 : ee836e44 r0 : f8400024 [3.199293] Flags: nZCv IRQs off FIQs on Mode SVC_32 ISA ARM Segment kernel [3.206673] Control: 10c5387d Table: 6e37c04a DAC: 0015 [3.212398] Process swapper/0 (pid: 0, stack limit = 0xc0510240) [3.218388] Stack: (0xc0511ef4 to 0xc0512000) [3.222728] 1ee0: 0030 c02b20f8 ee836e40 [3.230894] 1f00: c001234c 6e88 c0511f34 40018a80 0015 [3.239053] 1f20: 4000404a 10c5387d 0041 00f0 c02b20e4 edc4a540 [3.247212] 1f40: c038dacc eefc5cf8 c050ecf0 c0543210 c0012460 0001 c0543210 [3.255371] 1f60: eefc5cf8 c02b2148 b9f92927 c054326c c02b0968 b9f92927 [3.263530] 1f80: c051 c0518480 c038dacc c051 c051 c0518480 c038dacc eefc5cf8 [3.271689] 1fa0: c0543210 c004e990 c0511fb4 c03873b8 c04f90c8 c04d4b18 [3.279848] 1fc0: c04d457c c04f90c8 10c5387d [3.288007] 1fe0: c0518410 c04f90c4 c051bd5c 4000406a 40008074 [3.296184] [c0019c5c] (exynos_enter_aftr) from [c02b20f8] (idle_finisher+0x14/0x20) [3.304247] [c02b20f8] (idle_finisher) from [c001234c] (cpu_suspend_abort+0x0/0x14) [3.312226] [c001234c] (cpu_suspend_abort) from [] ( (null)) [3.318994] Code: e34f3840 e3500010 11a2 01a3 (e5804000) [3.325069] ---[ end trace fca911f75a18c040 ]--- After git bisecting I falls on this commit: commit b3205dea8fbf6db9b1e46a0dad19a0712fdff44f Author: Sachin Kamat sachin.ka...@linaro.org Date: Tue May 13 07:13:44 2014 +0900 ARM: EXYNOS: Map SYSRAM through generic DT bindings Instead of hardcoding the SYSRAM details for each SoC, pass this information through device tree (DT) and make the code SoC agnostic. Generic DT SRAM bindings are used for achieving this. Signed-off-by: Sachin Kamat sachin.ka...@linaro.org Acked-by: Arnd Bergmann a...@arndb.de Acked-by: Heiko Stuebner he...@sntech.de Reviewed-by: Tomasz Figa t.f...@samsung.com Signed-off-by: Kukjin Kim kgene@samsung.com ... which is before my series is applied. So I am not able to tell yet if my series is correctly rebased or not. And before someone asks me, yes I updated the dtb :) The driver seemed to be working fine for me on Exynos4210-TRATS board (with right bootloader, which supports AFTR). Still, a quick look at the code reveals use of S5P_VA_SYSRAM macro, in case of certain SoC revisions, which is not valid any longer, after SYSRAM started to be mapped dynamically. As you can see in platsmp.c, the new dynamic mapping is stored in sysram_base_addr variable, which is static right now. My proposed fix would be to make it non-static, declare it in one of existing private headers (common.h probably) and use it in pm.c instead of S5P_VA_SYSRAM. Yes, that is right. Just like the way it is done for sysram_ns_base_addr in common.h -- With warm regards, Sachin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
On 04/26/14 20:05, Kukjin Kim wrote: Tomasz Figa wrote: On 14.04.2014 11:01, Daniel Lezcano wrote: Hi Kukjin, I believe I addressed all the comments. Is it possible to take this patchset for next ? Sure ;-) +1. Also when applying you might add Reviewed-by: Tomasz Figat.f...@samsung.com to any patches that don't have it yet. Tomasz, thanks for your review. I will take this series, moving exynos-cpuidle into drivers/cpuidle into samsung tree if Rafael is OK on that. Daniel, Can you please check/test the functionality your series with using my for-next because there were merge conflicts with mcpm-exynos stuff...? Thanks, Kukjin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
On 05/22/2014 08:35 PM, Kukjin Kim wrote: On 04/26/14 20:05, Kukjin Kim wrote: Tomasz Figa wrote: On 14.04.2014 11:01, Daniel Lezcano wrote: Hi Kukjin, I believe I addressed all the comments. Is it possible to take this patchset for next ? Sure ;-) +1. Also when applying you might add Reviewed-by: Tomasz Figat.f...@samsung.com to any patches that don't have it yet. Tomasz, thanks for your review. I will take this series, moving exynos-cpuidle into drivers/cpuidle into samsung tree if Rafael is OK on that. Daniel, Can you please check/test the functionality your series with using my for-next because there were merge conflicts with mcpm-exynos stuff...? Sure, will do that tomorrow. -- http://www.linaro.org/ Linaro.org │ Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro Facebook | http://twitter.com/#!/linaroorg Twitter | http://www.linaro.org/linaro-blog/ Blog -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
RE: [PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
Tomasz Figa wrote: On 14.04.2014 11:01, Daniel Lezcano wrote: Hi Kukjin, I believe I addressed all the comments. Is it possible to take this patchset for next ? Sure ;-) +1. Also when applying you might add Reviewed-by: Tomasz Figa t.f...@samsung.com to any patches that don't have it yet. Tomasz, thanks for your review. I will take this series, moving exynos-cpuidle into drivers/cpuidle into samsung tree if Rafael is OK on that. Thanks, Kukjin -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
On 14.04.2014 11:01, Daniel Lezcano wrote: Hi Kukjin, I believe I addressed all the comments. Is it possible to take this patchset for next ? +1. Also when applying you might add Reviewed-by: Tomasz Figa t.f...@samsung.com to any patches that don't have it yet. Best regards, Tomasz -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
Hi Kukjin, I believe I addressed all the comments. Is it possible to take this patchset for next ? Regards -- Daniel On 04/11/2014 12:39 PM, Daniel Lezcano wrote: Changelog: V5: * Removed patch : Move clock setup to pm.c * Added patch : Move arm core power down clock to exynos5250 common code V4: * Took into account Tomasz's comments * Fixed missing call in for central suspend * Passed parameter to the wakeup mask function * Moved wakeup mask, boot vector and aftr state into a single function * Used this function as callback for platform data * Moved S5P_CHECK_AFTR/S5P_CHECK_SLEEP into pm.c * Set boot vector only one time * Splitted some patches to make them more readable V3: * Added patch : ARM: exynos: cpuidle: Disable cpuidle for 5440 * Removed patch : ARM: exynos: config: Enable cpuidle * Removed default ARM_EXYNOS4210_CPUIDLE=y * Added comment about bug fix side effect 'for_each_possible_cpu' V2: * Added comment in changelog for calls order (5/17) * Call the powerdown only for cpu0 in the pm notifier * Set the pm notifier for all boards V1: initial post This patchset relies on the cpm_pm notifier to initiate the powerdown sequence operations from pm.c instead cpuidle.c. Thus the cpuidle driver is no longer dependent from arch specific code as everything is called from the pm.c file. The patchset applies on top of linux-samsung/for-next. Tested on exynos4: 4210 Tested on exynos5: 5250 (without AFTR) Amit Daniel Kachhap (1): ARM: EXYNOS: Move arm core power down clock to exynos5250 common clock Daniel Lezcano (19): ARM: exynos: cpuidle: Prevent forward declaration ARM: exynos: cpuidle: Use cpuidle_register ARM: exynos: cpuidle: Change function name prefix ARM: exynos: cpuidle: Encapsulate register access inside a function ARM: exynos: cpuidle: Move some code inside the idle_finisher ARM: exynos: cpuidle: Fix S5P_WAKEUP_STAT call ARM: exynos: cpuidle: Use the cpu_pm notifier ARM: exynos: cpuidle: Move scu_enable in the cpu_pm notifier ARM: exynos: cpuidle: Remove ifdef for scu_enable ARM: exynos: cpuidle: Pass wakeup mask parameter to function ARM: exynos: cpuidle: Encapsulate boot vector code into a function ARM: exynos: cpuidle: Disable cpuidle for 5440 ARM: exynos: cpuidle: Encapsulate the AFTR code into a function ARM: exynos: cpuidle: Move the AFTR state function into pm.c ARM: exynos: cpuidle: Move the power sequence call in the cpu_pm notifier ARM: exynos: cpuidle: Move S5P_CHECK_SLEEP into pm.c ARM: exynos: cpuidle: Pass the AFTR callback to the platform_data ARM: exynos: cpuidle: Cleanup all unneeded headers from cpuidle.c ARM: exynos: cpuidle: Move the driver to drivers/cpuidle directory arch/arm/mach-exynos/Makefile|1 - arch/arm/mach-exynos/common.h|1 + arch/arm/mach-exynos/cpuidle.c | 255 -- arch/arm/mach-exynos/exynos.c|8 +- arch/arm/mach-exynos/pm.c| 152 arch/arm/mach-exynos/regs-pmu.h |2 - drivers/clk/samsung/clk-exynos5250.c | 42 ++ drivers/cpuidle/Kconfig.arm |6 + drivers/cpuidle/Makefile |1 + drivers/cpuidle/cpuidle-exynos.c | 98 + 10 files changed, 277 insertions(+), 289 deletions(-) delete mode 100644 arch/arm/mach-exynos/cpuidle.c create mode 100644 drivers/cpuidle/cpuidle-exynos.c -- http://www.linaro.org/ Linaro.org │ Open source software for ARM SoCs Follow Linaro: http://www.facebook.com/pages/Linaro Facebook | http://twitter.com/#!/linaroorg Twitter | http://www.linaro.org/linaro-blog/ Blog -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH V5 00/20] ARM: exynos: cpuidle: Move the driver to drivers/cpuidle
Changelog: V5: * Removed patch : Move clock setup to pm.c * Added patch : Move arm core power down clock to exynos5250 common code V4: * Took into account Tomasz's comments * Fixed missing call in for central suspend * Passed parameter to the wakeup mask function * Moved wakeup mask, boot vector and aftr state into a single function * Used this function as callback for platform data * Moved S5P_CHECK_AFTR/S5P_CHECK_SLEEP into pm.c * Set boot vector only one time * Splitted some patches to make them more readable V3: * Added patch : ARM: exynos: cpuidle: Disable cpuidle for 5440 * Removed patch : ARM: exynos: config: Enable cpuidle * Removed default ARM_EXYNOS4210_CPUIDLE=y * Added comment about bug fix side effect 'for_each_possible_cpu' V2: * Added comment in changelog for calls order (5/17) * Call the powerdown only for cpu0 in the pm notifier * Set the pm notifier for all boards V1: initial post This patchset relies on the cpm_pm notifier to initiate the powerdown sequence operations from pm.c instead cpuidle.c. Thus the cpuidle driver is no longer dependent from arch specific code as everything is called from the pm.c file. The patchset applies on top of linux-samsung/for-next. Tested on exynos4: 4210 Tested on exynos5: 5250 (without AFTR) Amit Daniel Kachhap (1): ARM: EXYNOS: Move arm core power down clock to exynos5250 common clock Daniel Lezcano (19): ARM: exynos: cpuidle: Prevent forward declaration ARM: exynos: cpuidle: Use cpuidle_register ARM: exynos: cpuidle: Change function name prefix ARM: exynos: cpuidle: Encapsulate register access inside a function ARM: exynos: cpuidle: Move some code inside the idle_finisher ARM: exynos: cpuidle: Fix S5P_WAKEUP_STAT call ARM: exynos: cpuidle: Use the cpu_pm notifier ARM: exynos: cpuidle: Move scu_enable in the cpu_pm notifier ARM: exynos: cpuidle: Remove ifdef for scu_enable ARM: exynos: cpuidle: Pass wakeup mask parameter to function ARM: exynos: cpuidle: Encapsulate boot vector code into a function ARM: exynos: cpuidle: Disable cpuidle for 5440 ARM: exynos: cpuidle: Encapsulate the AFTR code into a function ARM: exynos: cpuidle: Move the AFTR state function into pm.c ARM: exynos: cpuidle: Move the power sequence call in the cpu_pm notifier ARM: exynos: cpuidle: Move S5P_CHECK_SLEEP into pm.c ARM: exynos: cpuidle: Pass the AFTR callback to the platform_data ARM: exynos: cpuidle: Cleanup all unneeded headers from cpuidle.c ARM: exynos: cpuidle: Move the driver to drivers/cpuidle directory arch/arm/mach-exynos/Makefile|1 - arch/arm/mach-exynos/common.h|1 + arch/arm/mach-exynos/cpuidle.c | 255 -- arch/arm/mach-exynos/exynos.c|8 +- arch/arm/mach-exynos/pm.c| 152 arch/arm/mach-exynos/regs-pmu.h |2 - drivers/clk/samsung/clk-exynos5250.c | 42 ++ drivers/cpuidle/Kconfig.arm |6 + drivers/cpuidle/Makefile |1 + drivers/cpuidle/cpuidle-exynos.c | 98 + 10 files changed, 277 insertions(+), 289 deletions(-) delete mode 100644 arch/arm/mach-exynos/cpuidle.c create mode 100644 drivers/cpuidle/cpuidle-exynos.c -- 1.7.9.5 -- To unsubscribe from this list: send the line unsubscribe linux-samsung-soc in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html