Message ID | 20250509-leds-tps6131x-v4-0-2c9563f5b67c@emfend.at |
---|---|
Headers | show |
Series | Support for Texas Instruments TPS6131X flash LED driver | expand |
On Fri, 09 May 2025, Matthias Fend wrote: > The TPS61310/TPS61311 is a flash LED driver with I2C interface. Its power > stage is capable of supplying a maximum total current of roughly 1500mA. > The TPS6131x provides three constant-current sinks, capable of sinking up > to 2 × 400mA (LED1 and LED3) and 800mA (LED2) in flash mode. In torch mode > each sink (LED1, LED2, LED3) supports currents up to 175m > > Signed-off-by: Matthias Fend <matthias.fend@emfend.at> > --- > Changes in v4: > - Added/removed/adjusted comments > - Use defines for register defaults > - Updated source format > - Check for error in torch refresh timer > - Return error from tps6131x_parse_node() > - Link to v3: https://lore.kernel.org/r/20250423-leds-tps6131x-v3-0-ca67d346a4ea@emfend.at > > Changes in v3: > - Add comment for locking > - Drop handling based on CONFIG_V4L2_FLASH_LED_CLASS > - Stop if getting reset GPIO fails > - Optimize locks > - Fix type of num_channels (u32 -> int) > - Convert a remaining return sequence to dev_err_probe > - Link to v2: https://lore.kernel.org/r/20250318-leds-tps6131x-v2-0-bc09c7a50b2e@emfend.at > > Changes in v2: > - Bindings: Extend device description > - Bindings: Drop unused address/size cells > - Bindings: Use fallback compatible > - Bindings: Corrected minimum current for 50mA steps > - Bindings: Drop node label > - Fix name of REGISTER4 INDC shift define > - Save device instead i2c_client in private data > - Add comment for mutex > - Use macro to convert from uA to mA > - Use defines to describe initial register values > - Add safety delay during reset sequence > - Use fixed value enum to set the mode > - Renamed some local variables > - Re-sorted local variables > - Replaced ifdefs for V4L2_FLASH_LED_CLASS > - Improved some error messages > - Link to v1: https://lore.kernel.org/r/20250228-leds-tps6131x-v1-0-d1071d90f9ea@emfend.at > > --- > Matthias Fend (2): > dt-bindings: leds: add Texas Instruments TPS6131x flash LED driver > leds: tps6131x: add support for Texas Instruments TPS6131X flash LED driver > > .../devicetree/bindings/leds/ti,tps61310.yaml | 120 +++ > MAINTAINERS | 7 + > drivers/leds/flash/Kconfig | 11 + > drivers/leds/flash/Makefile | 1 + > drivers/leds/flash/leds-tps6131x.c | 815 +++++++++++++++++++++ > 5 files changed, 954 insertions(+) I get errors on apply: WARNING: Message contains suspicious unicode control characters! Subject: [PATCH v4 2/2] leds: tps6131x: add support for Texas Instruments TPS6131X flash LED driver Line: + * Register contents after a power on/reset. These values cannot be changed. -----------------------------------------------------------------^ Char: ZERO WIDTH SPACE (0x200b) If you are sure about this, rerun with the right flag to allow. FWIW, I also saw these in your mails: > The values <200b><200b>are fixed because they are written directly to a register. > In V1, I used an enum without values <200b><200b>and mapped it to the register value in > a function. I was asked to omit this mapping and use the enum directly. Never seen this before. Not sure what's going on. Please fix and resubmit.
The TPS61310/TPS61311 is a flash LED driver with I2C interface. Its power stage is capable of supplying a maximum total current of roughly 1500mA. The TPS6131x provides three constant-current sinks, capable of sinking up to 2 × 400mA (LED1 and LED3) and 800mA (LED2) in flash mode. In torch mode each sink (LED1, LED2, LED3) supports currents up to 175m Signed-off-by: Matthias Fend <matthias.fend@emfend.at> --- Changes in v4: - Added/removed/adjusted comments - Use defines for register defaults - Updated source format - Check for error in torch refresh timer - Return error from tps6131x_parse_node() - Link to v3: https://lore.kernel.org/r/20250423-leds-tps6131x-v3-0-ca67d346a4ea@emfend.at Changes in v3: - Add comment for locking - Drop handling based on CONFIG_V4L2_FLASH_LED_CLASS - Stop if getting reset GPIO fails - Optimize locks - Fix type of num_channels (u32 -> int) - Convert a remaining return sequence to dev_err_probe - Link to v2: https://lore.kernel.org/r/20250318-leds-tps6131x-v2-0-bc09c7a50b2e@emfend.at Changes in v2: - Bindings: Extend device description - Bindings: Drop unused address/size cells - Bindings: Use fallback compatible - Bindings: Corrected minimum current for 50mA steps - Bindings: Drop node label - Fix name of REGISTER4 INDC shift define - Save device instead i2c_client in private data - Add comment for mutex - Use macro to convert from uA to mA - Use defines to describe initial register values - Add safety delay during reset sequence - Use fixed value enum to set the mode - Renamed some local variables - Re-sorted local variables - Replaced ifdefs for V4L2_FLASH_LED_CLASS - Improved some error messages - Link to v1: https://lore.kernel.org/r/20250228-leds-tps6131x-v1-0-d1071d90f9ea@emfend.at --- Matthias Fend (2): dt-bindings: leds: add Texas Instruments TPS6131x flash LED driver leds: tps6131x: add support for Texas Instruments TPS6131X flash LED driver .../devicetree/bindings/leds/ti,tps61310.yaml | 120 +++ MAINTAINERS | 7 + drivers/leds/flash/Kconfig | 11 + drivers/leds/flash/Makefile | 1 + drivers/leds/flash/leds-tps6131x.c | 815 +++++++++++++++++++++ 5 files changed, 954 insertions(+) --- base-commit: 9c69f88849045499e8ad114e5e13dbb3c85f4443 change-id: 20250227-leds-tps6131x-a7437883e400 Best regards,