Re: GPIO inputs on Pis?
"Dr. Rolf Jansen" <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.arm |
|---|---|
| Message-ID | <01070185e46b1a6e-ee34b885-1215-45c7-ac18-83320c02cac2-000000@eu-central-1.amazonses.com> |
> Am 23.01.2023 um 11:41 schrieb Karl Denninger <[email protected]>: > > Is there support somewhere in the 13.x for other than "read current state" / "set current state"? > > Specifically, there is evidence in the sys/gpio.h header file that I can open up a file descriptor and then use select()/read() to grab the contents of a ring buffer of some size (presumably interrupt-posted) of events since last look, and determine if there's anything in there. Provided you're reasonably fast this might be enough to, for example, read an optical encoder that has a modest pulse rate. > > I see apparent review code at https://reviews.freebsd.org/D27398 <https://reviews.freebsd.org/D27398> from late 2020, but nothing else I can find digging around; an example (assuming it is actually implemented and works) would be helpful > See https://forums.freebsd.org/threads/gpio-api-general-orange-pi-h3.83950/post-556728 <https://forums.freebsd.org/threads/gpio-api-general-orange-pi-h3.83950/post-556728> And the messages in that thread that follow the one linked above. There is a respective thread on this mailing list as well: Porting FreeBSD to ARM processors: User Space GPIO Interrupt programming - GSoC-2018 <https://lists.freebsd.org/archives/freebsd-arm/2020-November/022740.html>