On Thu, Apr 20, 2023 at 2:47 PM Hans Verkuil <hverkuil-cisco@xxxxxxxxx> wrote: > In the past setting the pin direction called pinctrl_gpio_direction() > which uses a mutex to serialize this. That was changed to set the > direction directly in the pin controller driver, but that lost the > serialization mechanism. Since the direction of multiple pins are in > the same register you can have a race condition, something that was > in fact observed with the cec-gpio driver. > > Add a new spinlock to serialize writing to the FSEL registers. > > Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx> > Fixes: 1a4541b68e25 ("pinctrl-bcm2835: don't call pinctrl_gpio_direction()") I just applied this patch now so it can go in with the rest of the patches for the merge window. I don't especially fancy having to immediately start a fixes branch before I've even sent the bulk of patches to Torvalds. Yours, Linus Walleij