#
c230c03b |
| 11-Apr-2024 |
George Stark <gnstark@salutedevices.com> |
leds: lm3532: Use devm API to cleanup module's resources
In this driver LEDs are registered using devm_led_classdev_register() so they are automatically unregistered after module's remove() is done.
leds: lm3532: Use devm API to cleanup module's resources
In this driver LEDs are registered using devm_led_classdev_register() so they are automatically unregistered after module's remove() is done. led_classdev_unregister() calls module's led_set_brightness() to turn off the LEDs and that callback uses resources which were destroyed already in module's remove() so use devm API instead of remove().
Signed-off-by: George Stark <gnstark@salutedevices.com> Reviewed-by: Andy Shevchenko <andy.shevchenko@gmail.com> Link: https://lore.kernel.org/r/20240411161032.609544-6-gnstark@salutedevices.com Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
#
d9ff8a8e |
| 17-May-2023 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
leds: Switch i2c drivers back to use .probe()
After commit b8a1a4cd5a98 ("i2c: Provide a temporary .probe_new() call-back type"), all drivers being converted to .probe_new() and then 03c835f498b5 ("
leds: Switch i2c drivers back to use .probe()
After commit b8a1a4cd5a98 ("i2c: Provide a temporary .probe_new() call-back type"), all drivers being converted to .probe_new() and then 03c835f498b5 ("i2c: Switch .probe() to not take an id parameter") convert back to (the new) .probe() to be able to eventually drop .probe_new() from struct i2c_driver.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Link: https://lore.kernel.org/r/20230517180559.166329-1-u.kleine-koenig@pengutronix.de Signed-off-by: Lee Jones <lee@kernel.org>
show more ...
|
#
912bcc8a |
| 18-Nov-2022 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
leds: lm3532: Convert to i2c's .probe_new()
The probe function doesn't make use of the i2c_device_id * parameter so it can be trivially converted.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@p
leds: lm3532: Convert to i2c's .probe_new()
The probe function doesn't make use of the i2c_device_id * parameter so it can be trivially converted.
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Lee Jones <lee@kernel.org> Link: https://lore.kernel.org/r/20221118224540.619276-273-uwe@kleine-koenig.org
show more ...
|
#
ed5c2f5f |
| 15-Aug-2022 |
Uwe Kleine-König <u.kleine-koenig@pengutronix.de> |
i2c: Make remove callback return void
The value returned by an i2c driver's remove function is mostly ignored. (Only an error message is printed if the value is non-zero that the error is ignored.)
i2c: Make remove callback return void
The value returned by an i2c driver's remove function is mostly ignored. (Only an error message is printed if the value is non-zero that the error is ignored.)
So change the prototype of the remove function to return no value. This way driver authors are not tempted to assume that passing an error to the upper layer is a good idea. All drivers are adapted accordingly. There is no intended change of behaviour, all callbacks were prepared to return 0 before.
Reviewed-by: Peter Senna Tschudin <peter.senna@gmail.com> Reviewed-by: Jeremy Kerr <jk@codeconstruct.com.au> Reviewed-by: Benjamin Mugnier <benjamin.mugnier@foss.st.com> Reviewed-by: Javier Martinez Canillas <javierm@redhat.com> Reviewed-by: Crt Mori <cmo@melexis.com> Reviewed-by: Heikki Krogerus <heikki.krogerus@linux.intel.com> Acked-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org> Acked-by: Marek Behún <kabel@kernel.org> # for leds-turris-omnia Acked-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Reviewed-by: Petr Machata <petrm@nvidia.com> # for mlxsw Reviewed-by: Maximilian Luz <luzmaximilian@gmail.com> # for surface3_power Acked-by: Srinivas Pandruvada <srinivas.pandruvada@linux.intel.com> # for bmc150-accel-i2c + kxcjk-1013 Reviewed-by: Hans Verkuil <hverkuil-cisco@xs4all.nl> # for media/* + staging/media/* Acked-by: Miguel Ojeda <ojeda@kernel.org> # for auxdisplay/ht16k33 + auxdisplay/lcd2s Reviewed-by: Luca Ceresoli <luca.ceresoli@bootlin.com> # for versaclock5 Reviewed-by: Ajay Gupta <ajayg@nvidia.com> # for ucsi_ccg Acked-by: Jonathan Cameron <Jonathan.Cameron@huawei.com> # for iio Acked-by: Peter Rosin <peda@axentia.se> # for i2c-mux-*, max9860 Acked-by: Adrien Grassein <adrien.grassein@gmail.com> # for lontium-lt8912b Reviewed-by: Jean Delvare <jdelvare@suse.de> # for hwmon, i2c-core and i2c/muxes Acked-by: Corey Minyard <cminyard@mvista.com> # for IPMI Reviewed-by: Vladimir Oltean <olteanv@gmail.com> Acked-by: Dmitry Torokhov <dmitry.torokhov@gmail.com> Acked-by: Sebastian Reichel <sebastian.reichel@collabora.com> # for drivers/power Acked-by: Krzysztof Hałasa <khalasa@piap.pl> Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de> Signed-off-by: Wolfram Sang <wsa@kernel.org>
show more ...
|
#
2f39f68c |
| 10-May-2021 |
Andy Shevchenko <andy.shevchenko@gmail.com> |
leds: lm3532: Make error handling more robust
It's easy to miss necessary clean up, e.g. firmware node reference counting, during error path in ->probe(). Make it more robust by moving to a single p
leds: lm3532: Make error handling more robust
It's easy to miss necessary clean up, e.g. firmware node reference counting, during error path in ->probe(). Make it more robust by moving to a single point of return.
Signed-off-by: Andy Shevchenko <andy.shevchenko@gmail.com> Signed-off-by: Pavel Machek <pavel@ucw.cz>
show more ...
|
#
9e955a42 |
| 22-Sep-2020 |
Dan Murphy <dmurphy@ti.com> |
leds: lm3532: Fix warnings for undefined parameters
Fix warnings for undefined parameters when W=1 is used.
Signed-off-by: Dan Murphy <dmurphy@ti.com> Reviewed-by: Marek Behún <kabel@kernel.org> Si
leds: lm3532: Fix warnings for undefined parameters
Fix warnings for undefined parameters when W=1 is used.
Signed-off-by: Dan Murphy <dmurphy@ti.com> Reviewed-by: Marek Behún <kabel@kernel.org> Signed-off-by: Pavel Machek <pavel@ucw.cz>
show more ...
|
#
c49d6cab |
| 19-Sep-2020 |
Marek Behún <marek.behun@nic.cz> |
leds: parse linux,default-trigger DT property in LED core
Do the parsing of `linux,default-trigger` DT property to LED core. Currently it is done in many different drivers and the code is repeated.
leds: parse linux,default-trigger DT property in LED core
Do the parsing of `linux,default-trigger` DT property to LED core. Currently it is done in many different drivers and the code is repeated.
This patch removes the parsing from 23 drivers: an30259a, aw2013, bcm6328, bcm6358, cr0014114, el15203000, gpio, is31fl32xx, lm3532, lm36274, lm3692x, lm3697, lp50xx, lp8860, lt3593, max77650, mt6323, ns2, pm8058, pwm, syscon, tlc591xx and turris-omnia.
There is one driver in drivers/input which parses this property on it's own. I shall send a separate patch there after this is applied.
There are still 8 drivers that parse this property on their own because they do not pass the led_init_data structure to the registering function. I will try to refactor those in the future.
Signed-off-by: Marek Behún <marek.behun@nic.cz> Signed-off-by: Pavel Machek <pavel@ucw.cz>
show more ...
|
#
4b64c051 |
| 19-Sep-2020 |
Marek Behún <marek.behun@nic.cz> |
leds: lm3532: don't parse label DT property
This driver uses extended LED registration, so we do not need to parse the `label` DT property on our own.
Signed-off-by: Marek Behún <marek.behun@nic.cz
leds: lm3532: don't parse label DT property
This driver uses extended LED registration, so we do not need to parse the `label` DT property on our own.
Signed-off-by: Marek Behún <marek.behun@nic.cz> Signed-off-by: Pavel Machek <pavel@ucw.cz>
show more ...
|
#
c5437338 |
| 13-Jul-2020 |
Alexander A. Klimov <grandmaster@al2klimov.de> |
leds: Replace HTTP links with HTTPS ones
Rationale: Reduces attack surface on kernel devs opening the links for MITM as HTTPS traffic is much harder to manipulate.
Deterministic algorithm: For each
leds: Replace HTTP links with HTTPS ones
Rationale: Reduces attack surface on kernel devs opening the links for MITM as HTTPS traffic is much harder to manipulate.
Deterministic algorithm: For each file: If not .svg: For each line: If doesn't contain `\bxmlns\b`: For each link, `\bhttp://[^# \t\r\n]*(?:\w|/)`: If neither `\bgnu\.org/license`, nor `\bmozilla\.org/MPL\b`: If both the HTTP and HTTPS versions return 200 OK and serve the same content: Replace HTTP with HTTPS.
Signed-off-by: Alexander A. Klimov <grandmaster@al2klimov.de> Acked-by: Rob Herring <robh@kernel.org> Acked-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Pavel Machek <pavel@ucw.cz>
show more ...
|
#
28799272 |
| 13-Mar-2020 |
Colin Ian King <colin.king@canonical.com> |
leds: lm3532: make bitfield 'enabled' unsigned
The bitfield 'enabled' should bit unsigned, so make it unsigned.
Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Pavel Machek
leds: lm3532: make bitfield 'enabled' unsigned
The bitfield 'enabled' should bit unsigned, so make it unsigned.
Signed-off-by: Colin Ian King <colin.king@canonical.com> Signed-off-by: Pavel Machek <pavel@ucw.cz>
show more ...
|
#
31e065c4 |
| 05-Jan-2020 |
Pavel <pavel@ucw.cz> |
leds: lm3532: add pointer to documentation and fix typo
Add pointer to datasheet and fix typo in printk message.
Signed-off-by: Pavel Machek <pavel@ucw.cz>
|
#
cf6eb52f |
| 07-Aug-2019 |
Pavel <pavel@ucw.cz> |
leds: lm3532: use extended registration so that LED can be used for backlight
Signed-off-by: Pavel Machek <pavel@ucw.cz>
|
#
6d4faf3b |
| 11-Sep-2019 |
Dan Murphy <dmurphy@ti.com> |
leds: lm3532: Fix optional led-max-microamp prop error handling
Fix the error handling for the led-max-microamp property. Need to check if the property is present and then if it is retrieve the sett
leds: lm3532: Fix optional led-max-microamp prop error handling
Fix the error handling for the led-max-microamp property. Need to check if the property is present and then if it is retrieve the setting and its max boundary
Reported-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
536129cc |
| 30-Aug-2019 |
Krzysztof Wilczynski <kw@linux.com> |
leds: lm3532: Move static keyword to the front of declarations
Move the static keyword to the front of declarations ramp_table, als_avrg_table and als_imp_table, and resolve the following compiler w
leds: lm3532: Move static keyword to the front of declarations
Move the static keyword to the front of declarations ramp_table, als_avrg_table and als_imp_table, and resolve the following compiler warnings that can be seen when building with warnings enabled (W=1):
drivers/leds/leds-lm3532.c:209:1: warning: ‘static’ is not at beginning of declaration [-Wold-style-declaration]
drivers/leds/leds-lm3532.c:266:1: warning: ‘static’ is not at beginning of declaration [-Wold-style-declaration]
drivers/leds/leds-lm3532.c:281:1: warning: ‘static’ is not at beginning of declaration [-Wold-style-declaration]
Signed-off-by: Krzysztof Wilczynski <kw@linux.com> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
070a0eed |
| 27-Aug-2019 |
Tony Lindgren <tony@atomide.com> |
leds: lm3532: Avoid potentially unpaired regulator calls
We may currently get unpaired regulator calls when configuring the LED brightness via sysfs in case of regulator calls producing errors. Let'
leds: lm3532: Avoid potentially unpaired regulator calls
We may currently get unpaired regulator calls when configuring the LED brightness via sysfs in case of regulator calls producing errors. Let's fix this by maintaining local state for enabled.
Signed-off-by: Tony Lindgren <tony@atomide.com> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
517ea49a |
| 20-Aug-2019 |
Dan Murphy <dmurphy@ti.com> |
leds: lm3532: Add full scale current configuration
Allow the full scale current to be configured at init. Valid rangles are 5mA->29.8mA.
Signed-off-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Ja
leds: lm3532: Add full scale current configuration
Allow the full scale current to be configured at init. Valid rangles are 5mA->29.8mA.
Signed-off-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
6559ac32 |
| 20-Aug-2019 |
Dan Murphy <dmurphy@ti.com> |
leds: lm3532: Fixes for the driver for stability
Fixed misspelled words, added error check during probe on the init of the registers, and fixed ALS/I2C control mode.
Fixes: bc1b8492c764 ("leds: lm3
leds: lm3532: Fixes for the driver for stability
Fixed misspelled words, added error check during probe on the init of the registers, and fixed ALS/I2C control mode.
Fixes: bc1b8492c764 ("leds: lm3532: Introduce the lm3532 LED driver") Reported-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Dan Murphy <dmurphy@ti.com> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
4c905450 |
| 20-Aug-2019 |
Dan Murphy <dmurphy@ti.com> |
leds: lm3532: Change the define for the fs current register
Change the define name of the full scale current registers.
Signed-off-by: Dan Murphy <dmurphy@ti.com> Acked-by: Pavel Machek <pavel@ucw.
leds: lm3532: Change the define for the fs current register
Change the define name of the full scale current registers.
Signed-off-by: Dan Murphy <dmurphy@ti.com> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
13123940 |
| 20-Aug-2019 |
Dan Murphy <dmurphy@ti.com> |
leds: lm3532: Fix brightness control for i2c mode
Fix the brightness control for I2C mode. Instead of changing the full scale current register update the ALS target register for the appropriate ban
leds: lm3532: Fix brightness control for i2c mode
Fix the brightness control for I2C mode. Instead of changing the full scale current register update the ALS target register for the appropriate banks.
In addition clean up some code errors and random misspellings found during coding.
Tested on Droid4 as well as LM3532 EVM connected to a BeagleBoneBlack
Fixes: bc1b8492c764 ("leds: lm3532: Introduce the lm3532 LED driver") Reported-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Dan Murphy <dmurphy@ti.com> Acked-by: Pavel Machek <pavel@ucw.cz> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
cc93c863 |
| 23-Jul-2019 |
Andy Shevchenko <andriy.shevchenko@linux.intel.com> |
leds: lm3532: Switch to use fwnode_property_count_uXX()
Use fwnode_property_count_uXX() directly, that makes code neater.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by
leds: lm3532: Switch to use fwnode_property_count_uXX()
Use fwnode_property_count_uXX() directly, that makes code neater.
Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com> Acked-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|
#
bc1b8492 |
| 21-Mar-2019 |
Dan Murphy <dmurphy@ti.com> |
leds: lm3532: Introduce the lm3532 LED driver
Introduce the Texas Instruments LM3532 White LED driver. The driver supports ALS configurability or manual brightness control.
The driver also supports
leds: lm3532: Introduce the lm3532 LED driver
Introduce the Texas Instruments LM3532 White LED driver. The driver supports ALS configurability or manual brightness control.
The driver also supports associating LED strings with specific control banks in a group or as individually controlled strings.
Signed-off-by: Dan Murphy <dmurphy@ti.com> Tested-by: Tony Lindgren <tony@atomide.com> Signed-off-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
show more ...
|