Skip site navigation (1)Skip section navigation (2)
Date:      Tue, 24 Nov 2020 14:35:07 -0800
From:      John-Mark Gurney <jmg@funkthat.com>
To:        Vladimir <freebsd@viruzzz.org>
Cc:        freebsd-arm@freebsd.org
Subject:   Re: User Space GPIO Interrupt programming - GSoC-2018
Message-ID:  <20201124223506.GW31099@funkthat.com>
In-Reply-To: <4bdd8fe1-7b4c-6186-3ce3-f85c67c0b805@viruzzz.org>
References:  <2B01780F-D367-48A3-A827-B479030A496D@obsigna.com> <b4deea7dbe1f6890bf81357b3afd74561588bb76.camel@freebsd.org> <2126F3C0-D877-4483-9041-9FC84B9C8D3E@obsigna.com> <4bdd8fe1-7b4c-6186-3ce3-f85c67c0b805@viruzzz.org>

next in thread | previous in thread | raw e-mail | index | archive | help
Vladimir wrote this message on Wed, Nov 25, 2020 at 00:04 +0300:
> Are you going to poll encoders same way? I need interface encoders too.
> BBB has dedicated eQEP hardware, but it seems to be difficult to run
> eQEP under freebsd. So I thinking about PRU for handling encoders.

Seems like an encoder kernel driver would be useful...  Expecting a
userland program to catch all the changes would be a bit tricky...

> 2020-11-24 23:45, Dr. Rolf Jansen ??????????:
> >> Am 24.11.2020 um 17:32 schrieb Ian Lepore <ian@freebsd.org>:
> >>
> >> On Tue, 2020-11-24 at 17:14 -0300, Dr. Rolf Jansen wrote:
> >>> Hello
> >>>
> >>> Has anything of the GSoC-2018 efforts made it into the current code
> >>> base?
> >>>
> >>>
> >> https://wiki.freebsd.org/SummerOfCode2018Projects/UserSpaceGPIOinterrupts
> >>>
> >>> I installed the recent 13.0-CURRENT snapshot (2020-11-19) on a
> >>> BeagleBone Black which was one of the implementation targets of said
> >>> project, but when running the test tools, I either see cannot
> >>> read/kevent/poll/aio_read - Operation not supported by device or
> >>> Inappropriate ioctl for device.
> >>>
> >>> Perhaps I need to pull the project???s changes into the kernel by
> >>> myself. However, before this I would like to ask whether it is worth
> >>> the effort.
> >>>
> >>> Please, can anyone shed some light on this.
> >>>
> >>> Best regards
> >>>
> >>> Rolf
> >>>
> >>
> >> I have had that webpage open (but docked) for literally a year,
> >> eternally hoping that I can find time to get to it and somehow get it
> >> committed, or maybe use it as the basis for something to be committed
> >> (I haven't even looked at it close enough to see if it's commit-quality 
> >> code or what).
> >>
> >> I'm curious: What particular need do you have for userspace gpio
> >> interrupts?  What would you like the API to look like (do you like the
> >> things listed at that page, or would you prefer something else)?
> >>
> >> Interrupts is probably not a good name, because it isn't really going
> >> to act like an interrupt does for kernel code.  It's really just pin-
> >> change notifications delivered to userland.
> > 
> > I was asked to jump into a project where push buttons and pulses from a rotary encoder (all connected to GPIO's) would invoke some programmed actions. Polling the GPIO's would be too faulty. To me "pin-change notifications delivered to userland" sounds not too bad for my purpose. However, I won't say no for a real threaded GPIO interrupt handler facility, which presumably would serve perfectly as well.

-- 
  John-Mark Gurney				Voice: +1 415 225 5579

     "All that I will do, has been done, All that I have, has not."



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20201124223506.GW31099>