From: Pavel Machek <pavel-+ZI9xUNit7I@public.gmane.org> To: Jacek Anaszewski <j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> Cc: linux-leds-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org, kyungmin.park-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org, b.zolnierkie-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org, cooloney-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org, rpurdie-Fm38FmjxZ/leoWH0uzbU5w@public.gmane.org, sakari.ailus-X3B1VOXEql0@public.gmane.org, s.nawrocki-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org, Andrzej Hajda <a.hajda-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org>, Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>, Chanwoo Choi <cw00.choi-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> Subject: Re: [PATCH/RFC v10 08/19] leds: Add support for max77693 mfd flash cell Date: Fri, 9 Jan 2015 19:46:06 +0100 [thread overview] Message-ID: <20150109184606.GJ18076@amd> (raw) In-Reply-To: <1420816989-1808-9-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> On Fri 2015-01-09 16:22:58, Jacek Anaszewski wrote: > This patch adds led-flash support to Maxim max77693 chipset. > A device can be exposed to user space through LED subsystem > sysfs interface. Device supports up to two leds which can > work in flash and torch mode. The leds can be triggered > externally or by software. > > +struct max77693_sub_led { > + /* related FLED output identifier */ ->flash LED, about 4x. > +/* split composite current @i into two @iout according to @imax weights */ > +static void __max77693_calc_iout(u32 iout[2], u32 i, u32 imax[2]) > +{ > + u64 t = i; > + > + t *= imax[1]; > + do_div(t, imax[0] + imax[1]); > + > + iout[1] = (u32)t / FLASH_IOUT_STEP * FLASH_IOUT_STEP; > + iout[0] = i - iout[1]; > +} Is 64-bit arithmetics neccessary here? Could we do the FLASH_IOUT_STEP divisons before t *=, so that 64-bit division is not neccessary? > +static int max77693_led_flash_strobe_get( > + struct led_classdev_flash *fled_cdev, > + bool *state) > +{ > + struct max77693_sub_led *sub_led = flcdev_to_sub_led(fled_cdev); > + struct max77693_led_device *led = sub_led_to_led(sub_led); > + int ret; > + > + if (!state) > + return -EINVAL; > + > + mutex_lock(&led->lock); > + > + ret = max77693_strobe_status_get(led, state); > + > + *state = !!(*state && (led->strobing_sub_led_id == sub_led->fled_id)); > + > + > + mutex_unlock(&led->lock); > + > + return ret; > +} Maybe remove some empty lines? -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html -- To unsubscribe from this list: send the line "unsubscribe devicetree" in the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: Pavel Machek <pavel@ucw.cz> To: Jacek Anaszewski <j.anaszewski@samsung.com> Cc: linux-leds@vger.kernel.org, linux-media@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org, kyungmin.park@samsung.com, b.zolnierkie@samsung.com, cooloney@gmail.com, rpurdie@rpsys.net, sakari.ailus@iki.fi, s.nawrocki@samsung.com, Andrzej Hajda <a.hajda@samsung.com>, Lee Jones <lee.jones@linaro.org>, Chanwoo Choi <cw00.choi@samsung.com> Subject: Re: [PATCH/RFC v10 08/19] leds: Add support for max77693 mfd flash cell Date: Fri, 9 Jan 2015 19:46:06 +0100 [thread overview] Message-ID: <20150109184606.GJ18076@amd> (raw) In-Reply-To: <1420816989-1808-9-git-send-email-j.anaszewski@samsung.com> On Fri 2015-01-09 16:22:58, Jacek Anaszewski wrote: > This patch adds led-flash support to Maxim max77693 chipset. > A device can be exposed to user space through LED subsystem > sysfs interface. Device supports up to two leds which can > work in flash and torch mode. The leds can be triggered > externally or by software. > > +struct max77693_sub_led { > + /* related FLED output identifier */ ->flash LED, about 4x. > +/* split composite current @i into two @iout according to @imax weights */ > +static void __max77693_calc_iout(u32 iout[2], u32 i, u32 imax[2]) > +{ > + u64 t = i; > + > + t *= imax[1]; > + do_div(t, imax[0] + imax[1]); > + > + iout[1] = (u32)t / FLASH_IOUT_STEP * FLASH_IOUT_STEP; > + iout[0] = i - iout[1]; > +} Is 64-bit arithmetics neccessary here? Could we do the FLASH_IOUT_STEP divisons before t *=, so that 64-bit division is not neccessary? > +static int max77693_led_flash_strobe_get( > + struct led_classdev_flash *fled_cdev, > + bool *state) > +{ > + struct max77693_sub_led *sub_led = flcdev_to_sub_led(fled_cdev); > + struct max77693_led_device *led = sub_led_to_led(sub_led); > + int ret; > + > + if (!state) > + return -EINVAL; > + > + mutex_lock(&led->lock); > + > + ret = max77693_strobe_status_get(led, state); > + > + *state = !!(*state && (led->strobing_sub_led_id == sub_led->fled_id)); > + > + > + mutex_unlock(&led->lock); > + > + return ret; > +} Maybe remove some empty lines? -- (english) http://www.livejournal.com/~pavelmachek (cesky, pictures) http://atrey.karlin.mff.cuni.cz/~pavel/picture/horses/blog.html
next prev parent reply other threads:[~2015-01-09 18:46 UTC|newest] Thread overview: 107+ messages / expand[flat|nested] mbox.gz Atom feed top 2015-01-09 15:22 [PATCH/RFC v10 00/19] LED / flash API integration Jacek Anaszewski 2015-01-09 15:22 ` [PATCH/RFC v10 01/19] leds: Add LED Flash class extension to the LED subsystem Jacek Anaszewski 2015-01-09 17:37 ` Pavel Machek 2015-01-26 23:02 ` Bryan Wu 2015-01-09 15:22 ` [PATCH/RFC v10 02/19] Documentation: leds: Add description of LED Flash class extension Jacek Anaszewski 2015-01-09 17:40 ` Pavel Machek 2015-01-12 8:04 ` Jacek Anaszewski 2015-01-26 23:03 ` Bryan Wu 2015-01-09 15:22 ` [PATCH/RFC v10 03/19] DT: leds: Add led-sources property Jacek Anaszewski 2015-01-09 17:42 ` Pavel Machek [not found] ` <1420816989-1808-4-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-09 18:33 ` Rob Herring 2015-01-09 18:33 ` Rob Herring 2015-01-12 8:32 ` Jacek Anaszewski 2015-01-12 13:52 ` Rob Herring 2015-01-12 16:10 ` Jacek Anaszewski 2015-01-12 16:55 ` Rob Herring 2015-01-12 17:06 ` Mark Brown 2015-01-15 12:33 ` Sylwester Nawrocki 2015-01-15 14:37 ` Rob Herring 2015-01-15 21:03 ` Pavel Machek 2015-01-16 10:17 ` Sylwester Nawrocki 2015-01-16 10:17 ` Sylwester Nawrocki [not found] ` <CAL_JsqKpJtUG0G6g1GOuSVpc31oe-dp3qdrKJUE0upG-xRDFhA-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2015-01-13 8:42 ` Jacek Anaszewski 2015-01-13 8:42 ` Jacek Anaszewski 2015-01-15 14:24 ` Rob Herring 2015-01-15 15:53 ` Mark Brown 2015-01-16 9:07 ` Jacek Anaszewski 2015-01-16 13:48 ` Rob Herring [not found] ` <CAL_Jsq+EFWzs1HP1tVt6P=p=HZn2AtSPjp55YrmMQi_mE+kNfQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org> 2015-01-16 15:52 ` Jacek Anaszewski 2015-01-16 15:52 ` Jacek Anaszewski 2015-01-20 16:09 ` Jacek Anaszewski 2015-01-20 17:29 ` Rob Herring 2015-01-20 17:40 ` Pavel Machek 2015-01-21 9:39 ` Jacek Anaszewski 2015-01-28 7:04 ` Sakari Ailus 2015-01-09 15:22 ` [PATCH/RFC v10 04/19] dt-binding: mfd: max77693: Add DT binding related macros Jacek Anaszewski 2015-01-09 17:43 ` Pavel Machek 2015-01-20 11:12 ` Lee Jones 2015-01-20 12:53 ` Jacek Anaszewski 2015-01-28 8:52 ` Sakari Ailus 2015-01-09 15:22 ` [PATCH/RFC v10 05/19] mfd: max77693: Modify flash cell name identifiers Jacek Anaszewski 2015-01-09 17:53 ` Pavel Machek [not found] ` <1420816989-1808-6-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-20 11:13 ` Lee Jones 2015-01-20 11:13 ` Lee Jones 2015-01-20 12:57 ` Jacek Anaszewski 2015-01-20 12:57 ` Jacek Anaszewski 2015-01-20 15:41 ` Lee Jones 2015-01-09 15:22 ` [PATCH/RFC v10 06/19] mfd: max77693: modifications around max77693_led_platform_data Jacek Anaszewski 2015-01-09 17:56 ` Pavel Machek [not found] ` <1420816989-1808-7-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-20 11:15 ` Lee Jones 2015-01-20 11:15 ` Lee Jones 2015-01-09 15:22 ` [PATCH/RFC v10 07/19] mfd: max77693: Adjust FLASH_EN_SHIFT and TORCH_EN_SHIFT macros Jacek Anaszewski 2015-01-09 17:59 ` Pavel Machek 2015-01-20 11:17 ` Lee Jones 2015-01-20 13:01 ` Jacek Anaszewski 2015-01-20 14:11 ` Jacek Anaszewski 2015-01-20 15:40 ` Lee Jones 2015-01-20 16:00 ` Pavel Machek 2015-01-20 16:41 ` Lee Jones 2015-01-09 15:22 ` [PATCH/RFC v10 08/19] leds: Add support for max77693 mfd flash cell Jacek Anaszewski [not found] ` <1420816989-1808-9-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-09 18:46 ` Pavel Machek [this message] 2015-01-09 18:46 ` Pavel Machek 2015-01-12 8:52 ` Jacek Anaszewski 2015-01-12 13:25 ` Pavel Machek 2015-01-12 13:46 ` Jacek Anaszewski 2015-02-05 15:34 ` Sakari Ailus 2015-02-05 15:34 ` Sakari Ailus 2015-02-05 16:26 ` Jacek Anaszewski 2015-01-09 15:22 ` [PATCH/RFC v10 09/19] DT: Add documentation for the mfd Maxim max77693 Jacek Anaszewski 2015-01-09 17:52 ` Pavel Machek 2015-01-20 11:21 ` Lee Jones 2015-01-20 14:36 ` Jacek Anaszewski [not found] ` <54BE67EA.2070507-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-20 15:38 ` Lee Jones 2015-01-20 15:38 ` Lee Jones [not found] ` <1420816989-1808-1-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-09 15:23 ` [PATCH/RFC v10 10/19] leds: Add driver for AAT1290 current regulator Jacek Anaszewski 2015-01-09 15:23 ` Jacek Anaszewski [not found] ` <1420816989-1808-11-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-09 18:57 ` Pavel Machek 2015-01-09 18:57 ` Pavel Machek 2015-01-09 15:23 ` [PATCH/RFC v10 11/19] of: Add Skyworks Solutions, Inc. vendor prefix Jacek Anaszewski [not found] ` <1420816989-1808-12-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-09 18:57 ` Pavel Machek 2015-01-09 18:57 ` Pavel Machek 2015-01-09 15:23 ` [PATCH/RFC v10 12/19] DT: Add documentation for the Skyworks AAT1290 Jacek Anaszewski 2015-01-09 18:58 ` Pavel Machek 2015-01-09 15:23 ` [PATCH/RFC v10 13/19] exynos4-is: Add support for v4l2-flash subdevs Jacek Anaszewski 2015-01-09 19:06 ` Pavel Machek 2015-01-09 15:23 ` [PATCH/RFC v10 14/19] v4l2-ctrls: Add V4L2_CID_FLASH_SYNC_STROBE control Jacek Anaszewski [not found] ` <1420816989-1808-15-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-09 19:06 ` Pavel Machek 2015-01-09 19:06 ` Pavel Machek 2015-02-05 16:36 ` Sakari Ailus 2015-01-09 15:23 ` [PATCH/RFC v10 15/19] media: Add registration helpers for V4L2 flash sub-devices Jacek Anaszewski 2015-01-09 20:54 ` Pavel Machek 2015-01-12 9:46 ` Jacek Anaszewski 2015-01-12 9:46 ` Jacek Anaszewski 2015-01-12 13:27 ` Pavel Machek 2015-02-05 17:59 ` Sakari Ailus 2015-02-09 11:15 ` Jacek Anaszewski 2015-01-09 15:23 ` [PATCH/RFC v10 16/19] Documentation: leds: Add description of v4l2-flash sub-device Jacek Anaszewski 2015-01-09 20:57 ` Pavel Machek 2015-01-09 15:23 ` [PATCH/RFC v10 17/19] DT: Add documentation for exynos4-is 'flashes' property Jacek Anaszewski 2015-01-09 20:57 ` Pavel Machek 2015-01-21 16:32 ` Sylwester Nawrocki 2015-01-22 8:47 ` Jacek Anaszewski 2015-01-09 15:23 ` [PATCH/RFC v10 18/19] leds: max77693: add support for V4L2 Flash sub-device Jacek Anaszewski 2015-01-09 20:59 ` Pavel Machek 2015-01-09 15:23 ` [PATCH/RFC v10 19/19] leds: aat1290: " Jacek Anaszewski [not found] ` <1420816989-1808-20-git-send-email-j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org> 2015-01-09 20:59 ` Pavel Machek 2015-01-09 20:59 ` Pavel Machek
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=20150109184606.GJ18076@amd \ --to=pavel-+zi9xunit7i@public.gmane.org \ --cc=a.hajda-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \ --cc=b.zolnierkie-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \ --cc=cooloney-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \ --cc=cw00.choi-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \ --cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=j.anaszewski-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \ --cc=kyungmin.park-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \ --cc=lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \ --cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-leds-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=linux-media-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \ --cc=rpurdie-Fm38FmjxZ/leoWH0uzbU5w@public.gmane.org \ --cc=s.nawrocki-Sze3O3UU22JBDgjK7y7TUQ@public.gmane.org \ --cc=sakari.ailus-X3B1VOXEql0@public.gmane.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: linkBe 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.