On Tue, 10 Aug 2021, at 23:24, Linus Walleij wrote: > On Fri, Jul 23, 2021 at 9:59 AM Andrew Jeffery <andrew@xxxxxxxx> wrote: > > > The leds-pca955x driver currently assumes that the GPIO numberspace and > > the pin numberspace are the same. This quickly falls apart with a > > devicetree binding such as the following: > (...) > > Honestly I do not understand this patch. It seems to implement a pin > controller and using it in nonstandard ways. Yeah, it's a bit abusive, hence RFC :) > > If something implements the pin controller driver API it should be > used as such IMO, externally. This seems to be using it do relay > calls to itself which seems complicated, just invent something > locally in the driver in that case? No need to use pin control? Right. After discussions with Andy I'm going to rework the approach to GPIOs which will remove a lot of complexity. The thought was to try to maintain the intent of the devicetree binding and use existing APIs, but all-in-all it's ended up twisting things up in knots a fair bit. We discard a lot of it by making the gpiochip always cover all pins and track use directly in the driver. > > Can you explain why this LED driver needs to implement a pin > controller? The short answer is it doesn't as it has none of the associated hardware. I'll cook up something simpler with the aim to avoid non-standard (or any) pinctrl. Andrew