[<prev] [next>] [<thread-prev] [thread-next>] [day] [month] [year] [list]
Message-ID: <CACRpkdYCiPRPM7evyZsL2jvsfiAYZ36fL1PRjoG7a0jvduqpwQ@mail.gmail.com>
Date: Wed, 12 Jun 2019 10:51:49 +0200
From: Linus Walleij <linus.walleij@...aro.org>
To: Grygorii Strashko <grygorii.strashko@...com>
Cc: Russell King <rmk@....linux.org.uk>,
Tony Lindgren <tony@...mide.com>,
Bartosz Golaszewski <bgolaszewski@...libre.com>,
Linux-OMAP <linux-omap@...r.kernel.org>,
"open list:GPIO SUBSYSTEM" <linux-gpio@...r.kernel.org>,
"linux-kernel@...r.kernel.org" <linux-kernel@...r.kernel.org>,
Santosh Shilimkar <ssantosh@...nel.org>,
Russell King <rmk+kernel@...linux.org.uk>
Subject: Re: [PATCH-next 10/20] gpio: gpio-omap: simplify set_multiple()
On Mon, Jun 10, 2019 at 7:12 PM Grygorii Strashko
<grygorii.strashko@...com> wrote:
> From: Russell King <rmk+kernel@...linux.org.uk>
>
> One of the reasons for set_multiple() to exist is to allow multiple
> GPIOs on the same chip to be changed simultaneously - see commit
> 5f42424354f5 ("gpiolib: allow simultaneous setting of multiple GPIO
> outputs"):
>
> - Simultaneous glitch-free setting of multiple pins on any kind of
> parallel bus attached to GPIOs provided they all reside on the
> same chip and bank.
>
> In order for this to work, we should not use the atomic set/clear
> registers, but instead read-modify-write the dataout register. We
> already take the spinlock to ensure that happens atomically, so
> move the code into the set_multiple() function and kill the two
> helper functions.
>
> Signed-off-by: Russell King <rmk+kernel@...linux.org.uk>
> Signed-off-by: Grygorii Strashko <grygorii.strashko@...com>
Patch applied.
Yours,
Linus Walleij
Powered by blists - more mailing lists