From: Pavel Machek <pavel@ucw.cz>
To: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Cc: Jacek Anaszewski <j.anaszewski@samsung.com>,
Heiner Kallweit <hkallweit1@gmail.com>, Greg KH <greg@kroah.com>,
linux-leds@vger.kernel.org,
Benjamin Tissoires <benjamin.tissoires@redhat.com>,
linux-kernel@vger.kernel.org, linux-usb@vger.kernel.org,
pali.rohar@gmail.com, sre@kernel.org, khilman@kernel.org,
aaro.koskinen@iki.fi, ivo.g.dimitrov.75@gmail.com,
Patrik Bachan <patrikbachan@gmail.com>,
serge@hallyn.com
Subject: Re: [PATCH v5 1/4] leds: core: add generic support for RGB Color LED's
Date: Wed, 6 Apr 2016 10:52:48 +0200 [thread overview]
Message-ID: <20160406085248.GB10196@amd> (raw)
In-Reply-To: <570415C4.5070003@gmail.com>
Hi!
> >>>>>Lets say we have
> >>>>>
> >>>>>/sys/class/pattern/lp5533::0
> >>>>>/sys/class/pattern/software::0
> >>>>>
> >>>>>/sys/class/led/n900::red ; default trigger "lp5533::0:0"
> >>>>>/sys/class/led/n900::green ; default trigger "lp5533::0:1"
> >>>>>/sys/class/led/n900::blue ; default trigger "lp5533::0:2"
> >>>>>
> >>>>>Normally, pattern would correspond to one RGB LED. We could have
> >>>>>attribute "/sys/class/pattern/lp5533::0/color" containing R,G,B for
> >>>>>this pattern.
> >>
> >>Could you give an example on how to set a color for RGB LED using
> >>this interface? Would it be compatible with LED triggers?
> >>Where the "pattern" class would be implemented?
> >
> >Well, 'echo "50 60 70" > /sys/class/pattern/lp5533::0/color' should
> >set the color for the led. 'echo "trigger-name" > trigger' would set
> >the trigger, probably just toggling between LED off and set color for
> >the old triggers.
> >
> >Where to implement the patterns is different question, but for example
> >drivers/leds/pattern?
>
> I'd rather leave the pattern issue for now, since it seems to be
> different from the problem Heiner was trying to solve with his LED RGB
> extension. Moreover, hardware patterns are device specific and it could
> be hard to propose a generic interface.
Well, RGB leds are basically useless without pattern support. And I
believe we can do generic interface.
> Drivers can always expose their custom sysfs attributes for configuring
> the patterns.
>
> Regardless of the above, some of your considerations brought me an idea
> on how to add generic and backwards compatible support for setting RGB
> color at one go.
>
> Currently LED class drivers of RGB LED controllers expose three LED
> class devices - one per R, G and B color component. I propose that
> such drivers set LED_DEV_CAP_RGB flag for each LED class device they
> register. LED core, seeing the flag, would create a generic "color"
> sysfs attribute for each of the three LED class devices.
>
> The "color" attribute would contain "R G B" values. Setting the "color"
> attribute of any of the three LED class devices would affect brightness
> properties (i.e. constituent colors) of the remaining two ones.
> It would result in disabling any active triggers and writing all the
> three color settings to the RGB LED controller at one go.
Having one attribute across three devices is rather ugly. And we'll
need to solve the pattern issue one day.
What's tricky about patterns is that you need to control 3 (or more)
leds at a time. Problem you are trying to solve here is ... control of
3 leds, at the same time.
So let's solve them together.
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
next prev parent reply other threads:[~2016-04-06 8:52 UTC|newest]
Thread overview: 37+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-01 21:26 [PATCH v5 1/4] leds: core: add generic support for RGB Color LED's Heiner Kallweit
2016-03-04 9:04 ` Jacek Anaszewski
2016-03-29 10:02 ` Pavel Machek
2016-03-29 20:38 ` Heiner Kallweit
2016-03-29 21:43 ` Pavel Machek
2016-03-29 22:03 ` Pavel Machek
2016-03-30 5:58 ` Heiner Kallweit
2016-04-01 12:52 ` Pavel Machek
2016-03-30 8:07 ` Jacek Anaszewski
2016-03-30 13:03 ` Pavel Machek
2016-03-30 13:59 ` Heiner Kallweit
2016-03-31 8:17 ` Jacek Anaszewski
2016-04-01 12:55 ` Pavel Machek
2016-04-01 13:28 ` Jacek Anaszewski
2016-04-01 14:07 ` Pavel Machek
2016-04-01 14:27 ` Jacek Anaszewski
2016-04-01 15:03 ` Pavel Machek
[not found] ` <56FB893C.60203-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>
2016-04-01 12:53 ` Pavel Machek
2016-03-30 7:57 ` Jacek Anaszewski
2016-04-01 13:57 ` Pavel Machek
2016-04-01 18:56 ` Jacek Anaszewski
[not found] ` <56FEC444.4040106-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-04-01 21:18 ` Pavel Machek
2016-04-04 21:34 ` Jacek Anaszewski
2016-04-05 9:01 ` Pavel Machek
2016-04-05 19:45 ` Jacek Anaszewski
2016-04-05 20:43 ` Heiner Kallweit
[not found] ` <5704236D.5080805-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-04-05 22:15 ` Jacek Anaszewski
[not found] ` <570438EF.4080904-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2016-04-06 9:16 ` Pavel Machek
2016-04-06 9:12 ` Pavel Machek
2016-04-06 8:52 ` Pavel Machek [this message]
2016-04-06 9:53 ` Jacek Anaszewski
2016-04-07 20:45 ` Pavel Machek
2016-04-08 18:47 ` Jacek Anaszewski
2016-04-09 16:01 ` Pavel Machek
[not found] ` <20160409160142.GD19362-5NIqAleC692hcjWhqY66xCZi+YwRKgec@public.gmane.org>
2016-04-12 7:13 ` Jacek Anaszewski
2016-04-15 11:53 ` Pavel Machek
2016-04-18 9:12 ` Jacek Anaszewski
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20160406085248.GB10196@amd \
--to=pavel@ucw.cz \
--cc=aaro.koskinen@iki.fi \
--cc=benjamin.tissoires@redhat.com \
--cc=greg@kroah.com \
--cc=hkallweit1@gmail.com \
--cc=ivo.g.dimitrov.75@gmail.com \
--cc=j.anaszewski@samsung.com \
--cc=jacek.anaszewski@gmail.com \
--cc=khilman@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=linux-usb@vger.kernel.org \
--cc=pali.rohar@gmail.com \
--cc=patrikbachan@gmail.com \
--cc=serge@hallyn.com \
--cc=sre@kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).