On Monday 07 December 2015 09:22:59, Timo Teras wrote: > On Mon, 07 Dec 2015 07:53:08 +0100 > Alexander Stein <alexander.stein@xxxxxxxxxxxxxxxxxxxxx> wrote: > > > On Friday 04 December 2015 13:46:13, Timo Teräs wrote: > > > Make pullup configurable from device tree data. > > > > > > Signed-off-by: Timo Teräs <timo.teras@xxxxxx> > > > --- > > > I'm not fully certain how the pullup data should be made > > > configurable via OF. gpio-twl4030.c uses similar approach as this, > > > but gpio-samsung.c makes the pullup configuration seems to be part > > > of the custom data in gpio specifiers. > > > > I think this should be specified for each individual GPIO. e.g. > > > gpios = <&gpio-ctrl 0 GPIO_ACTIVE_HIGH GPIO_PULLUP>; > > > > You don't know (yet) which pins might need a internal pull-up when > > specifying the mcp23s08 node itself. You might override the > > controller node in your dts, but so you need to adjust 2 entries, one > > for the user and one for the pullup, rather than have all options at > > one place. > > I think this is debatable. So consider this as opening a bit wider > discussion about the preferred way of exposing pullup/down configuration > via OF. And hopefully documenting it. (As mentioned there's already > code in for either way.) > > Agreeably one might want to override it on PIN basis. Perhaps the GPIO > function can be changed or similar. I think for this you need only to add an additional cell entry or just add an additional mask bit like active low/high. This would add the pull up/down feature to each GPIO user. > The other side is: Why would my gpio-keys input mapping specification > need know to what kind of GPIO input it is connected to? What if I > switch the GPIO expander - or the hardware schema? I need to edit 10 > different places rather than one - places that are about the high-level > functionality, not the hardware. Normally the pullup settings are > hardware layout dependant, so GPIO configuration would be the logical > place. gpio-keys need to know this when selecting active low or active high. You usually need the corresponding pull up/down for this to work. > One generally wants to configure pullups correctly for all GPIOs > regardless of if they are connected or not; or if the relevant > high-level gpio driver is loaded or not. And this should be done as > early as possible - even before the driver for that specific GPIO pin > functionality is loaded. This is also a valid point. > Perphaps others have more arguments for the per-pin configuration? I get the impression both ways would be needed... which is kinda error-prone. Best regards, Alexander -- ----- Please note our closure period for Christmas vacation and turn of the year We are closed from 21st December 2015 to 3rd January 2016 ----- Dipl.-Inf. Alexander Stein SYS TEC electronic GmbH alexander.stein@xxxxxxxxxxxxxxxxxxxxx Legal and Commercial Address: Am Windrad 2 08468 Heinsdorfergrund Germany Office: +49 (0) 3765 38600-0 Fax: +49 (0) 3765 38600-4100 Managing Directors: Director Technology/CEO: Dipl.-Phys. Siegmar Schmidt; Director Commercial Affairs/COO: Dipl. Ing. (FH) Armin von Collrepp Commercial Registry: Amtsgericht Chemnitz, HRB 28082; USt.-Id Nr. DE150534010 -- To unsubscribe from this list: send the line "unsubscribe linux-gpio" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html