Re: [PATCH v2] ARM: dts: am335x-pocketbeagle: set default mux for gpio pins

From: Drew Fustini
Date: Mon Jun 29 2020 - 22:01:09 EST


On Mon, Jun 29, 2020 at 10:03:58AM -0700, Tony Lindgren wrote:
> Hi,
>
> * Drew Fustini <drew@xxxxxxxxxxxxxxx> [200628 08:26]:
> > v2 changes:
> > - change default mux from output to input. Input is safer as it does
> > not drive the line. If the user wants output, they will need to edit
> > this device tree.
>
> So can you please clarify this a bit, are you saying that gpio output can't
> be done via userspace?

As it stands, there is no way for userspace to change a pin from gpio
input to gpio output as it is based on the reciever active bit in the
pin control register (table 9-60 in the AM3358 datasheet [0]).

I thought it would be useful to at least define the GPIOs available for
use on the PocketBeagle by default (and eventually the other BeagleBone
device trees). Input seems to be the safest value. This patch at least
makes it more clear where the user should edit to switch from input to
output.

> Needing to change the dts does not sound good to me.. But maybe you mean
> this is needed until the gpio-omap and pinctrl-single patches are merged?
>
> Regards,
>
> Tony

I agree that I would like for userspace to be able to do run-time
changes. However, I think something would need to be added to the
pinconf support in pinctrl-single for that to be possible. There are
bias properties but non for receiver enable.

Does it seem sensible to add that?


thanks,
drew

[0] http://www.ti.com/lit/ds/symlink/am3358.pdf