All of lore.kernel.org
 help / color / mirror / Atom feed
From: Drew Fustini <drew@pdp7.com>
To: Kent Gibson <warthog618@gmail.com>, matheus@castello.eng.br
Cc: linux-gpio@vger.kernel.org, bgolaszewski@baylibre.com,
	linus.walleij@linaro.org, bamv2005@gmail.com,
	thomas.petazzoni@bootlin.com
Subject: boards to test gpio line bias flags?
Date: Wed, 15 Apr 2020 16:03:35 +0200	[thread overview]
Message-ID: <20200415140335.GA24288@x1> (raw)
In-Reply-To: <20191105020429.18942-1-warthog618@gmail.com>

On Tue, Nov 05, 2019 at 10:04:22AM +0800, Kent Gibson wrote:
> This series adds gross control o:f pull-up/pull-down to the GPIO uAPI.
> Gross control means enabling and disabling of bias functionality,
> not finer grained control such as setting biasing impedances.
> 
> The support allows both input and output lines to have any one of the
> following biases applied as part of the line handle or event request:
>  0. As Is - bias is left alone.  This is the default for ABI compatibility.
>  1. Bias Disable - bias is explicitly disabled.
>  2. Pull Down - pull-down bias is enabled.
>  3. Pull Up - pull-up bias is enabled.
> 
> The biases are set via three flags, BIAS_DISABLE, BIAS_PULL_DOWN
> and BIAS_PULL_UP.  These map directly to the similarly named 
> pinctrl pin_config_param flags.
> As Is corresponds to none of the flags being set.

I had been looking at how to make these flags work on the BeagleBone
(TI Sitara AM3358 SoC) which uses the  gpio-omap driver and
pinctrl-single driver.  Howeverm, it seems that it is not posssible as
the BeagleBone device tree uses compatible of "pinctrl-single" instead
of "padconf-single", and thus pcs_pinconf_set() is not called [0].

The bias flags already work on the Raspberry Pi as the Broadcom SoC uses
pinctrl-bcm2835.c which uses gpiochip_generic_config() from gpiolib.c 
for .set_config in bcm2835_gpio_chip.  This eventually calls
bcm2835_pinconf_set() which handles the PIN_CONFIG_BIAS_* flags.

Thus, I started thinking about what other boards I could test the bias
flags with, and potentially, find drivers that I could add or fix
support.

The PIN_CONFIG_BIAS_* flags exist in these GPIO drivers:

gpio-aspeed.c:
aspeed seems to be used in server BMC so not hardware that I have
access to or could easily acquire.

gpio-mockup.c:
mockup driver that has already been tested and works

gpio-pca953x.c:
an external I2C GPIO expander, easy for me to acquire, it appears
that gpio uapi bias flags should work, but I could test and verify

gpiolib.c:
like the bmc2835 in the raspberry pi, it seems some drivers in pinctrl
directory will define a gpiochip and use gpiochip_generic_config().

Here is a list of other pinctrl drivers which use gpiochip_generic_config:

drivers/pinctrl/pinctrl-stmfx.c and drivers/pinctrl/pinctrl-sx150x.c:
These are both GPIO expanders which I could probably purchase

drivers/pinctrl/intel/pinctrl-intel.c:
Maybe this means that I could try this on x86 boards?

drivers/pinctrl/sunxi/pinctrl-sunxi.c
Maybe the Allwinner boards might work too?


Any other hardware that I should take a look at testing?


Thanks,
Drew


[0] https://lore.kernel.org/linux-gpio/20200413123921.GA32586@x1/T/#t

      parent reply	other threads:[~2020-04-15 14:03 UTC|newest]

Thread overview: 26+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-05  2:04 [PATCH v6 0/7] gpio: expose line bias flags to userspace Kent Gibson
2019-11-05  2:04 ` [PATCH v6 1/7] gpio: expose pull-up/pull-down line " Kent Gibson
2019-11-05  2:04 ` [PATCH v6 2/7] gpiolib: add support for pull up/down to lineevent_create Kent Gibson
2019-11-05  2:04 ` [PATCH v6 3/7] gpiolib: add support for disabling line bias Kent Gibson
2019-11-05  2:04 ` [PATCH v6 4/7] gpiolib: add support for biasing output lines Kent Gibson
2019-11-06 19:39   ` Drew Fustini
2019-11-06 23:56     ` Kent Gibson
2019-11-05  2:04 ` [PATCH v6 5/7] gpio: mockup: add set_config to support pull up/down Kent Gibson
2019-11-05  2:04 ` [PATCH v6 6/7] gpiolib: move validation of line handle flags into helper function Kent Gibson
2019-11-05  2:04 ` [PATCH v6 7/7] gpio: add new SET_CONFIG ioctl() to gpio chardev Kent Gibson
2019-11-05 15:05 ` [PATCH v6 0/7] gpio: expose line bias flags to userspace Bartosz Golaszewski
2019-11-07  8:10   ` Linus Walleij
2019-11-05 15:26 ` Kent Gibson
2019-11-05 16:24   ` Bartosz Golaszewski
2019-11-05 21:07     ` Bartosz Golaszewski
2019-11-06  6:48       ` Kent Gibson
2019-11-06 13:59         ` Bartosz Golaszewski
2019-11-06 16:58           ` Kent Gibson
2019-11-06 17:06             ` Bartosz Golaszewski
2019-11-06 23:20               ` Kent Gibson
2019-11-07 10:39             ` Kent Gibson
2019-11-07 11:28               ` Bartosz Golaszewski
2019-11-07 12:18                 ` Kent Gibson
2019-11-05 23:15     ` Kent Gibson
2019-11-07 17:57 ` Bartosz Golaszewski
2020-04-15 14:03 ` Drew Fustini [this message]

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20200415140335.GA24288@x1 \
    --to=drew@pdp7.com \
    --cc=bamv2005@gmail.com \
    --cc=bgolaszewski@baylibre.com \
    --cc=linus.walleij@linaro.org \
    --cc=linux-gpio@vger.kernel.org \
    --cc=matheus@castello.eng.br \
    --cc=thomas.petazzoni@bootlin.com \
    --cc=warthog618@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.