* [PATCH v2 12/12] media: flash: use led_set_brightness_sync for torch brightness
[not found] <1443445641-9529-1-git-send-email-j.anaszewski@samsung.com>
@ 2015-09-28 13:07 ` Jacek Anaszewski
2015-09-28 20:37 ` Pavel Machek
0 siblings, 1 reply; 4+ messages in thread
From: Jacek Anaszewski @ 2015-09-28 13:07 UTC (permalink / raw)
To: linux-leds
Cc: linux-kernel, sakari.ailus, andrew, rpurdie, Jacek Anaszewski,
Pavel Machek, linux-media
LED subsystem shifted responsibility for choosing between SYNC or ASYNC
way of setting brightness from drivers to the caller. Adapt the wrapper
to those changes.
Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
Cc: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: Pavel Machek <pavel@ucw.cz>
Cc: linux-media@vger.kernel.org
---
drivers/media/v4l2-core/v4l2-flash-led-class.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/drivers/media/v4l2-core/v4l2-flash-led-class.c b/drivers/media/v4l2-core/v4l2-flash-led-class.c
index 5bdfb8d..5d67335 100644
--- a/drivers/media/v4l2-core/v4l2-flash-led-class.c
+++ b/drivers/media/v4l2-core/v4l2-flash-led-class.c
@@ -107,10 +107,10 @@ static void v4l2_flash_set_led_brightness(struct v4l2_flash *v4l2_flash,
if (ctrls[LED_MODE]->val != V4L2_FLASH_LED_MODE_TORCH)
return;
- led_set_brightness(&v4l2_flash->fled_cdev->led_cdev,
+ led_set_brightness_sync(&v4l2_flash->fled_cdev->led_cdev,
brightness);
} else {
- led_set_brightness(&v4l2_flash->iled_cdev->led_cdev,
+ led_set_brightness_sync(&v4l2_flash->iled_cdev->led_cdev,
brightness);
}
}
@@ -206,11 +206,11 @@ static int v4l2_flash_s_ctrl(struct v4l2_ctrl *c)
case V4L2_CID_FLASH_LED_MODE:
switch (c->val) {
case V4L2_FLASH_LED_MODE_NONE:
- led_set_brightness(led_cdev, LED_OFF);
+ led_set_brightness_sync(led_cdev, LED_OFF);
return led_set_flash_strobe(fled_cdev, false);
case V4L2_FLASH_LED_MODE_FLASH:
/* Turn the torch LED off */
- led_set_brightness(led_cdev, LED_OFF);
+ led_set_brightness_sync(led_cdev, LED_OFF);
if (ctrls[STROBE_SOURCE]) {
external_strobe = (ctrls[STROBE_SOURCE]->val ==
V4L2_FLASH_STROBE_SOURCE_EXTERNAL);
--
1.7.9.5
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH v2 12/12] media: flash: use led_set_brightness_sync for torch brightness
2015-09-28 13:07 ` [PATCH v2 12/12] media: flash: use led_set_brightness_sync for torch brightness Jacek Anaszewski
@ 2015-09-28 20:37 ` Pavel Machek
2015-09-29 7:26 ` Jacek Anaszewski
0 siblings, 1 reply; 4+ messages in thread
From: Pavel Machek @ 2015-09-28 20:37 UTC (permalink / raw)
To: Jacek Anaszewski
Cc: linux-leds, linux-kernel, sakari.ailus, andrew, rpurdie, linux-media
On Mon 2015-09-28 15:07:21, Jacek Anaszewski wrote:
> LED subsystem shifted responsibility for choosing between SYNC or ASYNC
> way of setting brightness from drivers to the caller. Adapt the wrapper
> to those changes.
Umm. Maybe right patch, but wrong position in the queue, no?
If I understand changelog correctly, LED flashes will be subtly broken
before this patch is applied.
I guess this patch should be moved sooner so everything works at each
position in bisect...?
Best regards,
Pavel
> Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
> Cc: Sakari Ailus <sakari.ailus@linux.intel.com>
> Cc: Pavel Machek <pavel@ucw.cz>
> Cc: linux-media@vger.kernel.org
> ---
> drivers/media/v4l2-core/v4l2-flash-led-class.c | 8 ++++----
> 1 file changed, 4 insertions(+), 4 deletions(-)
>
> diff --git a/drivers/media/v4l2-core/v4l2-flash-led-class.c b/drivers/media/v4l2-core/v4l2-flash-led-class.c
> index 5bdfb8d..5d67335 100644
> --- a/drivers/media/v4l2-core/v4l2-flash-led-class.c
> +++ b/drivers/media/v4l2-core/v4l2-flash-led-class.c
> @@ -107,10 +107,10 @@ static void v4l2_flash_set_led_brightness(struct v4l2_flash *v4l2_flash,
> if (ctrls[LED_MODE]->val != V4L2_FLASH_LED_MODE_TORCH)
> return;
>
> - led_set_brightness(&v4l2_flash->fled_cdev->led_cdev,
> + led_set_brightness_sync(&v4l2_flash->fled_cdev->led_cdev,
> brightness);
> } else {
> - led_set_brightness(&v4l2_flash->iled_cdev->led_cdev,
> + led_set_brightness_sync(&v4l2_flash->iled_cdev->led_cdev,
> brightness);
> }
> }
> @@ -206,11 +206,11 @@ static int v4l2_flash_s_ctrl(struct v4l2_ctrl *c)
> case V4L2_CID_FLASH_LED_MODE:
> switch (c->val) {
> case V4L2_FLASH_LED_MODE_NONE:
> - led_set_brightness(led_cdev, LED_OFF);
> + led_set_brightness_sync(led_cdev, LED_OFF);
> return led_set_flash_strobe(fled_cdev, false);
> case V4L2_FLASH_LED_MODE_FLASH:
> /* Turn the torch LED off */
> - led_set_brightness(led_cdev, LED_OFF);
> + led_set_brightness_sync(led_cdev, LED_OFF);
> if (ctrls[STROBE_SOURCE]) {
> external_strobe = (ctrls[STROBE_SOURCE]->val ==
> V4L2_FLASH_STROBE_SOURCE_EXTERNAL);
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2 12/12] media: flash: use led_set_brightness_sync for torch brightness
2015-09-28 20:37 ` Pavel Machek
@ 2015-09-29 7:26 ` Jacek Anaszewski
2015-09-29 9:39 ` Pavel Machek
0 siblings, 1 reply; 4+ messages in thread
From: Jacek Anaszewski @ 2015-09-29 7:26 UTC (permalink / raw)
To: Pavel Machek
Cc: linux-leds, linux-kernel, sakari.ailus, andrew, rpurdie, linux-media
Hi Pavel,
Thanks for the review.
On 09/28/2015 10:37 PM, Pavel Machek wrote:
> On Mon 2015-09-28 15:07:21, Jacek Anaszewski wrote:
>> LED subsystem shifted responsibility for choosing between SYNC or ASYNC
>> way of setting brightness from drivers to the caller. Adapt the wrapper
>> to those changes.
>
> Umm. Maybe right patch, but wrong position in the queue, no?
>
> If I understand changelog correctly, LED flashes will be subtly broken
> before this patch is applied.
>
> I guess this patch should be moved sooner so everything works at each
> position in bisect...?
Moving it wouldn't improve anything. It would have to be merged with
patch 7/12 [1]. However, as you mentioned, LED flashes before this
patch will be broken only subtly, i.e. torch brightness will be set
from a work queue task and not synchronously. It would be barely
noticeable. Nonetheless, I can merge the patches in the next
version of the patch set.
[1] https://lkml.org/lkml/2015/9/28/322
> Best regards,
> Pavel
>
>> Signed-off-by: Jacek Anaszewski <j.anaszewski@samsung.com>
>> Cc: Sakari Ailus <sakari.ailus@linux.intel.com>
>> Cc: Pavel Machek <pavel@ucw.cz>
>> Cc: linux-media@vger.kernel.org
>> ---
>> drivers/media/v4l2-core/v4l2-flash-led-class.c | 8 ++++----
>> 1 file changed, 4 insertions(+), 4 deletions(-)
>>
>> diff --git a/drivers/media/v4l2-core/v4l2-flash-led-class.c b/drivers/media/v4l2-core/v4l2-flash-led-class.c
>> index 5bdfb8d..5d67335 100644
>> --- a/drivers/media/v4l2-core/v4l2-flash-led-class.c
>> +++ b/drivers/media/v4l2-core/v4l2-flash-led-class.c
>> @@ -107,10 +107,10 @@ static void v4l2_flash_set_led_brightness(struct v4l2_flash *v4l2_flash,
>> if (ctrls[LED_MODE]->val != V4L2_FLASH_LED_MODE_TORCH)
>> return;
>>
>> - led_set_brightness(&v4l2_flash->fled_cdev->led_cdev,
>> + led_set_brightness_sync(&v4l2_flash->fled_cdev->led_cdev,
>> brightness);
>> } else {
>> - led_set_brightness(&v4l2_flash->iled_cdev->led_cdev,
>> + led_set_brightness_sync(&v4l2_flash->iled_cdev->led_cdev,
>> brightness);
>> }
>> }
>> @@ -206,11 +206,11 @@ static int v4l2_flash_s_ctrl(struct v4l2_ctrl *c)
>> case V4L2_CID_FLASH_LED_MODE:
>> switch (c->val) {
>> case V4L2_FLASH_LED_MODE_NONE:
>> - led_set_brightness(led_cdev, LED_OFF);
>> + led_set_brightness_sync(led_cdev, LED_OFF);
>> return led_set_flash_strobe(fled_cdev, false);
>> case V4L2_FLASH_LED_MODE_FLASH:
>> /* Turn the torch LED off */
>> - led_set_brightness(led_cdev, LED_OFF);
>> + led_set_brightness_sync(led_cdev, LED_OFF);
>> if (ctrls[STROBE_SOURCE]) {
>> external_strobe = (ctrls[STROBE_SOURCE]->val ==
>> V4L2_FLASH_STROBE_SOURCE_EXTERNAL);
>
--
Best Regards,
Jacek Anaszewski
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH v2 12/12] media: flash: use led_set_brightness_sync for torch brightness
2015-09-29 7:26 ` Jacek Anaszewski
@ 2015-09-29 9:39 ` Pavel Machek
0 siblings, 0 replies; 4+ messages in thread
From: Pavel Machek @ 2015-09-29 9:39 UTC (permalink / raw)
To: Jacek Anaszewski
Cc: linux-leds, linux-kernel, sakari.ailus, andrew, rpurdie, linux-media
On Tue 2015-09-29 09:26:27, Jacek Anaszewski wrote:
> Hi Pavel,
>
> Thanks for the review.
>
> On 09/28/2015 10:37 PM, Pavel Machek wrote:
> >On Mon 2015-09-28 15:07:21, Jacek Anaszewski wrote:
> >>LED subsystem shifted responsibility for choosing between SYNC or ASYNC
> >>way of setting brightness from drivers to the caller. Adapt the wrapper
> >>to those changes.
> >
> >Umm. Maybe right patch, but wrong position in the queue, no?
> >
> >If I understand changelog correctly, LED flashes will be subtly broken
> >before this patch is applied.
> >
> >I guess this patch should be moved sooner so everything works at each
> >position in bisect...?
>
> Moving it wouldn't improve anything. It would have to be merged with
> patch 7/12 [1]. However, as you mentioned, LED flashes before this
> patch will be broken only subtly, i.e. torch brightness will be set
> from a work queue task and not synchronously. It would be barely
> noticeable. Nonetheless, I can merge the patches in the next
> version of the patch set.
Ok, flash firing a tiny bit later is probably not huge problem. I
guess it is best to leave the patches as is.
Best regards,
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2015-09-29 9:39 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
[not found] <1443445641-9529-1-git-send-email-j.anaszewski@samsung.com>
2015-09-28 13:07 ` [PATCH v2 12/12] media: flash: use led_set_brightness_sync for torch brightness Jacek Anaszewski
2015-09-28 20:37 ` Pavel Machek
2015-09-29 7:26 ` Jacek Anaszewski
2015-09-29 9:39 ` Pavel Machek
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).