All of lore.kernel.org
 help / color / mirror / Atom feed
From: David Lin <dtwlin@google.com>
To: corbet@lwn.net, rpurdie@rpsys.net, jacek.anaszewski@gmail.com,
	pavel@ucw.cz, hdegoede@redhat.com, gregkh@linuxfoundation.org
Cc: robh@kernel.org, romlem@google.com, linux-doc@vger.kernel.org,
	linux-kernel@vger.kernel.org, linux-leds@vger.kernel.org,
	David Lin <dtwlin@google.com>
Subject: [PATCH v2 2/3] leds: Add the LED_BRIGHTNESS_FAST flag
Date: Wed, 13 Sep 2017 10:53:59 -0700	[thread overview]
Message-ID: <20170913175400.42744-3-dtwlin@google.com> (raw)
In-Reply-To: <20170913175400.42744-1-dtwlin@google.com>

This patch adds the LED_BRIGHTNESS_FAST flag to allow the driver to
indicate that the brightness_set() callback is implemented on a fastpath
so that the LED core may choose to for example use a hrtimer to
implement the duration of a trigger for better timing accuracy.

Suggested-by: Jacek Anaszewski <jacek.anaszewski@gmail.com>
Signed-off-by: David Lin <dtwlin@google.com>
---
 Documentation/leds/leds-class.txt | 5 +++++
 include/linux/leds.h              | 1 +
 2 files changed, 6 insertions(+)

diff --git a/Documentation/leds/leds-class.txt b/Documentation/leds/leds-class.txt
index 836cb16d6f09..70d7a3dca621 100644
--- a/Documentation/leds/leds-class.txt
+++ b/Documentation/leds/leds-class.txt
@@ -80,6 +80,11 @@ flag must be set in flags before registering. Calling
 led_classdev_notify_brightness_hw_changed on a classdev not registered with
 the LED_BRIGHT_HW_CHANGED flag is a bug and will trigger a WARN_ON.
 
+Optionally, the driver may choose to register with the LED_BRIGHTNESS_FAST flag.
+This flag indicates that the driver implements the brightness_set() callback
+function using a fastpath so the LED core can use hrtimer if the driver requires
+high precision for the trigger timing.
+
 Hardware accelerated blink of LEDs
 ==================================
 
diff --git a/include/linux/leds.h b/include/linux/leds.h
index 5579c64c8fd6..ccfa0a1799fe 100644
--- a/include/linux/leds.h
+++ b/include/linux/leds.h
@@ -50,6 +50,7 @@ struct led_classdev {
 #define LED_PANIC_INDICATOR	BIT(20)
 #define LED_BRIGHT_HW_CHANGED	BIT(21)
 #define LED_RETAIN_AT_SHUTDOWN	BIT(22)
+#define LED_BRIGHTNESS_FAST	BIT(23)
 
 	/* set_brightness_work / blink_timer flags, atomic, private. */
 	unsigned long		work_flags;
-- 
2.14.1.581.gf28d330327-goog

  parent reply	other threads:[~2017-09-13 17:54 UTC|newest]

Thread overview: 42+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2017-09-13 17:53 [PATCH v2 0/3] led: ledtrig-transient: add support for hrtimer David Lin
2017-09-13 17:53 ` [PATCH v2 1/3] leds: Replace flags bit shift with BIT() macros David Lin
2017-09-14 19:43   ` Jacek Anaszewski
2017-09-13 17:53 ` David Lin [this message]
2017-09-13 17:54 ` [PATCH v2 3/3] led: ledtrig-transient: add support for hrtimer David Lin
2017-09-13 20:20 ` [PATCH v2 0/3] " Pavel Machek
2017-09-13 21:20   ` David Lin
2017-09-13 21:34     ` Pavel Machek
2017-09-14 17:31       ` David Lin
2017-09-14 19:42         ` Pavel Machek
2017-09-14 19:31   ` Jacek Anaszewski
2017-09-14 19:38     ` David Lin
2017-09-14 20:03       ` Jacek Anaszewski
2017-09-14 20:58     ` Vibrations in input vs. LED was " Pavel Machek
2017-09-15 18:34       ` Dmitry Torokhov
2017-09-15 21:55         ` Jacek Anaszewski
2017-09-15 22:30           ` Dmitry Torokhov
2017-09-17 16:41             ` Jacek Anaszewski
2017-09-17 18:22               ` Pavel Machek
2017-09-17 21:15                 ` Pavel Machek
2017-09-18 20:50                 ` Jacek Anaszewski
2017-09-18 22:29                   ` Dmitry Torokhov
2017-09-19 20:45                     ` Jacek Anaszewski
2017-09-19 21:07                       ` Dmitry Torokhov
2017-09-20 19:31                         ` Jacek Anaszewski
2017-09-20 11:29                       ` Pavel Machek
2017-09-20 20:08                         ` Jacek Anaszewski
2017-10-06 11:48                           ` Pavel Machek
2017-10-06 20:57                             ` Jacek Anaszewski
2017-09-20 11:26                   ` Pavel Machek
2017-09-28  5:03             ` David Lin
2017-09-28  5:43               ` Dmitry Torokhov
2017-09-28 19:22                 ` David Lin
2017-10-05  0:40                   ` Dmitry Torokhov
2017-09-16 12:59           ` Pavel Machek
2017-09-15 21:55       ` Jacek Anaszewski
2017-09-16  1:58         ` Pavel Machek
2017-09-17 16:41           ` Jacek Anaszewski
2017-09-17 17:50             ` Pavel Machek
2017-09-18 20:43               ` Jacek Anaszewski
2017-09-20 11:15                 ` Pavel Machek
2017-09-20 18:44                   ` 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=20170913175400.42744-3-dtwlin@google.com \
    --to=dtwlin@google.com \
    --cc=corbet@lwn.net \
    --cc=gregkh@linuxfoundation.org \
    --cc=hdegoede@redhat.com \
    --cc=jacek.anaszewski@gmail.com \
    --cc=linux-doc@vger.kernel.org \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=pavel@ucw.cz \
    --cc=robh@kernel.org \
    --cc=romlem@google.com \
    --cc=rpurdie@rpsys.net \
    /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.