From: Jean-Jacques Hiblot <jjhiblot@ti.com>
To: Jacek Anaszewski <jacek.anaszewski@gmail.com>, <pavel@ucw.cz>,
<robh+dt@kernel.org>, <mark.rutland@arm.com>,
<daniel.thompson@linaro.org>
Cc: <dmurphy@ti.com>, <linux-leds@vger.kernel.org>,
<linux-kernel@vger.kernel.org>, <devicetree@vger.kernel.org>
Subject: Re: [PATCH v3 2/3] leds: Add control of the voltage/current regulator to the LED core
Date: Thu, 18 Jul 2019 15:31:56 +0200 [thread overview]
Message-ID: <49152281-059c-6006-4c0f-a6be96a12707@ti.com> (raw)
In-Reply-To: <4bd3b558-ea5b-0d2e-16b2-5b2e8bb484d2@gmail.com>
On 18/07/2019 14:24, Jacek Anaszewski wrote:
> Hi Jean,
>
> Thank you for the updated patch set.
>
> I have some more comments below.
>
> On 7/17/19 3:59 PM, Jean-Jacques Hiblot wrote:
>>
>> +static bool __led_need_regulator_update(struct led_classdev *led_cdev,
>> + int brightness)
>> +{
>> + bool new_state = (brightness != LED_OFF);
> How about:
>
> bool new_state = !!brightness;
Throughout the code LED_OFF is used when the LED is turned off. I think
it would be more consistent to use it there too.
>
>> +
>> + return led_cdev->regulator && led_cdev->regulator_state != new_state;
>> +}
>> +static int __led_handle_regulator(struct led_classdev *led_cdev,
>> + int brightness)
>> +{
>> + int rc;
>> +
>> + if (__led_need_regulator_update(led_cdev, brightness)) {
>> +
>> + if (brightness != LED_OFF)
>> + rc = regulator_enable(led_cdev->regulator);
>> + else
>> + rc = regulator_disable(led_cdev->regulator);
>> + if (rc)
>> + return rc;
>> +
>> + led_cdev->regulator_state = (brightness != LED_OFF);
>> + }
>> + return 0;
>> +}
> Let's have these function names without leading underscores.
OK.
>
>> static int __led_set_brightness(struct led_classdev *led_cdev,
>> enum led_brightness value)
>> {
>> @@ -115,6 +142,8 @@ static void set_brightness_delayed(struct work_struct *ws)
>> if (ret == -ENOTSUPP)
>> ret = __led_set_brightness_blocking(led_cdev,
>> led_cdev->delayed_set_value);
>> + __led_handle_regulator(led_cdev, led_cdev->delayed_set_value)
> If you called it from __led_set_brightness() and
We cannot call it from __led_set_brightness() because it is supposed not
to block.
JJ
next prev parent reply other threads:[~2019-07-18 13:32 UTC|newest]
Thread overview: 8+ messages / expand[flat|nested] mbox.gz Atom feed top
2019-07-17 13:59 [PATCH v3 0/3] leds: Add control of the voltage/current regulator to the LED core Jean-Jacques Hiblot
2019-07-17 13:59 ` [PATCH v3 1/3] dt-bindings: leds: document the "power-supply" property Jean-Jacques Hiblot
2019-07-17 13:59 ` [PATCH v3 2/3] leds: Add control of the voltage/current regulator to the LED core Jean-Jacques Hiblot
2019-07-18 12:24 ` Jacek Anaszewski
2019-07-18 13:31 ` Jean-Jacques Hiblot [this message]
2019-07-18 17:49 ` Jacek Anaszewski
2019-09-20 12:29 ` Jean-Jacques Hiblot
2019-07-17 13:59 ` [PATCH v3 3/3] leds: Make led_set_brightness_sync() also use __led_set_brightness() Jean-Jacques Hiblot
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=49152281-059c-6006-4c0f-a6be96a12707@ti.com \
--to=jjhiblot@ti.com \
--cc=daniel.thompson@linaro.org \
--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=mark.rutland@arm.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).