Hello, On Mon Feb 19, 2024 at 4:54 PM CET, Bartosz Golaszewski wrote: > On Wed, Feb 14, 2024 at 5:24 PM Théo Lebrun <theo.lebrun@xxxxxxxxxxx> wrote: > > > > Previously, the statement looked like: > > > > slpm[x] &= ~BIT(g->pins[i]); > > > > Where: > > - slpm is a unsigned int pointer; > > - g->pins[i] is a pin number which can grow to more than 32. > > > > The expected shift amount is a pin bank offset. > > > > This bug does not occur on every group or pin: the altsetting must be > > NMK_GPIO_ALT_C and the pin must be 32 or above. It is possible that it > > occurred. For example, in pinctrl-nomadik-db8500.c, pin group i2c3_c_2 > > has the right altsetting and has pins 229 and 230. > > > > Signed-off-by: Théo Lebrun <theo.lebrun@xxxxxxxxxxx> > > Maybe add a Fixes: tag and put it at the beginning of the series so > that it can go upstream earlier as a fix? I'll see how it works out because the fix depends on helpers added in this series. I'll be reworking that. Regards, -- Théo Lebrun, Bootlin Embedded Linux and Kernel engineering https://bootlin.com