diff options
author | Paul Mundt <lethal@linux-sh.org> | 2009-10-16 11:00:02 +0200 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2009-10-16 11:00:02 +0200 |
commit | 896f0c0e8e4ee02ee72a203aef79f362d5f7b7cc (patch) | |
tree | 0ee60b7c1d2d018bf9789b277942489929108ac7 /arch/sh/kernel/topology.c | |
parent | sh: Fix up IRQ re-enabling for the need_resched() case. (diff) | |
download | linux-896f0c0e8e4ee02ee72a203aef79f362d5f7b7cc.tar.xz linux-896f0c0e8e4ee02ee72a203aef79f362d5f7b7cc.zip |
sh: Support SCHED_MC for SH-X3 multi-cores.
This enables SCHED_MC support for SH-X3 multi-cores. Presently this is
just a simple wrapper around the possible map, but this allows for
tying in support for some of the more exotic NUMA clusters where we can
actually do something with the topology.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
Diffstat (limited to 'arch/sh/kernel/topology.c')
-rw-r--r-- | arch/sh/kernel/topology.c | 26 |
1 files changed, 26 insertions, 0 deletions
diff --git a/arch/sh/kernel/topology.c b/arch/sh/kernel/topology.c index 0838942b7083..9b0b633b6c92 100644 --- a/arch/sh/kernel/topology.c +++ b/arch/sh/kernel/topology.c @@ -16,6 +16,32 @@ static DEFINE_PER_CPU(struct cpu, cpu_devices); +cpumask_t cpu_core_map[NR_CPUS]; + +static cpumask_t cpu_coregroup_map(unsigned int cpu) +{ + /* + * Presently all SH-X3 SMP cores are multi-cores, so just keep it + * simple until we have a method for determining topology.. + */ + return cpu_possible_map; +} + +const struct cpumask *cpu_coregroup_mask(unsigned int cpu) +{ + return &cpu_core_map[cpu]; +} + +int arch_update_cpu_topology(void) +{ + unsigned int cpu; + + for_each_possible_cpu(cpu) + cpu_core_map[cpu] = cpu_coregroup_map(cpu); + + return 0; +} + static int __init topology_init(void) { int i, ret; |