Merge tag 'exynos-cpuidle' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene...
authorOlof Johansson <olof@lixom.net>
Sat, 19 Jul 2014 22:03:08 +0000 (15:03 -0700)
committerOlof Johansson <olof@lixom.net>
Sat, 19 Jul 2014 22:03:08 +0000 (15:03 -0700)
Merge "Samsung exynos cpuidle update for v3.17" from Kukjin Kim:

- add callbacks exynos_suspend() and exynos_powered_up()
  for support cpuidle through mcpm
- skip exynos_cpuidle for exynos5420 because is uses
  cpuidle-big-liggle generic cpuidle driver
- add generic functions to calculate cpu number is used
  for pmu and this is required for exynos5420 multi-cluster
- add of_device_id structure for big.LITTLE cpuidle and
  add "samsung,exynos5420" compatible string for exynos5420

* tag 'exynos-cpuidle' of git://git.kernel.org/pub/scm/linux/kernel/git/kgene/linux-samsung:
  ARM: EXYNOS: populate suspend and powered_up callbacks for mcpm
  ARM: EXYNOS: do not allow cpuidle registration for exynos5420
  cpuidle: big.LITTLE: init driver for exynos5420
  cpuidle: big.LITTLE: Add ARCH_EXYNOS entry in config
  ARM: EXYNOS: add generic function to calculate cpu number
  cpuidle: big.LITTLE: add of_device_id structure
  + Linux 3.16-rc5

Signed-off-by: Olof Johansson <olof@lixom.net>
1  2 
arch/arm/configs/multi_v7_defconfig
arch/arm/mach-mvebu/Makefile
arch/arm/mach-mvebu/board-v7.c
arch/arm/mach-mvebu/pmsu.c
arch/arm/mach-sunxi/sunxi.c

Simple merge
@@@ -7,8 -7,9 +7,8 @@@ CFLAGS_pmsu.o                    := -march=armv7-
  obj-y                          += system-controller.o mvebu-soc-id.o
  
  ifeq ($(CONFIG_MACH_MVEBU_V7),y)
- obj-y                          += cpu-reset.o board-v7.o coherency.o coherency_ll.o pmsu.o
+ obj-y                          += cpu-reset.o board-v7.o coherency.o coherency_ll.o pmsu.o pmsu_ll.o
  obj-$(CONFIG_SMP)              += platsmp.o headsmp.o platsmp-a9.o headsmp-a9.o
 -obj-$(CONFIG_HOTPLUG_CPU)      += hotplug.o
  endif
  
  obj-$(CONFIG_MACH_DOVE)                += dove.o
Simple merge
@@@ -140,15 -142,8 +142,8 @@@ static void armada_370_xp_pmsu_enable_l
        writel(reg, pmsu_mp_base + L2C_NFABRIC_PM_CTL);
  }
  
- static void armada_370_xp_cpu_resume(void)
- {
-       asm volatile("bl    ll_add_cpu_to_smp_group\n\t"
-                    "bl    ll_enable_coherency\n\t"
-                    "b     cpu_resume\n\t");
- }
  /* No locking is needed because we only access per-CPU registers */
 -void armada_370_xp_pmsu_idle_prepare(bool deepidle)
 +int armada_370_xp_pmsu_idle_enter(unsigned long deepidle)
  {
        unsigned int hw_cpu = cpu_logical_map(smp_processor_id());
        u32 reg;
@@@ -51,14 -126,7 +126,16 @@@ static const char * const sun7i_board_d
  };
  
  DT_MACHINE_START(SUN7I_DT, "Allwinner sun7i (A20) Family")
+       .init_machine   = sunxi_dt_init,
        .dt_compat      = sun7i_board_dt_compat,
+       .restart        = sun4i_restart,
  MACHINE_END
 +
 +static const char * const sun8i_board_dt_compat[] = {
 +      "allwinner,sun8i-a23",
 +      NULL,
 +};
 +
 +DT_MACHINE_START(SUN8I_DT, "Allwinner sun8i (A23) Family")
 +      .dt_compat      = sun8i_board_dt_compat,
 +MACHINE_END