25 Oct, 2011

1 commit


23 Oct, 2011

4 commits


21 Oct, 2011

1 commit

  • Rather than clipping the number of CPUs using the compile-time NR_CPUS
    constant, use the runtime nr_cpu_ids value instead. This allows the
    nr_cpus command line option to work as expected.

    Cc:
    Reported-by: Mark Salter
    Signed-off-by: Russell King

    Russell King
     

18 Oct, 2011

1 commit


17 Oct, 2011

7 commits

  • The definition of __exception_irq_entry for
    CONFIG_FUNCTION_GRAPH_TRACER=y needs linux/ftrace.h, but this creates a
    circular dependency with it's current home in asm/system.h. Create
    asm/exception.h and update all current users.

    v4: - rebase to rmk/for-next
    v3: - remove redundant includes of linux/ftrace.h
    v2: - document the usage restricitions of __exception*

    Cc: Zoltan Devai
    Signed-off-by: Jamie Iles
    Signed-off-by: Russell King

    Jamie Iles
     
  • In order to be able to handle localtimer directly from C code instead of
    assembly code, introduce handle_local_timer(), which is modeled after
    handle_IRQ().

    Signed-off-by: Shawn Guo
    Signed-off-by: Russell King

    Shawn Guo
     
  • In order to be able to handle IPI directly from C code instead of
    assembly code, introduce handle_IPI(), which is modeled after handle_IRQ().

    Signed-off-by: Marc Zyngier
    Signed-off-by: Russell King

    Shawn Guo
     
  • When Cortex-A9 MPCore resumes from Dormant or Shutdown modes,
    SCU needs to be re-enabled. This patch removes __init annotation
    from function scu_enable(), so that platform resume procedure can
    call it to re-enable SCU.

    Signed-off-by: Shawn Guo
    Signed-off-by: Russell King

    Shawn Guo
     
  • The GIC driver must convert logical CPU numbers passed in from Linux
    into physical CPU numbers that are understood by the hardware.

    This patch uses the new cpu_logical_map macro for performing the
    conversion inside the GIC driver.

    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     
  • To allow booting Linux on a CPU with physical ID != 0, we need to
    provide a mapping from the logical CPU number to the physical CPU
    number.

    This patch adds such a mapping and populates it during boot.

    Signed-off-by: Will Deacon
    Signed-off-by: Russell King

    Will Deacon
     
  • The affinity between ARM processors is defined in the MPIDR register.
    We can identify which processors are in the same cluster,
    and which ones have performance interdependency. We can define the
    cpu topology of ARM platform, that is then used by sched_mc and sched_smt.

    The default state of sched_mc and sched_smt config is disable.
    When enabled, the behavior of the scheduler can be modified with
    sched_mc_power_savings and sched_smt_power_savings sysfs interfaces.

    Changes since v4 :
    * Remove unnecessary parentheses and blank lines

    Changes since v3 :
    * Update the format of printk message
    * Remove blank line

    Changes since v2 :
    * Update the commit message and some comments

    Changes since v1 :
    * Update the commit message
    * Add read_cpuid_mpidr in arch/arm/include/asm/cputype.h
    * Modify header of arch/arm/kernel/topology.c
    * Modify tests and manipulation of MPIDR's bitfields
    * Modify the place and dependancy of the config
    * Modify Noop functions

    Signed-off-by: Vincent Guittot
    Reviewed-by: Amit Kucheria
    Signed-off-by: Russell King

    Vincent Guittot
     

14 Oct, 2011

26 commits