On Thu, Aug 25, 2022 at 11:41 AM Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> wrote: > This driver implements a GPIO multiplexer based on latches connected to > other GPIOs. A set of data GPIOs is connected to the data input of > multiple latches. The clock input of each latch is driven by another > set of GPIOs. With two 8-bit latches 10 GPIOs can be multiplexed into > 16 GPIOs. GPOs might be a better term as in fact the multiplexed pins > are output only. > > Signed-off-by: Sascha Hauer <s.hauer@xxxxxxxxxxxxxx> Take a close look at the other forwarding driver: drivers/gpio/gpio-aggregator.c Especially (as pointed out by Marco) the sleeping/non-sleeping calls. There was a lot of discussion around that patch before we got the forwarding of GPIOs into a nice working shape. Also get Geert to review this because he knows what you need to do. :) Yours, Linus Walleij