.../devicetree/bindings/leds/ti,lm3560.yaml | 163 ++++++++ drivers/media/i2c/lm3560.c | 385 +++++++++++++++--- include/media/i2c/lm3560.h | 84 ---- 3 files changed, 481 insertions(+), 151 deletions(-) create mode 100644 Documentation/devicetree/bindings/leds/ti,lm3560.yaml delete mode 100644 include/media/i2c/lm3560.h
Add missing HWEN input pin and IN supply. Fix v4l2 subdev registration. Remove platform data and switch to OF device tree bindings. --- Changes in v5: - schema adjusted to take into account lm3559 - device_for_each_child_node > for_each_available_child_of_node - lm3559 and lm3560 configuration was diverged with data match - removed redundant header Changes in v4: - fixed current being off by 10 in schema - label property from schema replaced with modern equivalents - lm3560_init_device moved before subdev registration - v4l2_device_unregister_subdev > v4l2_async_unregister_subdev - added subdevice cleanup if second led registration fails - added check if "reg" property exists for LED nodes - added missing fwnode_handle_put if device loop fails - added bitmap to monitor configured LED id - added pm_ptr() macro for PM operations pointer Changes in v3: - added note regarding lm3559 in the schema commit - lm3560 power on/off functions converted to be part of PM, dropped redundant wrappers Changes in v2: - vendor properties swapped with generic LED properties - added mutex lock usage optimization - power supply and enable gpio commits squashed into PM configuration since they are both required in making proper on/off sequence. --- Svyatoslav Ryhel (6): dt-bindings: leds: Document TI LM3560 Synchronous Boost Flash Driver media: i2c: lm3560: Fix v4l2 subdev registration media: i2c: lm3560: Optimize mutex lock usage media: i2c: lm3560: Convert to use OF bindings media: i2c: lm3560: Add support for PM features media: i2c: lm3560: Add proper support for LM3559 .../devicetree/bindings/leds/ti,lm3560.yaml | 163 ++++++++ drivers/media/i2c/lm3560.c | 385 +++++++++++++++--- include/media/i2c/lm3560.h | 84 ---- 3 files changed, 481 insertions(+), 151 deletions(-) create mode 100644 Documentation/devicetree/bindings/leds/ti,lm3560.yaml delete mode 100644 include/media/i2c/lm3560.h -- 2.51.0
нд, 3 трав. 2026 р. о 19:44 Svyatoslav Ryhel <clamor95@gmail.com> пише: > > Add missing HWEN input pin and IN supply. Fix v4l2 subdev registration. > Remove platform data and switch to OF device tree bindings. > > --- > Changes in v5: > - schema adjusted to take into account lm3559 > - device_for_each_child_node > for_each_available_child_of_node > - lm3559 and lm3560 configuration was diverged with data match > - removed redundant header > > Changes in v4: > - fixed current being off by 10 in schema > - label property from schema replaced with modern equivalents > - lm3560_init_device moved before subdev registration > - v4l2_device_unregister_subdev > v4l2_async_unregister_subdev > - added subdevice cleanup if second led registration fails > - added check if "reg" property exists for LED nodes > - added missing fwnode_handle_put if device loop fails > - added bitmap to monitor configured LED id > - added pm_ptr() macro for PM operations pointer > > Changes in v3: > - added note regarding lm3559 in the schema commit > - lm3560 power on/off functions converted to be part of PM, > dropped redundant wrappers > > Changes in v2: > - vendor properties swapped with generic LED properties > - added mutex lock usage optimization > - power supply and enable gpio commits squashed into PM > configuration since they are both required in making > proper on/off sequence. > --- > > Svyatoslav Ryhel (6): > dt-bindings: leds: Document TI LM3560 Synchronous Boost Flash Driver > media: i2c: lm3560: Fix v4l2 subdev registration > media: i2c: lm3560: Optimize mutex lock usage > media: i2c: lm3560: Convert to use OF bindings > media: i2c: lm3560: Add support for PM features > media: i2c: lm3560: Add proper support for LM3559 > > .../devicetree/bindings/leds/ti,lm3560.yaml | 163 ++++++++ > drivers/media/i2c/lm3560.c | 385 +++++++++++++++--- > include/media/i2c/lm3560.h | 84 ---- > 3 files changed, 481 insertions(+), 151 deletions(-) > create mode 100644 Documentation/devicetree/bindings/leds/ti,lm3560.yaml > delete mode 100644 include/media/i2c/lm3560.h > > -- > 2.51.0 > Hello Sakari! During preparation of this patchset 2 important issues were not tracked and discovered only after sending. 1. In "dt-bindings: leds: Document TI LM3560 Synchronous Boost Flash Driver" flash-max-microamp and led-max-microamp ranges of lm3559 and lm3560 pattern properties were swapped. 2. In "media: i2c: lm3560: Convert to use OF bindings" In the lm3560_probe struct device_node *node should be removed and for_each_available_child_of_node should be replaced with for_each_available_child_of_node_scoped I am sorry for this inconvenience. If you find it suitable to adjust these commits on apply feel free to do so, alternatively I can fix them in the next iteration. With best regards, Svyatoslav R.
Hi Svyatoslav, On Mon, May 04, 2026 at 08:35:44AM +0300, Svyatoslav Ryhel wrote: > нд, 3 трав. 2026 р. о 19:44 Svyatoslav Ryhel <clamor95@gmail.com> пише: > > > > Add missing HWEN input pin and IN supply. Fix v4l2 subdev registration. > > Remove platform data and switch to OF device tree bindings. > > > > --- > > Changes in v5: > > - schema adjusted to take into account lm3559 > > - device_for_each_child_node > for_each_available_child_of_node > > - lm3559 and lm3560 configuration was diverged with data match > > - removed redundant header > > > > Changes in v4: > > - fixed current being off by 10 in schema > > - label property from schema replaced with modern equivalents > > - lm3560_init_device moved before subdev registration > > - v4l2_device_unregister_subdev > v4l2_async_unregister_subdev > > - added subdevice cleanup if second led registration fails > > - added check if "reg" property exists for LED nodes > > - added missing fwnode_handle_put if device loop fails > > - added bitmap to monitor configured LED id > > - added pm_ptr() macro for PM operations pointer > > > > Changes in v3: > > - added note regarding lm3559 in the schema commit > > - lm3560 power on/off functions converted to be part of PM, > > dropped redundant wrappers > > > > Changes in v2: > > - vendor properties swapped with generic LED properties > > - added mutex lock usage optimization > > - power supply and enable gpio commits squashed into PM > > configuration since they are both required in making > > proper on/off sequence. > > --- > > > > Svyatoslav Ryhel (6): > > dt-bindings: leds: Document TI LM3560 Synchronous Boost Flash Driver > > media: i2c: lm3560: Fix v4l2 subdev registration > > media: i2c: lm3560: Optimize mutex lock usage > > media: i2c: lm3560: Convert to use OF bindings > > media: i2c: lm3560: Add support for PM features > > media: i2c: lm3560: Add proper support for LM3559 > > > > .../devicetree/bindings/leds/ti,lm3560.yaml | 163 ++++++++ > > drivers/media/i2c/lm3560.c | 385 +++++++++++++++--- > > include/media/i2c/lm3560.h | 84 ---- > > 3 files changed, 481 insertions(+), 151 deletions(-) > > create mode 100644 Documentation/devicetree/bindings/leds/ti,lm3560.yaml > > delete mode 100644 include/media/i2c/lm3560.h > > > > -- > > 2.51.0 > > > > Hello Sakari! > > During preparation of this patchset 2 important issues were not > tracked and discovered only after sending. > > 1. In "dt-bindings: leds: Document TI LM3560 Synchronous Boost Flash Driver" > > flash-max-microamp and led-max-microamp ranges of lm3559 and lm3560 > pattern properties were swapped. > > 2. In "media: i2c: lm3560: Convert to use OF bindings" > > In the lm3560_probe struct device_node *node should be removed and > for_each_available_child_of_node should be replaced with > for_each_available_child_of_node_scoped > > I am sorry for this inconvenience. If you find it suitable to adjust > these commits on apply feel free to do so, alternatively I can fix > them in the next iteration. Ack, I have a few comments on the set as well; please address the issues in v6. -- Kind regards, Sakari Ailus
© 2016 - 2026 Red Hat, Inc.