Re: [PATCH v5 0/7] gpio: expose line bias flags to userspace

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Tue, Nov 05, 2019 at 08:12:13AM +0800, Kent Gibson wrote:
> On Mon, Nov 04, 2019 at 11:58:38AM -0800, Drew Fustini wrote:
> > On Mon, Nov 04, 2019 at 11:38:34PM +0800, Kent Gibson wrote:
> > > on a Raspberry Pi, in both cases using the feature/pud_set_config 
> > > branch of my Go gpiod library[2], as well as with my feature/pud 
> > > development branch of libgpiod[3].  Patch 7 has only been tested using 
> > > my gpiod library as libgpiod has not yet been updated to support the 
> > > SET_CONFIG ioctl.
> > > 
> > > Patch 1 adds pull-up/pull-down support to line handle requests.
> > > Patch 2 adds pull-up/pull-down support to line event requests.
> > > Patch 3 adds support for disabling bias.
> > > Patch 4 adds support for setting bias on output lines.
> > > Patch 5 adds pull-up/down support to the gpio-mockup for uAPI testing.
> > > Patch 6 refactors the flag validation from linehandle_create.
> > > Patch 7 adds the SET_CONFIG ioctl.
> > 
> > Hi Kent, thanks for continuing pushing this patch series forward.
> > 
> > I've not used gpiomockup before and I was hoping you might be able to share
> > the commands you use to run it to test the patches.
> > 
> 
> I refer you to the libgpiod tests, particularly
> libgpiod/tests/mockup/gpio-mockup.c as well as gpio/gpio-mockup.c
> itself.
> 
> If you run the libgpiod tests they will load and manipulate the module
> themselves.  My gpiod tests do similarly.  I run them in a VM to ensure
> they can't interfere with real hardware by accident.
> 

It occurs to me that you might want to know how to run the Go tests that
I'm refering to when I say I've tested against gpio-mockup using gpiod.
While that is probably obvious for Go developers, it probably isn't 
so obvious for kernel developers.

So here is a quick guide for running the gpiod tests:

1. Install Go[1].

2. Checkout gpiod:
  git clone https://github.com/warthog618/gpiod.git

3. The uapi sub-package contains the tests for the uapi itself so
  cd gpiod/uapi

4. Checkout the appropriate branch - in this case 
  git checkout feature/pud_set_config

5. Build the tests
  go test -c

6. Run the tests (requires modprobe rights hence the sudo)
  sudo ./uapi.test

You can get a list of the tests being run by adding a --test.v
parameter to uapi.test, or run particular tests with 
  uapi.test --test.run [pattern]

The tests themselves are in uapi_test.go, in case you get errors or want
to see what they do.  The gpio-mockup wrapper is in gpiod/mockup.

There are also tests for gpiod itself in gpiod/*_test.go, though 
those focus on the gpiod library rather than the uapi and kernel.

Cheers,
Kent.

[1] https://golang.org/doc/install




[Index of Archives]     [Linux SPI]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux