Commit 07e0da3d authored by Olof Johansson's avatar Olof Johansson

Merge tag 'renesas-soc2-for-v3.9' of...

Merge tag 'renesas-soc2-for-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas into next/soc

From Simon Horman:
Second round of Renesas ARM-based SoC changes for v3.9

* Changes to allow unplugging of CPU0 by Ulrich Hecht.

* Changes to add reg and device_type properties to cpus
  device trees entries by Simon Horman.

* tag 'renesas-soc2-for-v3.9' of git://git.kernel.org/pub/scm/linux/kernel/git/horms/renesas:
  ARM: mach-shmobile: sh73a0: allow unplugging of CPU0
  ARM: mach-shmobile: add shmobile_cpu_disable_any()
  ARM: mach-shmobile: emev2:  Add reg and device_type properties to cpus
  ARM: mach-shmobile: sh73a0:  Add reg and device_type properties to cpus
Signed-off-by: default avatarOlof Johansson <olof@lixom.net>
parents 6ed05a2a dc784e73
...@@ -15,11 +15,18 @@ / { ...@@ -15,11 +15,18 @@ / {
interrupt-parent = <&gic>; interrupt-parent = <&gic>;
cpus { cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu@0 { cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <0>;
}; };
cpu@1 { cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <1>;
}; };
}; };
......
...@@ -14,11 +14,18 @@ / { ...@@ -14,11 +14,18 @@ / {
compatible = "renesas,sh73a0"; compatible = "renesas,sh73a0";
cpus { cpus {
#address-cells = <1>;
#size-cells = <0>;
cpu@0 { cpu@0 {
device_type = "cpu";
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <0>;
}; };
cpu@1 { cpu@1 {
device_type = "cpu";
compatible = "arm,cortex-a9"; compatible = "arm,cortex-a9";
reg = <1>;
}; };
}; };
......
...@@ -56,6 +56,12 @@ int shmobile_cpu_disable(unsigned int cpu) ...@@ -56,6 +56,12 @@ int shmobile_cpu_disable(unsigned int cpu)
return cpu == 0 ? -EPERM : 0; return cpu == 0 ? -EPERM : 0;
} }
int shmobile_cpu_disable_any(unsigned int cpu)
{
cpumask_clear_cpu(cpu, &dead_cpus);
return 0;
}
int shmobile_cpu_is_dead(unsigned int cpu) int shmobile_cpu_is_dead(unsigned int cpu)
{ {
return cpumask_test_cpu(cpu, &dead_cpus); return cpumask_test_cpu(cpu, &dead_cpus);
......
...@@ -84,6 +84,7 @@ static inline int shmobile_cpuidle_init(void) { return 0; } ...@@ -84,6 +84,7 @@ static inline int shmobile_cpuidle_init(void) { return 0; }
extern void shmobile_cpu_die(unsigned int cpu); extern void shmobile_cpu_die(unsigned int cpu);
extern int shmobile_cpu_disable(unsigned int cpu); extern int shmobile_cpu_disable(unsigned int cpu);
extern int shmobile_cpu_disable_any(unsigned int cpu);
#ifdef CONFIG_HOTPLUG_CPU #ifdef CONFIG_HOTPLUG_CPU
extern int shmobile_cpu_is_dead(unsigned int cpu); extern int shmobile_cpu_is_dead(unsigned int cpu);
......
...@@ -143,6 +143,6 @@ struct smp_operations sh73a0_smp_ops __initdata = { ...@@ -143,6 +143,6 @@ struct smp_operations sh73a0_smp_ops __initdata = {
#ifdef CONFIG_HOTPLUG_CPU #ifdef CONFIG_HOTPLUG_CPU
.cpu_kill = sh73a0_cpu_kill, .cpu_kill = sh73a0_cpu_kill,
.cpu_die = sh73a0_cpu_die, .cpu_die = sh73a0_cpu_die,
.cpu_disable = shmobile_cpu_disable, .cpu_disable = shmobile_cpu_disable_any,
#endif #endif
}; };
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment