From: Jonathan Cameron <jic23-KWPb1pKIrIJaa/9Udqfwiw@public.gmane.org>
To: Samu Onkalo <samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
Cc: eric.piel-VkQ1JFuSMpfAbQlEx87xDw@public.gmane.org,
khali-PUYAD+kWke1g9hUCZPvPmw@public.gmane.org,
guenter.roeck-IzeFyvvaP7pWk0Htik3J/w@public.gmane.org,
lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org,
linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
Subject: Re: [PATCH 07/12] hwmon: lis3: New parameters to platform data
Date: Fri, 22 Oct 2010 17:17:19 +0100 [thread overview]
Message-ID: <4CC1B90F.6070507@cam.ac.uk> (raw)
In-Reply-To: <1287748654-2626-8-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
On 10/22/10 12:57, Samu Onkalo wrote:
> Added default output data rate setting to platform data.
> If default rate is 0, reset default value is used.
> Added control for duration via platform data.
> Added possibility to configure interrupts to trig on
> both rising and falling edge. The lis3 WU unit can be
> configured quite many ways and with some configurations it
> is quite handy to get coordinate refresh when some
> event trigs and when it reason goes away.
Per patch description of what changed would have made reviewing
easier (for lazy people like me ;)
>
> Signed-off-by: Samu Onkalo <samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
Acked-by: Jonathan Cameron <jic23-KWPb1pKIrIJaa/9Udqfwiw@public.gmane.org>
> ---
> drivers/hwmon/lis3lv02d.c | 21 ++++++++++++++-------
> include/linux/lis3lv02d.h | 6 +++++-
> 2 files changed, 19 insertions(+), 8 deletions(-)
>
> diff --git a/drivers/hwmon/lis3lv02d.c b/drivers/hwmon/lis3lv02d.c
> index b44d4c5..d66cbe1 100644
> --- a/drivers/hwmon/lis3lv02d.c
> +++ b/drivers/hwmon/lis3lv02d.c
> @@ -706,16 +706,16 @@ static void lis3lv02d_8b_configure(struct lis3lv02d *dev,
> if (p->wakeup_flags) {
> dev->write(dev, FF_WU_CFG_1, p->wakeup_flags);
> dev->write(dev, FF_WU_THS_1, p->wakeup_thresh & 0x7f);
> - /* default to 2.5ms for now */
> - dev->write(dev, FF_WU_DURATION_1, 1);
> + /* pdata value + 1 to keep this backward compatible*/
> + dev->write(dev, FF_WU_DURATION_1, p->duration1 + 1);
> ctrl2 ^= HP_FF_WU1; /* Xor to keep compatible with old pdata*/
> }
>
> if (p->wakeup_flags2) {
> dev->write(dev, FF_WU_CFG_2, p->wakeup_flags2);
> dev->write(dev, FF_WU_THS_2, p->wakeup_thresh2 & 0x7f);
> - /* default to 2.5ms for now */
> - dev->write(dev, FF_WU_DURATION_2, 1);
> + /* pdata value + 1 to keep this backward compatible*/
> + dev->write(dev, FF_WU_DURATION_2, p->duration2 + 1);
> ctrl2 ^= HP_FF_WU2; /* Xor to keep compatible with old pdata*/
> }
> /* Configure hipass filters */
> @@ -725,8 +725,8 @@ static void lis3lv02d_8b_configure(struct lis3lv02d *dev,
> err = request_threaded_irq(p->irq2,
> NULL,
> lis302dl_interrupt_thread2_8b,
> - IRQF_TRIGGER_RISING |
> - IRQF_ONESHOT,
> + IRQF_TRIGGER_RISING | IRQF_ONESHOT |
> + (p->irq_flags2 & IRQF_TRIGGER_MASK),
> DRIVER_NAME, &lis3_dev);
> if (err < 0)
> printk(KERN_ERR DRIVER_NAME
> @@ -742,6 +742,7 @@ int lis3lv02d_init_device(struct lis3lv02d *dev)
> {
> int err;
> irq_handler_t thread_fn;
> + int irq_flags = 0;
>
> dev->whoami = lis3lv02d_read_8(dev, WHO_AM_I);
>
> @@ -804,9 +805,14 @@ int lis3lv02d_init_device(struct lis3lv02d *dev)
> if (dev->whoami == WAI_8B)
> lis3lv02d_8b_configure(dev, p);
>
> + irq_flags = p->irq_flags1 & IRQF_TRIGGER_MASK;
> +
> dev->irq_cfg = p->irq_cfg;
> if (p->irq_cfg)
> dev->write(dev, CTRL_REG3, p->irq_cfg);
> +
> + if (p->default_rate)
> + lis3lv02d_set_odr(p->default_rate);
> }
>
> /* bail if we did not get an IRQ from the bus layer */
> @@ -834,7 +840,8 @@ int lis3lv02d_init_device(struct lis3lv02d *dev)
>
> err = request_threaded_irq(dev->irq, lis302dl_interrupt,
> thread_fn,
> - IRQF_TRIGGER_RISING | IRQF_ONESHOT,
> + IRQF_TRIGGER_RISING | IRQF_ONESHOT |
> + irq_flags,
> DRIVER_NAME, &lis3_dev);
>
> if (err < 0) {
> diff --git a/include/linux/lis3lv02d.h b/include/linux/lis3lv02d.h
> index c4a4a52..18d578f 100644
> --- a/include/linux/lis3lv02d.h
> +++ b/include/linux/lis3lv02d.h
> @@ -36,7 +36,10 @@ struct lis3lv02d_platform_data {
> #define LIS3_IRQ_OPEN_DRAIN (1 << 6)
> #define LIS3_IRQ_ACTIVE_LOW (1 << 7)
> unsigned char irq_cfg;
> -
> + unsigned char irq_flags1; /* Additional irq edge / level flags */
> + unsigned char irq_flags2; /* Additional irq edge / level flags */
> + unsigned char duration1;
> + unsigned char duration2;
> #define LIS3_WAKEUP_X_LO (1 << 0)
> #define LIS3_WAKEUP_X_HI (1 << 1)
> #define LIS3_WAKEUP_Y_LO (1 << 2)
> @@ -66,6 +69,7 @@ struct lis3lv02d_platform_data {
> s8 axis_z;
> #define LIS3_USE_REGULATOR_CTRL 0x01
> u16 driver_features;
> + int default_rate;
> int (*setup_resources)(void);
> int (*release_resources)(void);
> /* Limits for selftest are specified in chip data sheet */
next prev parent reply other threads:[~2010-10-22 16:17 UTC|newest]
Thread overview: 39+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-10-22 11:57 [PATCH 00/12] lis3 accelerator feature update Samu Onkalo
[not found] ` <1287748654-2626-1-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-22 11:57 ` [PATCH 01/12] hwmon: lis3: pm_runtime support Samu Onkalo
[not found] ` <1287748654-2626-2-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-22 16:13 ` Jonathan Cameron
2010-10-24 14:03 ` Éric Piel
2010-10-22 11:57 ` [PATCH 02/12] hwmon: lis3: regulator control Samu Onkalo
[not found] ` <1287748654-2626-3-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-22 16:11 ` Jonathan Cameron
2010-10-24 14:59 ` Éric Piel
2010-10-22 11:57 ` [PATCH 06/12] hwmon: lis3: restore axis enabled bits Samu Onkalo
2010-10-24 14:24 ` Éric Piel
2010-10-22 11:57 ` [PATCH 11/12] hwmon: lis3: Short explanations of platform data fields Samu Onkalo
[not found] ` <1287748654-2626-12-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-22 16:25 ` Jonathan Cameron
[not found] ` <4CC1BAEE.3030708-KWPb1pKIrIJaa/9Udqfwiw@public.gmane.org>
2010-10-23 13:39 ` [PATCHv2] " Samu Onkalo
[not found] ` <1287841184-4871-1-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-24 14:59 ` Éric Piel
2010-10-22 20:08 ` [PATCH 00/12] lis3 accelerator feature update Guenter Roeck
2010-10-22 23:44 ` Éric Piel
[not found] ` <4CC221F0.5040608-VkQ1JFuSMpfAbQlEx87xDw@public.gmane.org>
2010-10-23 1:05 ` Guenter Roeck
2010-10-24 15:05 ` Éric Piel
[not found] ` <4CC44B3D.5030404-VkQ1JFuSMpfAbQlEx87xDw@public.gmane.org>
2010-10-24 15:35 ` Guenter Roeck
[not found] ` <20101024153548.GA14303-IzeFyvvaP7pWk0Htik3J/w@public.gmane.org>
2010-10-24 16:35 ` [lm-sensors] " Guenter Roeck
[not found] ` <20101024163529.GA14650-IzeFyvvaP7pWk0Htik3J/w@public.gmane.org>
2010-10-24 17:01 ` Guenter Roeck
2010-10-25 6:10 ` samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w
2010-10-22 11:57 ` [PATCH 03/12] hwmon: lis3: Cleanup interrupt handling Samu Onkalo
2010-10-24 14:18 ` Éric Piel
2010-10-22 11:57 ` [PATCH 04/12] hwmon: lis3: Update coordinates at polled device open Samu Onkalo
2010-10-24 14:19 ` Éric Piel
2010-10-22 11:57 ` [PATCH 05/12] hwmon: lis3: Power on corrections Samu Onkalo
2010-10-24 14:22 ` Éric Piel
2010-10-22 11:57 ` [PATCH 07/12] hwmon: lis3: New parameters to platform data Samu Onkalo
[not found] ` <1287748654-2626-8-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-22 16:17 ` Jonathan Cameron [this message]
2010-10-24 14:27 ` Éric Piel
2010-10-22 11:57 ` [PATCH 08/12] hwmon: lis3: Adjust fuzziness for 8 bit device Samu Onkalo
2010-10-24 14:33 ` Éric Piel
2010-10-22 11:57 ` [PATCH 09/12] hwmon: lis3: use block read to access data registers Samu Onkalo
2010-10-22 16:20 ` Jonathan Cameron
2010-10-24 14:53 ` Éric Piel
2010-10-22 11:57 ` [PATCH 10/12] hwmon: lis3: Enhance lis3 selftest with IRQ line test Samu Onkalo
[not found] ` <1287748654-2626-11-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-24 14:58 ` Éric Piel
2010-10-22 11:57 ` [PATCH 12/12] hwmon: lis3: Release resources is case of failure Samu Onkalo
[not found] ` <1287748654-2626-13-git-send-email-samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@public.gmane.org>
2010-10-24 14:59 ` Éric Piel
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=4CC1B90F.6070507@cam.ac.uk \
--to=jic23-kwpb1pkirijaa/9udqfwiw@public.gmane.org \
--cc=eric.piel-VkQ1JFuSMpfAbQlEx87xDw@public.gmane.org \
--cc=guenter.roeck-IzeFyvvaP7pWk0Htik3J/w@public.gmane.org \
--cc=khali-PUYAD+kWke1g9hUCZPvPmw@public.gmane.org \
--cc=linux-i2c-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-kernel-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=lm-sensors-GZX6beZjE8VD60Wz+7aTrA@public.gmane.org \
--cc=samu.p.onkalo-xNZwKgViW5gAvxtiuMwx3w@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: 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