[PATCH 0/2] cpuidle: exynos: add coupled cpuidle support for Exynos4210
From: Bartlomiej Zolnierkiewicz
Date: Fri Nov 07 2014 - 13:01:26 EST
Hi,
The following patchset adds coupled cpuidle support for Exynos4210
to an existing cpuidle-exynos driver. As a result it enables AFTR
mode to be used by default on Exynos4210 without the need to hot
unplug CPU1 first.
This work is heavily based on earlier cpuidle-exynos4210 driver from
Daniel Lezcano:
http://www.spinics.net/lists/linux-samsung-soc/msg28134.html
Changes from Daniel's code include:
- porting code to current kernels
- fixing it to work on my setup (by using S5P_INFORM register
instead of S5P_VA_SYSRAM one on Revison 1.1 and retrying poking
CPU1 out of the BOOT ROM if necessary)
- fixing rare lockup caused by waiting for CPU1 to get stuck in
the BOOT ROM (CPU hotplug code in arch/arm/mach-exynos/platsmp.c
doesn't require this and works fine)
- moving Exynos specific code to arch/arm/mach-exynos/pm.c
- using cpu_boot_reg_base() helper instead of BOOT_VECTOR macro
- using exynos_cpu_*() helpers instead of accessing registers
directly
- using arch_send_wakeup_ipi_mask() instead of dsb_sev()
(this matches CPU hotplug code in arch/arm/mach-exynos/platsmp.c)
- integrating separate exynos4210-cpuidle driver into existing
exynos-cpuidle one
patch #1 is a fix for Exynos platform PM code preparing it for
coupled cpuidle support
patch #2 adds coupled cpuidle AFTR mode for Exynos4210
The patchset depends on:
- 'next-20141031' branch of linux-next kernel tree (it also applies
fine to for-next branch of linux-samsung.git tree from today)
Best regards,
--
Bartlomiej Zolnierkiewicz
Samsung R&D Institute Poland
Samsung Electronics
Bartlomiej Zolnierkiewicz (2):
ARM: EXYNOS: apply S5P_CENTRAL_SEQ_OPTION fix only when necessary
cpuidle: exynos: add coupled cpuidle support for Exynos4210
arch/arm/mach-exynos/common.h | 4 +
arch/arm/mach-exynos/exynos.c | 4 +
arch/arm/mach-exynos/platsmp.c | 2 +-
arch/arm/mach-exynos/pm.c | 133 ++++++++++++++++++++++++++-
arch/arm/mach-exynos/suspend.c | 4 +
drivers/cpuidle/Kconfig.arm | 1 +
drivers/cpuidle/cpuidle-exynos.c | 62 ++++++++++++-
include/linux/platform_data/cpuidle-exynos.h | 20 ++++
8 files changed, 220 insertions(+), 10 deletions(-)
create mode 100644 include/linux/platform_data/cpuidle-exynos.h
--
1.8.2.3
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/