On Mon, Jun 10, 2019 at 7:12 PM Grygorii Strashko
<grygorii.stras...@ti.com> wrote:

> From: Russell King <rmk+ker...@armlinux.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+ker...@armlinux.org.uk>
> Signed-off-by: Grygorii Strashko <grygorii.stras...@ti.com>

Patch applied.

Yours,
Linus Walleij

Reply via email to