[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CAHp75VefVpwf-Ooom9Am3Gfmc8zR31fqWxTzYXest_+YTOk2yg@mail.gmail.com>
Date: Wed, 19 Apr 2017 23:41:37 +0300
From: Andy Shevchenko <andy.shevchenko@...il.com>
To: Kuppuswamy Sathyanarayanan
<sathyanarayanan.kuppuswamy@...ux.intel.com>
Cc: Alexandre Courbot <gnurou@...il.com>,
Linus Walleij <linus.walleij@...aro.org>,
"linux-gpio@...r.kernel.org" <linux-gpio@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Sathyanarayanan Kuppuswamy Natarajan <sathyaosid@...il.com>
Subject: Re: [PATCH v1 1/2] gpio: gpio-wcove: fix GPIO irq status mask
On Fri, Apr 14, 2017 at 8:29 PM,
<sathyanarayanan.kuppuswamy@...ux.intel.com> wrote:
> From: Kuppuswamy Sathyanarayanan <sathyanarayanan.kuppuswamy@...ux.intel.com>
>
> According to Whiskey cove PMIC spec, bit 7 of GPIOIRQ0_REG belongs to
cove -> Cove
> battery IO. So we should skip this bit when checking for GPIO irq pending
irq -> IRQ
> status. Otherwise, wcove_gpio_irq_handler() might go into the infinite
> loop until irq "pending" status becomes 0. This patch fixes this issue.
Ditto.
> +#define GPIO_IRQ0_MASK 0x7f
> +#define GPIO_IRQ1_MASK 0x3f
GENMASK()
> - pending = p[0] | (p[1] << 8);
> + pending = (p[0] & GPIO_IRQ0_MASK) |
> + ((p[1] & GPIO_IRQ1_MASK) << 7);
I would leave this on one line despite 80 characters limit (actually
how long is it?).
--
With Best Regards,
Andy Shevchenko
Powered by blists - more mailing lists