]> bbs.cooldavid.org Git - net-next-2.6.git/blobdiff - drivers/leds/leds-da903x.c
include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit...
[net-next-2.6.git] / drivers / leds / leds-da903x.c
index 2768c69257f645750adc49af10ac8f4f5c4f2b66..f28931cf6781049562018d0af5d59e014b2936d2 100644 (file)
@@ -19,6 +19,7 @@
 #include <linux/leds.h>
 #include <linux/workqueue.h>
 #include <linux/mfd/da903x.h>
+#include <linux/slab.h>
 
 #define DA9030_LED1_CONTROL    0x20
 #define DA9030_LED2_CONTROL    0x21
@@ -58,7 +59,7 @@ static void da903x_led_work(struct work_struct *work)
                offset = DA9030_LED_OFFSET(led->id);
                val = led->flags & ~0x87;
                val |= (led->new_brightness) ? 0x80 : 0; /* EN bit */
-               val |= (led->new_brightness >> 5) & 0x7; /* PWM<2:0> */
+               val |= (0x7 - (led->new_brightness >> 5)) & 0x7; /* PWM<2:0> */
                da903x_write(led->master, DA9030_LED1_CONTROL + offset, val);
                break;
        case DA9030_ID_VIBRA: