summaryrefslogtreecommitdiff
path: root/drivers/leds
AgeCommit message (Collapse)AuthorFilesLines
2009-04-06leds: introduce lp5521 led driverFelipe Balbi1-0/+10
LP5521 is a three channel led driver with support for hardware accelerated patterns (currently used via lp5521-only sysfs interface). Currently, it's used on n810 device. Signed-off-by: Felipe Balbi <felipe.balbi@nokia.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: just ignore invalid GPIOs in leds-gpioDavid Brownell1-0/+9
Sometimes it's awkward to make sure that the array in the platform_data handed to the leds-gpio driver has only valid data ... some leds may not be always available, and coping with that currently requires patching or rebuilding the array. This patch fixes that by making it be OK to pass an invalid GPIO (such as "-EINVAL") ... such table entries are skipped. [rpurdie@linux.intel.com: adjusted to apply against other led tree changes] Signed-off-by: David Brownell <dbrownell@users.sourceforge.net> Tested-by: Diego Dompe <diego.dompe@ridgerun.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Fix &&/|| confusion in leds-pca9532.cRiku Voipio1-1/+1
This fixes the expression in the driver to do the correct thing, not that I think anyone would send SND_* without EV_SND. Thanks to Roel Kluin <roel.kluin@gmail.com> for noticing. Signed-off-by: Riku Voipio <riku.voipio@iki.fi> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: move h1940-leds's probe function to .devinit.textUwe Kleine-König1-1/+1
A pointer to h1940leds_probe is passed to the core via platform_driver_register and so the function must not disappear when the .init sections are discarded. Otherwise (if also having HOTPLUG=y) unbinding and binding a device to the driver via sysfs will result in an oops as does a device being registered late. An alternative to this patch is using platform_driver_probe instead of platform_driver_register plus removing the pointer to the probe function from the struct platform_driver. Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: remove an unnecessary "goto" on drivers/leds/leds-s3c24.cZhenwen Xu1-5/+2
This goto is unnecessary. Signed-off-by: Zhenwen Xu <helight.xu@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: add BD2802GU LED driverKim Kyuwon3-0/+773
ROHM BD2802GU is a RGB LED controller attached to i2c bus and specifically engineered for decoration purposes. This RGB controller incorporates lighting patterns and illuminates. This driver is designed to minimize power consumption, so when there is no emitting LED, it enters to reset state. And because the BD2802GU has lots of features that can't be covered by the current LED framework, it provides Advanced Configuration Function(ADF) mode, so that user applications can set registers of BD2802GU directly. Here are basic usage examples : ; to turn on LED (not blink) $ echo 1 > /sys/class/leds/led1_R/brightness ; to blink LED $ echo timer > /sys/class/leds/led1_R/trigger $ echo 1 > /sys/class/leds/led1_R/delay_on $ echo 1 > /sys/class/leds/led1_R/delay_off ; to turn off LED $ echo 0 > /sys/class/leds/led1_R/brightness [akpm@linux-foundation.org: coding-style fixes] Signed-off-by: Kim Kyuwon <chammoru@gmail.com> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: remove experimental flag from leds-clevo-mailNémeth Márton1-2/+2
The leds-clevo-mail driver is in the mainline kernel since 2.6.25 and works without severe problems. Make this driver available for a larger audience. Signed-off-by: Márton Németh <nm127@freemail.hu> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Prevent multiple LED triggers with the same nameAdam Nielsen1-1/+9
Signed-off-by: Adam Nielsen <a.nielsen@shikadi.net> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Add gpio-led triggerFelipe Balbi3-0/+253
The gpio led trigger will allow leds to be triggered by gpio events. When we give the led a gpio number, the trigger will request_irq() on that so we don't have to keep polling for gpio state. It's useful for usecases as n810's keypad leds that could be triggered by the gpio event generated when user slides up to show the keypad. We also provide means for userland to tell us what is the desired brightness for that special led when it goes on so userland could use information from ambient light sensors and not set led brightness too high if it's not necessary. Signed-off-by: Felipe Balbi <me@felipebalbi.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Add rb532 LED driver for the User LEDPhil Sutter3-0/+85
Mikrotik built six LEDs into the Routerboard 532, from which one is destined for custom use, the so called "User LED". This patch adds a driver for it, based on the LEDs class. Signed-off-by: Phil Sutter <n0-1@freewrt.org> Acked-by: Florian Fainelli <florian@openwrt.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Add suspend/resume state flags to leds-gpioRichard Purdie1-1/+2
Add an option to preserve LED state when suspending/resuming to the LED gpio driver. Based on a suggestion from Robert Jarzmik. Tested-by: Robert Jarzmik <robert.jarzmik@free.fr> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: simple driver for pwm driven LEDsLuotao Fu3-0/+160
Add a simple driver for pwm driver LEDs. pwm_id and period can be defined in board file. It is developed for pxa, however it is probably generic enough to be used on other platforms with pwm. Signed-off-by: Luotao Fu <l.fu@pengutronix.de> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Fix leds-gpio driver multiple module_init/exit usageRichard Purdie1-19/+27
You can't have multiple module_init()/module_exit calls so resort to messy ifdefs potentially pending some code refactoring. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Add dac124s085 driverGuennadi Liakhovetski3-0/+160
Add an LED driver using the DAC124S085 DAC from NatSemi [randy.dunlap@oracle.com: use header files for interfaces] Signed-off-by: Guennadi Liakhovetski <lg@denx.de> Signed-off-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: allow led-drivers to use a variable range of brightness valuesGuennadi Liakhovetski6-8/+28
This patch allows drivers to override the default maximum brightness value of 255. We take care to preserve backwards-compatibility as much as possible, so that user-space ABI doesn't change for existing drivers. LED trigger code has also been updated to use the per-LED maximum. Signed-off-by: Guennadi Liakhovetski <lg@denx.de> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-04-06leds: Add openfirmware platform device supportTrent Piepho2-44/+182
Add bindings to support LEDs defined as of_platform devices in addition to the existing bindings for platform devices. New options in Kconfig allow the platform binding code and/or the of_platform code to be turned on. The of_platform code is of course only available on archs that have OF support. The existing probe and remove methods are refactored to use new functions create_gpio_led(), to create and register one led, and delete_gpio_led(), to unregister and free one led. The new probe and remove methods for the of_platform driver can then share most of the common probe and remove code with the platform driver. The suspend and resume methods aren't shared, but they are very short. The actual led driving code is the same for LEDs created by either binding. The OF bindings are based on patch by Anton Vorontsov <avorontsov@ru.mvista.com>. They have been extended to allow multiple LEDs per device. Signed-off-by: Trent Piepho <tpiepho@freescale.com> Acked-by: Grant Likely <grant.likely@secretlab.ca> Acked-by: Sean MacLennan <smaclennan@pikatech.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-03-30trivial: Update my email addressRiku Voipio1-2/+2
Update my email address. Signed-off-by: Riku Voipio <riku.voipio@iki.fi> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2009-03-30trivial: fix typos/grammar errors in Kconfig textsMatt LaPlante1-3/+3
Signed-off-by: Matt LaPlante <kernel1@cyberdogtech.com> Acked-by: Randy Dunlap <randy.dunlap@oracle.com> Signed-off-by: Jiri Kosina <jkosina@suse.cz>
2009-02-20netfilter: x_tables: add LED trigger targetAdam Nielsen1-0/+3
Kernel module providing implementation of LED netfilter target. Each instance of the target appears as a led-trigger device, which can be associated with one or more LEDs in /sys/class/leds/ Signed-off-by: Adam Nielsen <a.nielsen@shikadi.net> Acked-by: Richard Purdie <rpurdie@linux.intel.com> Signed-off-by: Patrick McHardy <kaber@trash.net>
2009-01-15lis3lv02d: merge with leds hp diskEric Piel3-145/+0
Move the second part of the HP laptop disk protection functionality (a red led) to the same driver. From a purely Linux developer's point of view, the led and the accelerometer have nothing related. However, they correspond to the same ACPI functionality, and so will always be used together, moreover as they share the same ACPI PNP alias, there is no other simple to allow to have same loaded at the same time if they are not in the same module. Also make it requires the led class to compile and update the Kconfig text. Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Eric Piel <eric.piel@tremplin-utc.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-01-08leds: ledtrig-timer - on deactivation hardware blinking should be disabledRodolfo Giometti1-0/+5
Signed-off-by: Rodolfo Giometti <giometti@linux.it> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: Add suspend/resume to the core classRichard Purdie12-273/+41
Add suspend/resume to the core class and remove all the now unneeded code from various drivers. Originally the class code couldn't support suspend/resume but since class_device can there is no reason for each driver doing its own suspend/resume anymore.
2009-01-08leds: Add WM8350 LED driverMark Brown3-0/+341
The voltage and current regulators on the WM8350 AudioPlus PMIC can be used in concert to provide a power efficient LED driver. This driver implements support for this within the standard LED class. Platform initialisation code should configure the LED hardware in the init callback provided by the WM8350 core driver. The callback should use wm8350_isink_set_flash(), wm8350_dcdc25_set_mode() and wm8350_dcdc_set_slot() to configure the operating parameters of the regulators for their hardware and then then use wm8350_register_led() to instantiate the LED driver. This driver was originally written by Liam Girdwood, though it has been extensively modified since then. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: leds-pcs9532 - Move i2c work to a workquequeRiku Voipio1-8/+43
Apparently these might be called under atomic context, and i2c operations may sleep. BUG found by Ross Burton <ross@burtonini.com> Signed-off-by: Riku Voipio <riku.voipio@iki.fi> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: leds-pca9532 - fix memory leak and properly handle errorsSven Wegener1-9/+13
When the registration fails, we need to release the memory we allocated. Also we need to save the error from led_classdev_register and propagate it up, else we'll return success, even if we failed. Signed-off-by: Riku Voipio <riku.voipio@iki.fi> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: Fix wrong loop direction on removal in leds-ams-deltaSven Wegener1-1/+1
We want to go upwards, not downwards. Signed-off-by: Sven Wegener <sven.wegener@stealer.net> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: fix Cobalt Raq LED dependencyYoichi Yuasa1-1/+1
Cobalt Raq LEDs require LEDS_CLASS=y. Signed-off-by: Yoichi Yuasa <yoichi_yuasa@tripeaks.co.jp> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: Fix sparse warning in leds-ams-deltaSven Wegener1-1/+1
drivers/leds/leds-ams-delta.c:154:2: warning: returning void-valued expression Signed-off-by: Sven Wegener <sven.wegener@stealer.net> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: Fixup kdoc comment to match parameter namesSven Wegener1-1/+1
Signed-off-by: Sven Wegener <sven.wegener@stealer.net> Signed-off-by: Richard Purdie <rpurdie@intel.linux.com>
2009-01-08leds: eds-pca9532: mark pca9532_event() staticSven Wegener1-2/+2
Signed-off-by: Sven Wegener <sven.wegener@stealer.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2009-01-08leds: ALIX.2 LEDs driverConstantin Baranov3-0/+216
Driver for PC Engines ALIX.2 and ALIX.3 LEDs. Signed-off-by: Constantin Baranov <const@mimas.ru> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-11-01remove unused #include <version.h>'sHuang Weiyi1-1/+0
The file(s) below do not use LINUX_VERSION_CODE nor KERNEL_VERSION. drivers/leds/leds-hp-disk.c drivers/misc/panasonic-laptop.c This patch removes the said #include <version.h>. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-30leds: da903x: (da9030 only) led brightness reversed.Jonathan Cameron1-1/+1
The brightness control register calculation (for the pwm) is effectively the reverse of what would be expected. 1 is maximum brightness, 255 minimum. This patch inverts this. Signed-off-by: Jonathan Cameron <jic23@cam.ac.uk> Acked-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Eric Miao <eric.miao@marvell.com>
2008-10-27leds: da903x: fix the building failure of incomplete type of 'work'Eric Miao1-0/+1
The leds-da903x LED driver was missing the proper #include of linux/workqueue.h, but happened to compile on ARM due to implied includes through other header files. We do need the explict include on other architectures (reported at least for x86-64). Reported-tested-and-acked-by: Jean Delvare <khali@linux-fr.org> Signed-off-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2008-10-25leds-hp-disk: fix build warningLen Brown1-1/+1
drivers/leds/leds-hp-disk.c:59: warning: passing argument 4 of ‘acpi_evaluate_integer’ from incompatible pointer type Signed-off-by: Len Brown <len.brown@intel.com>
2008-10-23Merge branch 'for-linus' of git://git.o-hand.com/linux-rpurdie-ledsLinus Torvalds11-155/+486
* 'for-linus' of git://git.o-hand.com/linux-rpurdie-leds: leds/acpi: Fix merge fallout from acpi_driver_data change leds: Simplify logic in leds-ams-delta leds: Fix trigger registration race leds: Fix leds-class.c comment leds: Add driver for HP harddisk protection LEDs leds: leds-pca955x - Mark pca955x_led_set() static leds: Remove uneeded leds-cm-x270 driver leds: Remove uneeded strlen calls leds: Add leds-wrap default-trigger leds: Make default trigger fields const leds: Add backlight LED trigger leds: da903x: Add support for LEDs found on DA9030/DA9034
2008-10-23leds/acpi: Fix merge fallout from acpi_driver_data changeStephen Rothwell1-1/+1
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Simplify logic in leds-ams-deltaRichard Purdie1-10/+10
Simplify logic in leds-ams-delta after various new drivers writers misunderstood it. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Fix trigger registration raceRichard Purdie1-2/+3
Fix a race during trigger registration where we could try and use a lock before it was initialised. Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Fix leds-class.c commentQinghuang Feng1-1/+1
led_classdev_unregister() has no "__" prefix, remove it. Signed-off-by: Qinghuang Feng <qhfeng.kernel@gmail.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Add driver for HP harddisk protection LEDsPavel Machek3-0/+164
HP notebooks contain accelerometer-based disk protection subsystem, and LED that indicates hard disk is protected. This is driver for the LED part. Signed-off-by: Pavel Machek <pavel@suse.cz> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: leds-pca955x - Mark pca955x_led_set() staticSven Wegener1-1/+1
Mark pca955x_led_set() as static Signed-off-by: Sven Wegener <sven.wegener@stealer.net> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Remove uneeded leds-cm-x270 driverRichard Purdie3-131/+0
The cm-x270 board uses leds-gpio so remove the now unneeded driver. Acked-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Remove uneeded strlen callsSven Wegener2-10/+3
There's no need for the additional call to strlen(), we can directly return the value returned by sprintf(). We now return a length value that doesn't include the final '\0', but user space shouldn't bother about it anyway. Signed-off-by: Sven Wegener <sven.wegener@stealer.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Add leds-wrap default-triggerSven Wegener1-2/+3
The power led is normally lit after boot, let's use the default-on trigger as the default trigger for it. This gets the initial brightness value right and being on is the default behaviour we expect for a power led. Signed-off-by: Sven Wegener <sven.wegener@stealer.net> Signed-off-by: Andrew Morton <akpm@linux-foundation.org> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: Add backlight LED triggerRodolfo Giometti3-0/+120
This allows LEDs to be controlled as a backlight device where they turn off and on when the display is blanked and unblanked. This is useful where you need various key backlight LEDs to dim at the same time as the backlight. Signed-off-by: Rodolfo Giometti <giometti@linux.it> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20leds: da903x: Add support for LEDs found on DA9030/DA9034Mike Rapoport3-0/+183
Signed-off-by: Mike Rapoport <mike@compulab.co.il> Signed-off-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Richard Purdie <rpurdie@linux.intel.com>
2008-10-20Merge git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6Linus Torvalds1-1/+1
* git://git.kernel.org/pub/scm/linux/kernel/git/bart/ide-2.6: (36 commits) ide: re-add TRM290 fix lost during ide_build_dmatable() cleanup scc_pata: kill unused variables sgiioc4: kill duplicate ioremap() sgiioc4: kill useless address checks delkin_cb: add PM support ide: remove broken hpt34x driver ide-floppy: remove idefloppy_floppy_t typedef sgiioc4: remove maskproc() method hpt366: cleanup maskproc() method ide: mask interrupt in ide_config_drive_speed() hpt366: fix compile warning ide: remove unused macros from <asm-parisc/ide.h> ide: remove M68K_IDE_SWAPW define from <asm-m68k/ide.h> ide: remove dead <asm-arm/arch-sa1100/ide.h> ide: fix support for IDE PCI controllers using MMIO on frv ide-cd: remove stale comment ide-cd: small drive type print fix ide-cd: debug log enhancements ide: add generic ATA/ATAPI disk driver ide: allow device drivers to specify per-device type /proc settings ...
2008-10-20sh: Migrate common board headers to mach-common/.Paul Mundt1-1/+1
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2008-10-17ide: add generic ATA/ATAPI disk driverBartlomiej Zolnierkiewicz1-1/+1
* Add struct ide_disk_ops containing protocol specific methods. * Add 'struct ide_disk_ops *' to ide_drive_t. * Convert ide-{disk,floppy} drivers to use struct ide_disk_ops. * Merge ide-{disk,floppy} drivers into generic ide-gd driver. While at it: - ide_disk_init_capacity() -> ide_disk_get_capacity() Acked-by: Borislav Petkov <petkovbb@gmail.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>