summaryrefslogtreecommitdiffstats
path: root/drivers/leds/leds-tlc591xx.c (follow)
Commit message (Collapse)AuthorAgeFilesLines
* leds: tlc591xx: add missing of_node_putJulia Lawall2017-07-161-2/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | for_each_child_of_node performs an of_node_get on each iteration, so a return from the loop requires an of_node_put. The semantic patch that fixes this problem is as follows (http://coccinelle.lip6.fr): // <smpl> @@ local idexpression n; expression e,e1; iterator name for_each_child_of_node; @@ for_each_child_of_node(e1,n) { ... ( of_node_put(n); | e = n | return n; | + of_node_put(n); ? return ...; ) ... } // </smpl> Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
* leds: tlc591xx: merge conditional testsJulia Lawall2017-07-161-3/+2
| | | | | | | | | Merge conditionals that have the same then branch, to prepare for extending that branch with of_node_put. Signed-off-by: Julia Lawall <Julia.Lawall@lip6.fr> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
* leds: tlc591xx: Remove work queueAndrew Lunn2016-01-041-24/+7
| | | | | | | | Now the core implements the work queue, remove it from the driver, and switch to using brightness_set_blocking op. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
* leds: tlc591xx: Remove redundant I2C_FUNC_SMBUS_BYTE_DATA functionality checkAxel Lin2015-08-281-4/+0
| | | | | | | | | This checking is done by regmap_get_i2c_bus() which is called in devm_regmap_init_i2c(). Signed-off-by: Axel Lin <axel.lin@ingics.com> Reviewed-by: Andrew Lunn <andrew@lunn.ch> Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
* leds: tlc591xx: Driver for the TI 8/16 Channel i2c LED driverAndrew Lunn2015-05-041-0/+300
The TLC59116 is an I2C bus controlled 16-channel LED driver. The TLC59108 is an I2C bus controlled 8-channel LED driver, which is very similar to the TLC59116. Each LED output has its own 8-bit fixed-frequency PWM controller to control the brightness of the LED. The LEDs can also be fixed off and on, making them suitable for use as GPOs. This is based on a driver from Belkin, but has been extensively rewritten and extended to support both 08 and 16 versions. Signed-off-by: Andrew Lunn <andrew@lunn.ch> Tested-by: Imre Kaloz <kaloz@openwrt.org> Cc: Matthew.Fatheree@belkin.com Acked-by: Jacek Anaszewski <j.anaszewski@samsung.com> Signed-off-by: Bryan Wu <cooloney@gmail.com>