All of lore.kernel.org
 help / color / mirror / Atom feed
From: Dan Murphy <dmurphy@ti.com>
To: <jacek.anaszewski@gmail.com>, <pavel@ucw.cz>
Cc: <linux-leds@vger.kernel.org>, <linux-kernel@vger.kernel.org>,
	Dan Murphy <dmurphy@ti.com>
Subject: [PATCH v21 12/16] leds: lp5523: Update the lp5523 code to add multicolor brightness function
Date: Tue, 28 Apr 2020 11:03:34 -0500	[thread overview]
Message-ID: <20200428160338.2793-13-dmurphy@ti.com> (raw)
In-Reply-To: <20200428160338.2793-1-dmurphy@ti.com>

Add the multicolor brightness call back to support the multicolor
framework.  This call back allows setting  brightness on grouped channels
in a single function.

Acked-by: Pavel Machek <pavel@ucw.cz>
Signed-off-by: Dan Murphy <dmurphy@ti.com>
---
 drivers/leds/leds-lp5523.c | 20 ++++++++++++++++++++
 1 file changed, 20 insertions(+)

diff --git a/drivers/leds/leds-lp5523.c b/drivers/leds/leds-lp5523.c
index b076c16df9ab..9776dc72a764 100644
--- a/drivers/leds/leds-lp5523.c
+++ b/drivers/leds/leds-lp5523.c
@@ -791,6 +791,25 @@ static ssize_t store_master_fader_leds(struct device *dev,
 	return ret;
 }
 
+static int lp5523_multicolor_brightness(struct lp55xx_led *led)
+{
+	struct lp55xx_chip *chip = led->chip;
+	int ret;
+	int i;
+
+	mutex_lock(&chip->lock);
+	for (i = 0; i < led->mc_cdev.num_colors; i++) {
+		ret = lp55xx_write(chip,
+				   LP5523_REG_LED_PWM_BASE +
+				   led->mc_cdev.subled_info[i].channel,
+				   led->mc_cdev.subled_info[i].brightness);
+		if (ret)
+			break;
+	}
+	mutex_unlock(&chip->lock);
+	return ret;
+}
+
 static int lp5523_led_brightness(struct lp55xx_led *led)
 {
 	struct lp55xx_chip *chip = led->chip;
@@ -857,6 +876,7 @@ static struct lp55xx_device_config lp5523_cfg = {
 	.max_channel  = LP5523_MAX_LEDS,
 	.post_init_device   = lp5523_post_init_device,
 	.brightness_fn      = lp5523_led_brightness,
+	.multicolor_brightness_fn = lp5523_multicolor_brightness,
 	.set_led_current    = lp5523_set_led_current,
 	.firmware_cb        = lp5523_firmware_loaded,
 	.run_engine         = lp5523_run_engine,
-- 
2.25.1


  parent reply	other threads:[~2020-04-28 16:10 UTC|newest]

Thread overview: 24+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2020-04-28 16:03 [PATCH v21 00/16] Multicolor Framework Dan Murphy
2020-04-28 16:03 ` [PATCH v21 01/16] dt: bindings: Add multicolor class dt bindings documention Dan Murphy
2020-04-28 20:30   ` Jacek Anaszewski
2020-04-29 12:50     ` Dan Murphy
2020-04-28 16:03 ` [PATCH v21 02/16] leds: multicolor: Introduce a multicolor class definition Dan Murphy
2020-04-28 20:48   ` Jacek Anaszewski
2020-04-28 16:03 ` [PATCH v21 03/16] dt: bindings: lp50xx: Introduce the lp50xx family of RGB drivers Dan Murphy
2020-04-28 16:03 ` [PATCH v21 04/16] leds: lp50xx: Add the LP50XX family of the RGB LED driver Dan Murphy
2020-04-28 20:25   ` Jacek Anaszewski
2020-04-29 12:50     ` Dan Murphy
2020-04-28 16:03 ` [PATCH v21 05/16] dt: bindings: lp55xx: Be consistent in the document with LED acronym Dan Murphy
2020-04-28 16:03 ` [PATCH v21 06/16] dt: bindings: lp55xx: Update binding for Multicolor Framework Dan Murphy
2020-04-28 16:03 ` [PATCH v21 07/16] ARM: dts: n900: Add reg property to the LP5523 channel node Dan Murphy
2020-04-28 16:03 ` [PATCH v21 08/16] ARM: dts: imx6dl-yapp4: Add reg property to the lp5562 " Dan Murphy
2020-04-28 16:03 ` [PATCH v21 09/16] ARM: dts: ste-href: Add reg property to the LP5521 channel nodes Dan Murphy
2020-04-28 16:03 ` [PATCH v21 10/16] leds: lp55xx: Convert LED class registration to devm_* Dan Murphy
2020-04-28 16:03 ` [PATCH v21 11/16] leds: lp55xx: Add multicolor framework support to lp55xx Dan Murphy
2020-04-28 20:59   ` Jacek Anaszewski
2020-04-29 12:49     ` Dan Murphy
2020-04-28 16:03 ` Dan Murphy [this message]
2020-04-28 16:03 ` [PATCH v21 13/16] leds: lp5521: Add multicolor framework multicolor brightness support Dan Murphy
2020-04-28 16:03 ` [PATCH v21 14/16] leds: lp55xx: Fix checkpatch file permissions issues Dan Murphy
2020-04-28 16:03 ` [PATCH v21 15/16] leds: lp5523: Fix checkpatch issues in the code Dan Murphy
2020-04-28 16:03 ` [PATCH v21 16/16] dt: bindings: Update lp55xx binding to recommended LED naming Dan Murphy

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=20200428160338.2793-13-dmurphy@ti.com \
    --to=dmurphy@ti.com \
    --cc=jacek.anaszewski@gmail.com \
    --cc=linux-kernel@vger.kernel.org \
    --cc=linux-leds@vger.kernel.org \
    --cc=pavel@ucw.cz \
    /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.