All of lore.kernel.org
 help / color / mirror / Atom feed
From: Andrew Lunn <andrew@lunn.ch>
To: Ansuel Smith <ansuelsmth@gmail.com>
Cc: "Vivien Didelot" <vivien.didelot@gmail.com>,
	"Florian Fainelli" <f.fainelli@gmail.com>,
	"Vladimir Oltean" <olteanv@gmail.com>,
	"David S. Miller" <davem@davemloft.net>,
	"Jakub Kicinski" <kuba@kernel.org>,
	"Rob Herring" <robh+dt@kernel.org>,
	"Jonathan Corbet" <corbet@lwn.net>, "Pavel Machek" <pavel@ucw.cz>,
	"John Crispin" <john@phrozen.org>,
	netdev@vger.kernel.org, devicetree@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-doc@vger.kernel.org,
	linux-leds@vger.kernel.org, "Marek Behún" <kabel@kernel.org>
Subject: Re: [RFC PATCH v2 1/5] leds: trigger: add API for HW offloading of triggers
Date: Mon, 8 Nov 2021 15:04:23 +0100	[thread overview]
Message-ID: <YYkuZwQi66slgfTZ@lunn.ch> (raw)
In-Reply-To: <20211108002500.19115-2-ansuelsmth@gmail.com>

> +static inline int led_trigger_offload(struct led_classdev *led_cdev)
> +{
> +	int ret;
> +
> +	if (!led_cdev->trigger_offload)
> +		return -EOPNOTSUPP;
> +
> +	ret = led_cdev->trigger_offload(led_cdev, true);
> +	led_cdev->offloaded = !ret;
> +
> +	return ret;
> +}
> +
> +static inline void led_trigger_offload_stop(struct led_classdev *led_cdev)
> +{
> +	if (!led_cdev->trigger_offload)
> +		return;
> +
> +	if (led_cdev->offloaded) {
> +		led_cdev->trigger_offload(led_cdev, false);
> +		led_cdev->offloaded = false;
> +	}
> +}
> +#endif

I think there should be two calls into the cdev driver, not this
true/false parameter. trigger_offload_start() and
trigger_offload_stop().

There are also a number of PHYs which don't allow software blinking of
the LED. So for them, trigger_offload_stop() is going to return
-EOPNOTSUPP. And you need to handle that correctly.

It would be go to also document the expectations of
trigger_offload_stop(). Should it leave the LED in whatever state it
was, or force it off? 

     Andrew

  parent reply	other threads:[~2021-11-08 14:04 UTC|newest]

Thread overview: 28+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2021-11-08  0:24 [RFC PATCH v2 0/5] Adds support for PHY LEDs with offload triggers Ansuel Smith
2021-11-08  0:24 ` [RFC PATCH v2 1/5] leds: trigger: add API for HW offloading of triggers Ansuel Smith
2021-11-08  2:29   ` Randy Dunlap
2021-11-08 14:04   ` Andrew Lunn [this message]
2021-11-08 15:16     ` Ansuel Smith
2021-11-08 16:13       ` Marek Behún
2021-11-08 16:46         ` Ansuel Smith
2021-11-08 17:35           ` Marek Behún
2021-11-08 17:58             ` Ansuel Smith
2021-11-08 18:41               ` Marek Behún
2021-11-08 19:08                 ` Ansuel Smith
2021-11-08 19:17                   ` Marek Behún
2021-11-08 17:46         ` Andrew Lunn
2021-11-08 17:56           ` Marek Behún
2021-11-08 19:53             ` Andrew Lunn
2021-11-08 20:03               ` Vladimir Oltean
2021-11-08 20:11               ` Marek Behún
2021-11-08 20:15                 ` Ansuel Smith
2021-11-08 17:37       ` Andrew Lunn
2021-11-08  0:24 ` [RFC PATCH v2 2/5] leds: add function to configure offload leds Ansuel Smith
2021-11-08  2:22   ` Randy Dunlap
2021-11-08  0:24 ` [RFC PATCH v2 3/5] leds: trigger: add offload-phy-activity trigger Ansuel Smith
2021-11-08  2:24   ` Randy Dunlap
2021-11-08 14:17   ` Andrew Lunn
2021-11-08 15:19     ` Ansuel Smith
2021-11-08  0:24 ` [RFC PATCH v2 4/5] net: dsa: qca8k: add LEDs support Ansuel Smith
2021-11-08  2:26   ` Randy Dunlap
2021-11-08  0:25 ` [RFC PATCH v2 5/5] dt-bindings: net: dsa: qca8k: add LEDs definition example Ansuel Smith

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=YYkuZwQi66slgfTZ@lunn.ch \
    --to=andrew@lunn.ch \
    --cc=ansuelsmth@gmail.com \
    --cc=corbet@lwn.net \
    --cc=davem@davemloft.net \
    --cc=devicetree@vger.kernel.org \
    --cc=f.fainelli@gmail.com \
    --cc=john@phrozen.org \
    --cc=kabel@kernel.org \
    --cc=kuba@kernel.org \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=netdev@vger.kernel.org \
    --cc=olteanv@gmail.com \
    --cc=pavel@ucw.cz \
    --cc=robh+dt@kernel.org \
    --cc=vivien.didelot@gmail.com \
    /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 an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.