From: Marek Behun <marek.behun@nic.cz>
To: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Cc: linux-leds@vger.kernel.org, "Pavel Machek" <pavel@ucw.cz>,
"Dan Murphy" <dmurphy@ti.com>,
"Ondřej Jirman" <megous@megous.com>,
"Russell King" <linux@armlinux.org.uk>,
"Andrew Lunn" <andrew@lunn.ch>,
linux-kernel@vger.kernel.org,
"Matthias Schiffer" <matthias.schiffer@ew.tq-group.com>,
"Rob Herring" <robh+dt@kernel.org>,
devicetree@vger.kernel.org
Subject: Re: [PATCH leds + devicetree v2 2/2] leds: trigger: netdev: parse `trigger-sources` from device tree
Date: Wed, 16 Sep 2020 02:15:37 +0200 [thread overview]
Message-ID: <20200916021537.106a29e5@nic.cz> (raw)
In-Reply-To: <03fc62d8-eeaa-7b74-5ed9-7e482ea6b888@gmail.com>
On Tue, 15 Sep 2020 23:35:25 +0200
Jacek Anaszewski <jacek.anaszewski@gmail.com> wrote:
> Hi Marek,
>
> On 9/15/20 5:26 PM, Marek Behún wrote:
> > Allow setting netdev LED trigger as default when given LED DT node has
> > the `trigger-sources` property pointing to a node corresponding to a
> > network device.
> >
> > The specific netdev trigger mode is determined from the `function` LED
> > property.
> >
> > Example:
> > eth0: ethernet@30000 {
> > compatible = "xyz";
> > #trigger-source-cells = <0>;
> > };
> >
> > led {
> > color = <LED_COLOR_ID_GREEN>;
> > function = LED_FUNCTION_LINK;
> > trigger-sources = <ð0>;
> > };
> >
> > Signed-off-by: Marek Behún <marek.behun@nic.cz>
> > Cc: Rob Herring <robh+dt@kernel.org>
> > Cc: devicetree@vger.kernel.org
> > ---
> > drivers/leds/trigger/ledtrig-netdev.c | 80 ++++++++++++++++++++++++++-
> > include/dt-bindings/leds/common.h | 1 +
> > 2 files changed, 80 insertions(+), 1 deletion(-)
> >
> > diff --git a/drivers/leds/trigger/ledtrig-netdev.c b/drivers/leds/trigger/ledtrig-netdev.c
> > index d5e774d830215..99fc2f0c68e12 100644
> > --- a/drivers/leds/trigger/ledtrig-netdev.c
> > +++ b/drivers/leds/trigger/ledtrig-netdev.c
> > @@ -20,6 +20,7 @@
> [...]
>
> > static int netdev_trig_activate(struct led_classdev *led_cdev)
> > {
> > struct led_netdev_data *trigger_data;
> > @@ -414,10 +479,17 @@ static int netdev_trig_activate(struct led_classdev *led_cdev)
> > trigger_data->last_activity = 0;
> >
> > led_set_trigger_data(led_cdev, trigger_data);
> > + netdev_trig_of_parse(led_cdev, trigger_data);
>
> Please be aware of LED_INIT_DEFAULT_TRIGGER flag - it would make
> sense to use it here so as not to unnecessarily call
> netdev_trig_of_parse(), which makes sense only if trigger will be
> default, I presume.
>
> See timer_trig_activate() in drivers/leds/trigger/ledtrig-timer.c
> for reference.
>
Hmmm. Jacek, all the triggers that work with the macro
LED_INIT_DEFAULT_TRIGGER are oneshot, timer and pattern.
If this macro is set, they all call pattern_init function where they
read led-pattern from fwnode.
But there is no device tree in Linux sources using this property.
In fact the command
git grep led-pattern
yields only 2 files:
Documentation/devicetree/bindings/leds/common.yaml
drivers/leds/led-core.c
What is the purpose if no device tree uses this property? Is this used
from other fwnode sources, like acpi or efi?
The reason why I am asking this is that the `led-pattern` property in
device tree goes against the principle of device tree, that it
shouldn't set settings settable from userspace, only describe the
devices on the system and how they are connected to each other.
This is the same reason why multi-CPU DSA proposals which proposed to
set mappings between CPU ports and user ports were rejected...
Marek
next prev parent reply other threads:[~2020-09-16 0:15 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-09-15 15:26 [PATCH leds + devicetree v2 0/2] Parse DT property `trigger-sources` for netdev LED trigger Marek Behún
2020-09-15 15:26 ` [PATCH leds + devicetree v2 1/2] leds: trigger: add trigger sources validating method and helper functions Marek Behún
2020-09-15 16:24 ` Marek Behun
2020-11-25 10:32 ` Pavel Machek
2020-09-15 15:26 ` [PATCH leds + devicetree v2 2/2] leds: trigger: netdev: parse `trigger-sources` from device tree Marek Behún
2020-09-15 21:35 ` Jacek Anaszewski
2020-09-16 0:15 ` Marek Behun [this message]
2020-09-16 21:46 ` Jacek Anaszewski
2020-11-25 10:42 ` Pavel Machek
2020-11-25 12:19 ` Marek Behun
2020-11-25 10:38 ` [PATCH leds + devicetree v2 0/2] Parse DT property `trigger-sources` for netdev LED trigger Pavel Machek
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=20200916021537.106a29e5@nic.cz \
--to=marek.behun@nic.cz \
--cc=andrew@lunn.ch \
--cc=devicetree@vger.kernel.org \
--cc=dmurphy@ti.com \
--cc=jacek.anaszewski@gmail.com \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=linux@armlinux.org.uk \
--cc=matthias.schiffer@ew.tq-group.com \
--cc=megous@megous.com \
--cc=pavel@ucw.cz \
--cc=robh+dt@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).