aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm
diff options
context:
space:
mode:
authorCatalin Marinas <catalin.marinas@arm.com>2009-05-30 08:56:16 -0400
committerCatalin Marinas <catalin.marinas@arm.com>2009-05-30 08:56:16 -0400
commitda055eb52ec067d51dc08c7e86baf92dd5c01599 (patch)
tree91b916d3606b9074f08d25b22dae11694fd1b112 /arch/arm
parentff3042fb6f1a0f6faf527390a8a943a3e4296741 (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.c7
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: