diff options
author | Catalin Marinas <catalin.marinas@arm.com> | 2009-05-30 08:56:16 -0400 |
---|---|---|
committer | Catalin Marinas <catalin.marinas@arm.com> | 2009-05-30 08:56:16 -0400 |
commit | da055eb52ec067d51dc08c7e86baf92dd5c01599 (patch) | |
tree | 91b916d3606b9074f08d25b22dae11694fd1b112 /arch/arm | |
parent | ff3042fb6f1a0f6faf527390a8a943a3e4296741 (diff) |
RealView: Toggle one LED per CPU
If CONFIG_LEDS is enabled, it makes more sense to toggle one LED per CPU
in SMP systems rather than a single LED for all the CPUs.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm')
-rw-r--r-- | arch/arm/mach-realview/core.c | 7 |
1 files changed, 4 insertions, 3 deletions
diff --git a/arch/arm/mach-realview/core.c b/arch/arm/mach-realview/core.c index 076acbc50706..346cbf0cd13e 100644 --- a/arch/arm/mach-realview/core.c +++ b/arch/arm/mach-realview/core.c | |||
@@ -578,21 +578,22 @@ void realview_leds_event(led_event_t ledevt) | |||
578 | { | 578 | { |
579 | unsigned long flags; | 579 | unsigned long flags; |
580 | u32 val; | 580 | u32 val; |
581 | u32 led = 1 << smp_processor_id(); | ||
581 | 582 | ||
582 | local_irq_save(flags); | 583 | local_irq_save(flags); |
583 | val = readl(VA_LEDS_BASE); | 584 | val = readl(VA_LEDS_BASE); |
584 | 585 | ||
585 | switch (ledevt) { | 586 | switch (ledevt) { |
586 | case led_idle_start: | 587 | case led_idle_start: |
587 | val = val & ~REALVIEW_SYS_LED0; | 588 | val = val & ~led; |
588 | break; | 589 | break; |
589 | 590 | ||
590 | case led_idle_end: | 591 | case led_idle_end: |
591 | val = val | REALVIEW_SYS_LED0; | 592 | val = val | led; |
592 | break; | 593 | break; |
593 | 594 | ||
594 | case led_timer: | 595 | case led_timer: |
595 | val = val ^ REALVIEW_SYS_LED1; | 596 | val = val ^ REALVIEW_SYS_LED7; |
596 | break; | 597 | break; |
597 | 598 | ||
598 | case led_halted: | 599 | case led_halted: |