Re: [RFC] Add Arm cpu topology definition

From: Stephen Boyd
Date: Thu Jun 16 2011 - 15:40:38 EST


On 06/16/2011 01:49 AM, Vincent Guittot wrote:
> +config SCHED_MC
> + bool "Multi-core scheduler support"
> + depends on SMP && ARM_CPU_TOPOLOGY
> + default n
> + help
> + Multi-core scheduler support improves the CPU scheduler's decision
> + making when dealing with multi-core CPU chips at a cost of slightly
> + increased overhead in some places. If unsure say N here.
> +
> +config SCHED_SMT
> + bool "SMT scheduler support"
> + depends on SMP && ARM_CPU_TOPOLOGY
> + default n
> + help
> + Improves the CPU scheduler's decision making when dealing with
> + MultiThreading at a cost of slightly increased overhead in some
> + places. If unsure say N here.
> +

The default is already n so you can drop those two lines.

> + * This is a multiprocessor system
> + * multiprocessor format & multiprocessor mode field are set
> + */
> +
> + if (mpidr & (0x1 << 24)) {
> + /* core performance interdependency */
> + cpuid_topo->thread_id = (mpidr & 0x3);
> + cpuid_topo->core_id = ((mpidr >> 8) & 0xF);
> + cpuid_topo->socket_id = ((mpidr >> 16) & 0xFF);
> + } else {
> + /* normal core interdependency */
> + cpuid_topo->thread_id = -1;
> + cpuid_topo->core_id = (mpidr & 0x3);
> + cpuid_topo->socket_id = ((mpidr >> 8) & 0xF);
> + }
> +

The ARM ARM says these fields are IMPLEMENTATION DEFINED meaning that
different vendors may attribute different meaning to these fields if
they wish. Does that mean this should be a platform_*() function?

--
Sent by an employee of the Qualcomm Innovation Center, Inc.
The Qualcomm Innovation Center, Inc. is a member of the Code Aurora Forum.

--
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/