From: Pavel Machek <pavel@ucw.cz>
To: Sakari Ailus <sakari.ailus@linux.intel.com>
Cc: linux-media@vger.kernel.org, linux-leds@vger.kernel.org,
devicetree@vger.kernel.org, sebastian.reichel@collabora.co.uk,
robh@kernel.org, Sakari Ailus <sakari.ailus@iki.fi>
Subject: Re: [PATCH 6/8] leds: as3645a: Add LED flash class driver
Date: Wed, 14 Jun 2017 23:39:41 +0200 [thread overview]
Message-ID: <20170614213941.GC10200@amd> (raw)
In-Reply-To: <1497433639-13101-7-git-send-email-sakari.ailus@linux.intel.com>
[-- Attachment #1: Type: text/plain, Size: 2173 bytes --]
Hi!
> From: Sakari Ailus <sakari.ailus@iki.fi>
That address no longer works, right?
> Add a LED flash class driver for the as3654a flash controller. A V4L2 flash
> driver for it already exists (drivers/media/i2c/as3645a.c), and this driver
> is based on that.
>
> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
> + * Based on drivers/media/i2c/as3645a.c.
> + *
> + * Contact: Sakari Ailus <sakari.ailus@iki.fi>
So I believe it should not be here.
> +/*
> + * as3645a_set_config - Set flash configuration registers
> + * @flash: The flash
> + *
/** for linuxdoc?
> + struct as3645a *flash = fled_to_as3645a(fled);
> + int rval;
> +
> + /* NOTE: reading register clear fault status */
clears.
> +static unsigned int as3645a_current_to_reg(struct as3645a *flash, bool is_flash,
> + unsigned int ua)
> +{
> + struct {
> + unsigned int min;
> + unsigned int max;
> + unsigned int step;
> + } __mms[] = {
> + {
> + AS_TORCH_INTENSITY_MIN,
> + flash->cfg.assist_max_ua,
> + AS_TORCH_INTENSITY_STEP
> + },
> + {
> + AS_FLASH_INTENSITY_MIN,
> + flash->cfg.flash_max_ua,
> + AS_FLASH_INTENSITY_STEP
> + },
> + }, *mms = &__mms[is_flash];
> +
> + if (ua < mms->min)
> + ua = mms->min;
That's some... seriously interesting code. And you are forcing gcc to
create quite interesting structure on stack. Would it be easier to do
normal if()... without this magic?
> + struct v4l2_flash_config cfg = {
> + .torch_intensity = {
> + .min = AS_TORCH_INTENSITY_MIN,
> + .max = flash->cfg.assist_max_ua,
> + .step = AS_TORCH_INTENSITY_STEP,
> + .val = flash->cfg.assist_max_ua,
> + },
> + .indicator_intensity = {
> + .min = AS_INDICATOR_INTENSITY_MIN,
> + .max = flash->cfg.indicator_max_ua,
> + .step = AS_INDICATOR_INTENSITY_STEP,
> + .val = flash->cfg.indicator_max_ua,
> + },
> + };
Ugh. And here you have copy of the above struct, + .val. Can it be
somehow de-duplicated?
Thanks,
Pavel
--
(english) http://www.livejournal.com/~pavelmachek
(cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
[-- Attachment #2: Digital signature --]
[-- Type: application/pgp-signature, Size: 181 bytes --]
next prev parent reply other threads:[~2017-06-14 21:39 UTC|newest]
Thread overview: 66+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-14 9:47 [PATCH 0/8] Support registering lens, flash and EEPROM devices Sakari Ailus
2017-06-14 9:47 ` [PATCH 1/8] dt: bindings: Add a binding for flash devices associated to a sensor Sakari Ailus
2017-06-14 15:19 ` Rob Herring
[not found] ` <1497433639-13101-2-git-send-email-sakari.ailus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-06-15 9:11 ` Pavel Machek
2017-06-15 9:11 ` Pavel Machek
2017-06-15 9:21 ` Sebastian Reichel
2017-06-14 9:47 ` [PATCH 2/8] dt: bindings: Add lens-focus binding for image sensors Sakari Ailus
2017-06-14 15:20 ` Rob Herring
2017-06-14 9:47 ` [PATCH 3/8] dt: bindings: Add a binding for referencing EEPROM from camera sensors Sakari Ailus
2017-06-18 14:05 ` Rob Herring
[not found] ` <1497433639-13101-4-git-send-email-sakari.ailus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-07-19 7:52 ` Maxime Ripard
2017-07-19 7:52 ` Maxime Ripard
2017-07-19 9:21 ` Sakari Ailus
2017-07-19 11:18 ` Maxime Ripard
2017-07-21 11:14 ` Sakari Ailus
2017-07-21 11:14 ` Sakari Ailus
[not found] ` <1497433639-13101-1-git-send-email-sakari.ailus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-06-14 9:47 ` [PATCH 4/8] v4l2-flash: Use led_classdev instead of led_classdev_flash for indicator Sakari Ailus
2017-06-14 9:47 ` Sakari Ailus
2017-06-14 21:13 ` Jacek Anaszewski
2017-06-15 6:31 ` kbuild test robot
2017-06-15 10:45 ` Sebastian Reichel
2017-06-14 9:47 ` [PATCH 5/8] v4l2-flash: Flash ops aren't mandatory Sakari Ailus
2017-06-14 9:47 ` Sakari Ailus
2017-06-14 21:14 ` Jacek Anaszewski
[not found] ` <3e0a8823-a8b4-3f78-25e0-22d8cb8ad090-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2017-06-14 21:19 ` Sakari Ailus
2017-06-14 21:19 ` Sakari Ailus
[not found] ` <20170614211939.GR12407-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-06-15 12:08 ` Jacek Anaszewski
2017-06-15 12:08 ` Jacek Anaszewski
2017-06-15 9:24 ` Sebastian Reichel
2017-06-15 12:32 ` Sakari Ailus
2017-06-15 12:32 ` Sakari Ailus
[not found] ` <20170615123209.GD12407-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-06-15 12:51 ` Sebastian Reichel
2017-06-15 12:51 ` Sebastian Reichel
2017-07-18 17:36 ` [PATCH v1.1 1/1] " Sakari Ailus
2017-07-19 11:53 ` Pavel Machek
2017-06-14 9:47 ` [PATCH 6/8] leds: as3645a: Add LED flash class driver Sakari Ailus
2017-06-14 9:47 ` Sakari Ailus
2017-06-14 21:15 ` Jacek Anaszewski
2017-06-14 22:10 ` Sakari Ailus
[not found] ` <20170614221028.GS12407-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-06-15 13:01 ` Jacek Anaszewski
2017-06-15 13:01 ` Jacek Anaszewski
2017-06-15 13:34 ` Sakari Ailus
[not found] ` <20170615133404.GF12407-S+BSfZ9RZZmRSg0ZkenSGLdO1Tsj/99ntUK59QYPAWc@public.gmane.org>
2017-06-15 13:47 ` Jacek Anaszewski
2017-06-15 13:47 ` Jacek Anaszewski
2017-06-14 21:39 ` Pavel Machek [this message]
2017-06-14 22:21 ` Sakari Ailus
2017-06-14 22:28 ` Pavel Machek
2017-06-14 22:43 ` Sakari Ailus
2017-06-15 10:43 ` Pavel Machek
2017-06-14 9:47 ` [PATCH 7/8] smiapp: Add support for flash, lens and EEPROM devices Sakari Ailus
2017-06-15 1:50 ` kbuild test robot
2017-06-16 12:07 ` Pavel Machek
2017-06-16 12:26 ` Sakari Ailus
[not found] ` <20170616122629.GL15419-z7MJbOB4PBP+e+fPlCVrcFDQ4js95KgL@public.gmane.org>
2017-06-16 13:10 ` Pavel Machek
2017-06-16 13:10 ` Pavel Machek
2017-06-16 12:42 ` Pavel Machek
2017-06-16 12:45 ` Sakari Ailus
[not found] ` <20170616124526.GM15419-z7MJbOB4PBP+e+fPlCVrcFDQ4js95KgL@public.gmane.org>
2017-06-17 9:19 ` Pavel Machek
2017-06-17 9:19 ` Pavel Machek
2017-06-17 12:59 ` Pavel Machek
2017-06-17 21:12 ` Pavel Machek
[not found] ` <1497433639-13101-8-git-send-email-sakari.ailus-VuQAYsv1563Yd54FQh9/CA@public.gmane.org>
2017-06-17 12:17 ` Pavel Machek
2017-06-17 12:17 ` Pavel Machek
2017-06-14 9:47 ` [PATCH 8/8] arm: dts: omap3: N9/N950: Add AS3645A camera flash Sakari Ailus
2017-06-15 10:15 ` Sebastian Reichel
2017-06-14 9:53 ` [PATCH 0/8] Support registering lens, flash and EEPROM devices Sakari Ailus
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=20170614213941.GC10200@amd \
--to=pavel@ucw.cz \
--cc=devicetree@vger.kernel.org \
--cc=linux-leds@vger.kernel.org \
--cc=linux-media@vger.kernel.org \
--cc=robh@kernel.org \
--cc=sakari.ailus@iki.fi \
--cc=sakari.ailus@linux.intel.com \
--cc=sebastian.reichel@collabora.co.uk \
/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.