mbox series

[v29,00/16] Multicolor Framework v29

Message ID 20200622185919.2131-1-dmurphy@ti.com
Headers show
Series Multicolor Framework v29 | expand

Message

Dan Murphy June 22, 2020, 6:59 p.m. UTC
Hello

This is the multi color LED framework.   This framework presents clustered
colored LEDs into an array and allows the user space to adjust the brightness
of the cluster using a single file write.  The individual colored LEDs
intensities are controlled via a single file that is an array of LEDs

Change to the LEDs Kconfig to fix dependencies on the LP55XX_COMMON.
Added update to the u8500_defconfig

Dan

Dan Murphy (16):
  dt: bindings: Add multicolor class dt bindings documention
  leds: Add multicolor ID to the color ID list
  leds: multicolor: Introduce a multicolor class definition
  dt: bindings: lp50xx: Introduce the lp50xx family of RGB drivers
  leds: lp50xx: Add the LP50XX family of the RGB LED driver
  dt-bindings: leds: Convert leds-lp55xx to yaml
  ARM: dts: n900: Add reg property to the LP5523 channel node
  ARM: dts: imx6dl-yapp4: Add reg property to the lp5562 channel node
  ARM: dts: ste-href: Add reg property to the LP5521 channel nodes
  leds: lp55xx: Convert LED class registration to devm_*
  leds: lp55xx: Add multicolor framework support to lp55xx
  ARM: defconfig: u8500: Add LP55XX_COMMON config flag
  leds: lp5523: Update the lp5523 code to add multicolor brightness
    function
  leds: lp5521: Add multicolor framework multicolor brightness support
  leds: lp55xx: Fix file permissions to use DEVICE_ATTR macros
  leds: lp5523: Fix various formatting issues in the code

 .../ABI/testing/sysfs-class-led-multicolor    |  36 +
 .../bindings/leds/leds-class-multicolor.yaml  |  37 +
 .../devicetree/bindings/leds/leds-lp50xx.yaml | 130 +++
 .../devicetree/bindings/leds/leds-lp55xx.txt  | 228 -----
 .../devicetree/bindings/leds/leds-lp55xx.yaml | 220 +++++
 Documentation/leds/index.rst                  |   1 +
 Documentation/leds/leds-class-multicolor.rst  |  88 ++
 arch/arm/boot/dts/imx6dl-yapp4-common.dtsi    |  14 +-
 arch/arm/boot/dts/omap3-n900.dts              |  29 +-
 arch/arm/boot/dts/ste-href.dtsi               |  22 +-
 arch/arm/configs/u8500_defconfig              |   1 +
 drivers/leds/Kconfig                          |  32 +-
 drivers/leds/Makefile                         |   2 +
 drivers/leds/led-class-multicolor.c           | 208 +++++
 drivers/leds/led-core.c                       |   1 +
 drivers/leds/leds-lp50xx.c                    | 783 ++++++++++++++++++
 drivers/leds/leds-lp5521.c                    |  43 +-
 drivers/leds/leds-lp5523.c                    |  62 +-
 drivers/leds/leds-lp5562.c                    |  22 +-
 drivers/leds/leds-lp55xx-common.c             | 212 +++--
 drivers/leds/leds-lp55xx-common.h             |  16 +-
 drivers/leds/leds-lp8501.c                    |  23 +-
 include/dt-bindings/leds/common.h             |   3 +-
 include/linux/led-class-multicolor.h          | 121 +++
 include/linux/platform_data/leds-lp55xx.h     |   8 +
 25 files changed, 1982 insertions(+), 360 deletions(-)
 create mode 100644 Documentation/ABI/testing/sysfs-class-led-multicolor
 create mode 100644 Documentation/devicetree/bindings/leds/leds-class-multicolor.yaml
 create mode 100644 Documentation/devicetree/bindings/leds/leds-lp50xx.yaml
 delete mode 100644 Documentation/devicetree/bindings/leds/leds-lp55xx.txt
 create mode 100644 Documentation/devicetree/bindings/leds/leds-lp55xx.yaml
 create mode 100644 Documentation/leds/leds-class-multicolor.rst
 create mode 100644 drivers/leds/led-class-multicolor.c
 create mode 100644 drivers/leds/leds-lp50xx.c
 create mode 100644 include/linux/led-class-multicolor.h

Comments

Pavel Machek July 4, 2020, 12:47 p.m. UTC | #1
Hi!

> This is the multi color LED framework.   This framework presents clustered
> colored LEDs into an array and allows the user space to adjust the brightness
> of the cluster using a single file write.  The individual colored LEDs
> intensities are controlled via a single file that is an array of LEDs
> 
> Change to the LEDs Kconfig to fix dependencies on the LP55XX_COMMON.
> Added update to the u8500_defconfig

Marek, would you be willing to look over this series?

Dan, can we please get it in the order

1) fixes first

2) changes needed for multicolor but not depending on dt acks

3) dt changes

4) rest?

This is the order it should have been in the first place, and I'd like
to get fixes applied, and perhaps some of the preparation.

Best regards,
									Pavel
Dan Murphy July 6, 2020, 12:31 p.m. UTC | #2
Pavel

On 7/4/20 7:47 AM, Pavel Machek wrote:
> Hi!
>
>> This is the multi color LED framework.   This framework presents clustered
>> colored LEDs into an array and allows the user space to adjust the brightness
>> of the cluster using a single file write.  The individual colored LEDs
>> intensities are controlled via a single file that is an array of LEDs
>>
>> Change to the LEDs Kconfig to fix dependencies on the LP55XX_COMMON.
>> Added update to the u8500_defconfig
> Marek, would you be willing to look over this series?
>
> Dan, can we please get it in the order
>
> 1) fixes first
>
> 2) changes needed for multicolor but not depending on dt acks
>
> 3) dt changes
>
> 4) rest?
>
> This is the order it should have been in the first place, and I'd like
> to get fixes applied, and perhaps some of the preparation.

This will depend on if there are comments.  If I have to push a v30 then 
I will reorder.

If not then there would be no reason to re-order these.

Dan
Dan Murphy July 7, 2020, 3:36 p.m. UTC | #3
Pavel

On 7/6/20 7:31 AM, Dan Murphy wrote:
> Pavel
>
> On 7/4/20 7:47 AM, Pavel Machek wrote:
>> Hi!
>>
>>> This is the multi color LED framework. This framework presents 
>>> clustered
>>> colored LEDs into an array and allows the user space to adjust the 
>>> brightness
>>> of the cluster using a single file write.  The individual colored LEDs
>>> intensities are controlled via a single file that is an array of LEDs
>>>
>>> Change to the LEDs Kconfig to fix dependencies on the LP55XX_COMMON.
>>> Added update to the u8500_defconfig
>> Marek, would you be willing to look over this series?
>>
>> Dan, can we please get it in the order
>>
>> 1) fixes first
>>
>> 2) changes needed for multicolor but not depending on dt acks
>>
>> 3) dt changes
>>
>> 4) rest?
>>
>> This is the order it should have been in the first place, and I'd like
>> to get fixes applied, and perhaps some of the preparation.
>
> This will depend on if there are comments.  If I have to push a v30 
> then I will reorder.
>
> If not then there would be no reason to re-order these.
>
FYI I just reordered these locally and the fixes patches applied cleanly 
to your for-next branch and the MC FW patches applied cleanly on top of 
those.

So you should be able to pull in the fixes with no dependency on the MC 
FW patches.  If you can apply the fixes cleanly then if there are 
conflicts with the MC FW patches then I will fix those as well.

Dan


> Dan
>
>
Pavel Machek July 11, 2020, 8:29 p.m. UTC | #4
On Sat 2020-07-04 14:47:29, Pavel Machek wrote:
> Hi!
> 
> > This is the multi color LED framework.   This framework presents clustered
> > colored LEDs into an array and allows the user space to adjust the brightness
> > of the cluster using a single file write.  The individual colored LEDs
> > intensities are controlled via a single file that is an array of LEDs
> > 
> > Change to the LEDs Kconfig to fix dependencies on the LP55XX_COMMON.
> > Added update to the u8500_defconfig
> 
> Marek, would you be willing to look over this series?
> 
> Dan, can we please get it in the order
> 
> 1) fixes first
> 
> 2) changes needed for multicolor but not depending on dt acks
> 
> 3) dt changes
> 
> 4) rest?

Actually, one more request. I believe I won't be able to take at least
some of the ARM: dts stuff... not everything is acked. Please put that
last.

Thank you,
									Pavel
Marek Behun July 12, 2020, 5:13 p.m. UTC | #5
On Sat, 4 Jul 2020 14:47:29 +0200
Pavel Machek <pavel@ucw.cz> wrote:

> Hi!
> 
> > This is the multi color LED framework.   This framework presents clustered
> > colored LEDs into an array and allows the user space to adjust the brightness
> > of the cluster using a single file write.  The individual colored LEDs
> > intensities are controlled via a single file that is an array of LEDs
> > 
> > Change to the LEDs Kconfig to fix dependencies on the LP55XX_COMMON.
> > Added update to the u8500_defconfig  
> 
> Marek, would you be willing to look over this series?

Overall this series looks good to me. I wanted to apply version 29 of
the patches, but I didn't receive all patches in v29 (some are
missing), so I had to search for previous versions of selected patches.

I have seen some typos in documentation, but that can be solved
afterwards.

One thing I don't like much is that in the sysfs multi_index and
multi_intensity files there is a trailing space after the last color.
This is not true for example for the trigger file. It is trivial to fix
this, so again maybe a will send a follow-up patch after this series is
accepted.

Marek

> Dan, can we please get it in the order
> 
> 1) fixes first
> 
> 2) changes needed for multicolor but not depending on dt acks
> 
> 3) dt changes
> 
> 4) rest?
> 
> This is the order it should have been in the first place, and I'd like
> to get fixes applied, and perhaps some of the preparation.
> 
> Best regards,
> 									Pavel
>
Pavel Machek July 12, 2020, 7:55 p.m. UTC | #6
Hi!

> > > This is the multi color LED framework.   This framework presents clustered
> > > colored LEDs into an array and allows the user space to adjust the brightness
> > > of the cluster using a single file write.  The individual colored LEDs
> > > intensities are controlled via a single file that is an array of LEDs
> > > 
> > > Change to the LEDs Kconfig to fix dependencies on the LP55XX_COMMON.
> > > Added update to the u8500_defconfig  
> > 
> > Marek, would you be willing to look over this series?
> 
> Overall this series looks good to me. I wanted to apply version 29 of
> the patches, but I didn't receive all patches in v29 (some are
> missing), so I had to search for previous versions of selected patches.
> 
> I have seen some typos in documentation, but that can be solved
> afterwards.
> 
> One thing I don't like much is that in the sysfs multi_index and
> multi_intensity files there is a trailing space after the last color.
> This is not true for example for the trigger file. It is trivial to fix
> this, so again maybe a will send a follow-up patch after this series is
> accepted.

Yes, I noticed that one, too, and expect it to be fixed before the
merge.

I believe you'll get next version of the patches... If not that one
will likely appear in -next, so will be available using git.

Thank you for the review,
									Pavel