Merge remote-tracking branch 'lsk/v3.10/topic/arm64-misc' into linux-linaro-lsk
authorMark Brown <broonie@kernel.org>
Fri, 23 Jan 2015 20:36:05 +0000 (20:36 +0000)
committerMark Brown <broonie@kernel.org>
Fri, 23 Jan 2015 20:36:05 +0000 (20:36 +0000)
Conflicts:
arch/arm64/include/asm/proc-fns.h
arch/arm64/kernel/debug-monitors.c
arch/arm64/kernel/psci.c

12 files changed:
1  2 
arch/arm64/Kconfig
arch/arm64/Makefile
arch/arm64/include/asm/cputype.h
arch/arm64/include/asm/proc-fns.h
arch/arm64/include/asm/processor.h
arch/arm64/include/asm/thread_info.h
arch/arm64/kernel/head.S
arch/arm64/kernel/process.c
arch/arm64/kernel/psci.c
arch/arm64/kernel/ptrace.c
arch/arm64/kernel/stacktrace.c
arch/arm64/mm/proc.S

index d64c1a0e9dd0e5a0d25c832f62ffd8811fd95359,d185ea209ef1f973bcd783bcb66c488a2c3c0a73..2cf752060a41f83e85dc1b2797bfdd651afda6bf
@@@ -16,11 -12,9 +16,12 @@@ config ARM6
        select BUILDTIME_EXTABLE_SORT
        select CLONE_BACKWARDS
        select COMMON_CLK
 +      select CPU_PM if (SUSPEND || CPU_IDLE)
        select DCACHE_WORD_ACCESS
+       select GENERIC_ALLOCATOR
        select GENERIC_CLOCKEVENTS
 +      select GENERIC_CLOCKEVENTS_BROADCAST if SMP
 +      select GENERIC_CPU_AUTOPROBE
        select GENERIC_EARLY_IOREMAP
        select GENERIC_IOMAP
        select GENERIC_IRQ_PROBE
Simple merge
Simple merge
index 0c657bb54597e40337fa6ebb767a4de16d6424bb,a496aa6ff7ef3bf9bc3db8a57e342ac301c9e3a0..0d3b0b17e92757b77cf1370c9d5014484fdd3118
@@@ -32,8 -31,8 +32,10 @@@ extern void cpu_cache_off(void)
  extern void cpu_do_idle(void);
  extern void cpu_do_switch_mm(unsigned long pgd_phys, struct mm_struct *mm);
  extern void cpu_reset(unsigned long addr) __attribute__((noreturn));
 +extern void cpu_do_suspend(struct cpu_suspend_ctx *ptr);
 +extern u64 cpu_do_resume(phys_addr_t ptr, u64 idmap_ttbr);
+ void cpu_soft_restart(phys_addr_t cpu_reset,
+               unsigned long addr) __attribute__((noreturn));
  
  #include <asm/memory.h>
  
Simple merge
Simple merge
Simple merge
Simple merge
index e58a67974f98fcaef60dd7fc822b523d558c917a,553954771a67aa7c20d3068ec8297a937681fa53..4d827dd6219933f6160f3aec70ad832e169a48cc
@@@ -450,21 -434,11 +450,23 @@@ static int cpu_psci_cpu_kill(unsigned i
        return 0;
  }
  #endif
+ #endif
  
 +#ifdef CONFIG_ARM64_CPU_SUSPEND
 +static int cpu_psci_cpu_suspend(unsigned long index)
 +{
 +      struct psci_power_state *state = __get_cpu_var(psci_power_state);
 +
 +      if (!state)
 +              return -EOPNOTSUPP;
 +
 +      return psci_ops.cpu_suspend(state[index], virt_to_phys(cpu_resume));
 +}
 +#endif
 +
  const struct cpu_operations cpu_psci_ops = {
        .name           = "psci",
+ #ifdef CONFIG_SMP
        .cpu_init       = cpu_psci_cpu_init,
        .cpu_prepare    = cpu_psci_cpu_prepare,
        .cpu_boot       = cpu_psci_cpu_boot,
        .cpu_die        = cpu_psci_cpu_die,
        .cpu_kill       = cpu_psci_cpu_kill,
  #endif
+ #endif
 +#ifdef CONFIG_ARM64_CPU_SUSPEND
 +      .cpu_suspend    = cpu_psci_cpu_suspend,
 +#endif
  };
  
- #endif
Simple merge
Simple merge
Simple merge