* Trent Piepho <tpiepho@xxxxxxxxx> [200930 09:34]: > On Wed, Sep 30, 2020 at 2:15 AM Tony Lindgren <tony@xxxxxxxxxxx> wrote: > > > > * Trent Piepho <tpiepho@xxxxxxxxx> [200930 08:35]: > > > The closest thing would be the generic pin config type bindings, which > > > go in the pinctrl driver's nodes, and look like this: > > > &am335x_pinmux { > > > pinctrl_yoyo_reset: yoyogrp { > > > pins = "foo"; > > > function = "gpio"; > > > bias-pull-up; > > > }; > > > }; > > > > There's a bit of a dtb size and boot time issue for adding properties > > for each pin where that needs to be done for several hundred pins :) > > pins is list, multiple pins can be specified at once. Otherwise the > property name would be "pin" and not "pins" There's also a groups > property to refer to multiple pins at once, e.g. > > arch/mips/boot/dts/ingenic/ci20.dts- pins_mmc1: mmc1 { > arch/mips/boot/dts/ingenic/ci20.dts- function = "mmc1"; > arch/mips/boot/dts/ingenic/ci20.dts: groups = > "mmc1-1bit-d", "mmc1-4bit-d"; > arch/mips/boot/dts/ingenic/ci20.dts- bias-disable; > arch/mips/boot/dts/ingenic/ci20.dts- }; > > arch/mips/boot/dts/pic32/pic32mzda_sk.dts- user_leds_s0: user_leds_s0 { > arch/mips/boot/dts/pic32/pic32mzda_sk.dts: pins = "H0", "H1", "H2"; > arch/mips/boot/dts/pic32/pic32mzda_sk.dts- output-low; > arch/mips/boot/dts/pic32/pic32mzda_sk.dts- microchip,digital; > arch/mips/boot/dts/pic32/pic32mzda_sk.dts- }; Right. > > > Is "some additional property for specifying generic conf flags" > > > different from the existing pinctrl-single,bias-pullup, etc. > > > properties? Because splitting the data cell into two parts doesn't > > > make any difference to those. > > > > So with an interrupt style binding with generic pinconf flags we can > > leave out the parsing of multiple properties for each pin. Sure the > > pin is only referenced by the controller like you pointed out but the > > pinconf flags could be generic. > > Where do these flags go? In pinctrl-single,pins? Like: > > pinctrl-single,pins = <AM335X_PIN_MDC MUX_MODE7 PIN_INPUT_PULLUP>; > > But PIN_INPUT_PULLUP is a generic flag? Which is translated into the > proper value by?? Yes that's what I was thinking, something like this with generic flags: pinctrl-single,pins = <AM335X_PIN_MDC (PIN_INPUT | PIN_PULLUP) MUX_MODE7>; > Or are you talking about replacing the existing pinctrl-0, > pinctrl-names properties with a totally different system that looks > more like gpio and interrupt handles? That would be even better :) Might be just too much to deal with.. In any case the parser code could already be generic if we had generic flags based on #pinctrl-cells. Regards, Tony