diff options
| author | Grazvydas Ignotas <notasas@gmail.com> | 2009-12-10 17:10:21 +0200 | 
|---|---|---|
| committer | Tom Rix <Tom.Rix@windriver.com> | 2010-01-04 08:48:15 -0600 | 
| commit | ead39d7aa3ddccb2e374217aeab23bd65cedb762 (patch) | |
| tree | 2b112424e3938fef8dd40f1cdeb6cbeac2636a64 /drivers/misc/twl4030_led.c | |
| parent | 87d93a1ba2ae23550e1370adb7a3b00af0831165 (diff) | |
| download | olio-uboot-2014.01-ead39d7aa3ddccb2e374217aeab23bd65cedb762.tar.xz olio-uboot-2014.01-ead39d7aa3ddccb2e374217aeab23bd65cedb762.zip | |
TWL4030: make LEDs selectable for twl4030_led_init()
Not all boards have both LEDs hooked, so enabling both on
boards with single LED will just waste power. Make it
possible to choose LEDs by adding argument to
twl4030_led_init().
Using this turn on only LEDB for pandora, leave both LEDs
on for all other boards, as it was before this patch.
Signed-off-by: Grazvydas Ignotas <notasas@gmail.com>
Diffstat (limited to 'drivers/misc/twl4030_led.c')
| -rw-r--r-- | drivers/misc/twl4030_led.c | 18 | 
1 files changed, 7 insertions, 11 deletions
| diff --git a/drivers/misc/twl4030_led.c b/drivers/misc/twl4030_led.c index bfdafef38..33cea116d 100644 --- a/drivers/misc/twl4030_led.c +++ b/drivers/misc/twl4030_led.c @@ -34,19 +34,15 @@  #include <twl4030.h> -#define LEDAON			(0x1 << 0) -#define LEDBON			(0x1 << 1) -#define LEDAPWM			(0x1 << 4) -#define LEDBPWM			(0x1 << 5) - -void twl4030_led_init(void) +void twl4030_led_init(unsigned char ledon_mask)  { -	unsigned char byte; - -	/* enable LED */ -	byte = LEDBPWM | LEDAPWM | LEDBON | LEDAON; +	/* LEDs need to have corresponding PWMs enabled */ +	if (ledon_mask & TWL4030_LED_LEDEN_LEDAON) +		ledon_mask |= TWL4030_LED_LEDEN_LEDAPWM; +	if (ledon_mask & TWL4030_LED_LEDEN_LEDBON) +		ledon_mask |= TWL4030_LED_LEDEN_LEDBPWM; -	twl4030_i2c_write_u8(TWL4030_CHIP_LED, byte, +	twl4030_i2c_write_u8(TWL4030_CHIP_LED, ledon_mask,  			     TWL4030_LED_LEDEN);  } |