• David Brownell's avatar
    PWM LED driver · de5c9ede
    David Brownell authored
    This is a LED driver using the PWM on newer SOCs from Atmel; brightness is
    controlled by changing the PWM duty cycle.  So for example if you've set up
    two leds labeled "pwm0" and "pwm1":
    
    	echo 0 > /sys/class/leds/pwm2/brightness	# off (0%)
    	echo 80 > /sys/class/leds/pwm2/brightness
    	echo 255 > /sys/class/leds/pwm2/brightness	# on (100%)
    
    Note that "brightness" here isn't linear; maybe that should change.  Going
    from 4 to 8 probably doubles perceived brightness, while 244 to 248 is
    imperceptible.
    
    This is mostly intended to be a simple example of PWM, although it's
    realistic since LCD backlights are often driven with PWM to conserve
    battery power (and offer brightness options).
    Signed-off-by: default avatarDavid Brownell <dbrownell@users.sourceforge.net>
    Signed-off-by: default avatarHaavard Skinnemoen <hskinnemoen@atmel.com>
    Cc: Richard Purdie <rpurdie@rpsys.net>
    Cc: Andrew Victor <linux@maxim.org.za>
    Cc: Nicolas Ferre <nicolas.ferre@atmel.com>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    de5c9ede
leds-atmel-pwm.c 3.65 KB