Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit eebdf7d7 authored by David Brownell's avatar David Brownell Committed by Tony Lindgren
Browse files

ARM: OMAP: OSK led fixes



Bugfixes for the OSK led support:

 - Fix Kconfig merge glitches:  Mistral handles idle and timer leds just fine
 - Fix pm_suspend() runtime botch:  can't sleep, so can't touch tps65010 leds

Improvements:
 - Switch sense of Mistral idle led, so idle == off

Probably the TPS65010 leds should be handled only by the "new led" API.

Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: default avatarTony Lindgren <tony@atomide.com>
parent 4e63915c
Loading
Loading
Loading
Loading
+5 −2
Original line number Diff line number Diff line
@@ -721,7 +721,8 @@ config LEDS

config LEDS_TIMER
	bool "Timer LED" if (!ARCH_CDB89712 && !ARCH_OMAP) || \
			    MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
			    OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
			    || MACH_OMAP_PERSEUS2
	depends on LEDS
	depends on !GENERIC_CLOCKEVENTS
	default y if ARCH_EBSA110
@@ -738,7 +739,9 @@ config LEDS_TIMER

config LEDS_CPU
	bool "CPU usage LED" if (!ARCH_CDB89712 && !ARCH_EBSA110 && \
			!ARCH_OMAP) || MACH_OMAP_H2 || MACH_OMAP_PERSEUS2
			!ARCH_OMAP) \
			|| OMAP_OSK_MISTRAL || MACH_OMAP_H2 \
			|| MACH_OMAP_PERSEUS2
	depends on LEDS
	help
	  If you say Y here, the red LED will be used to give a good real
+3 −3
Original line number Diff line number Diff line
@@ -133,13 +133,13 @@ void osk_leds_event(led_event_t evt)
		mistral_setled();
		break;

	case led_idle_start:
		hw_led_state |= IDLE_LED;
	case led_idle_start:	/* idle == off */
		hw_led_state &= ~IDLE_LED;
		mistral_setled();
		break;

	case led_idle_end:
		hw_led_state &= ~IDLE_LED;
		hw_led_state |= IDLE_LED;
		mistral_setled();
		break;

+0 −11
Original line number Diff line number Diff line
@@ -57,7 +57,6 @@
#include <asm/arch/tc.h>
#include <asm/arch/pm.h>
#include <asm/arch/mux.h>
#include <asm/arch/tps65010.h>
#include <asm/arch/dma.h>
#include <asm/arch/dsp_common.h>
#include <asm/arch/dmtimer.h>
@@ -250,11 +249,6 @@ void omap_pm_suspend(void)

	omap_serial_wake_trigger(1);

	if (machine_is_omap_osk()) {
		/* Stop LED1 (D9) blink */
		tps65010_set_led(LED1, OFF);
	}

	if (!cpu_is_omap15xx())
		omap_writew(0xffff, ULPD_SOFT_DISABLE_REQ_REG);

@@ -447,11 +441,6 @@ void omap_pm_suspend(void)
	omap_serial_wake_trigger(0);

	printk("PM: OMAP%x is re-starting from deep sleep...\n", system_rev);

	if (machine_is_omap_osk()) {
		/* Let LED1 (D9) blink again */
		tps65010_set_led(LED1, BLINK);
	}
}

#if defined(DEBUG) && defined(CONFIG_PROC_FS)