From owner-freebsd-arm@freebsd.org Tue Nov 24 21:04:53 2020 Return-Path: Delivered-To: freebsd-arm@mailman.nyi.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.nyi.freebsd.org (Postfix) with ESMTP id 16AC946A040 for ; Tue, 24 Nov 2020 21:04:53 +0000 (UTC) (envelope-from freebsd@viruzzz.org) Received: from mail.viruzzz.org (mail.viruzzz.org [IPv6:2001:67c:380:124::3]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 4Cgc3S3TPRz3J6b for ; Tue, 24 Nov 2020 21:04:52 +0000 (UTC) (envelope-from freebsd@viruzzz.org) Received: from [192.168.252.63] (helo=ohm.local) by mail.viruzzz.org with esmtpsa (TLSv1.2:ECDHE-RSA-AES128-GCM-SHA256:128) (Exim 4.87 (FreeBSD)) (envelope-from ) id 1khfUY-000J0a-LH for freebsd-arm@freebsd.org; Wed, 25 Nov 2020 00:04:50 +0300 Subject: Re: User Space GPIO Interrupt programming - GSoC-2018 To: freebsd-arm@freebsd.org References: <2B01780F-D367-48A3-A827-B479030A496D@obsigna.com> <2126F3C0-D877-4483-9041-9FC84B9C8D3E@obsigna.com> From: Vladimir Message-ID: <4bdd8fe1-7b4c-6186-3ce3-f85c67c0b805@viruzzz.org> Date: Wed, 25 Nov 2020 00:04:49 +0300 User-Agent: Mozilla/5.0 (Macintosh; Intel Mac OS X 10.13; rv:78.0) Gecko/20100101 Thunderbird/78.5.0 MIME-Version: 1.0 In-Reply-To: <2126F3C0-D877-4483-9041-9FC84B9C8D3E@obsigna.com> Content-Type: text/plain; charset=utf-8 Content-Language: ru Content-Transfer-Encoding: 8bit X-Rspamd-Queue-Id: 4Cgc3S3TPRz3J6b X-Spamd-Bar: -- Authentication-Results: mx1.freebsd.org; dkim=none; dmarc=none; spf=none (mx1.freebsd.org: domain of freebsd@viruzzz.org has no SPF policy when checking 2001:67c:380:124::3) smtp.mailfrom=freebsd@viruzzz.org X-Spamd-Result: default: False [-2.10 / 15.00]; RCVD_VIA_SMTP_AUTH(0.00)[]; ARC_NA(0.00)[]; MID_RHS_MATCH_FROM(0.00)[]; FROM_HAS_DN(0.00)[]; RBL_DBL_DONT_QUERY_IPS(0.00)[2001:67c:380:124::3:from]; TO_MATCH_ENVRCPT_ALL(0.00)[]; NEURAL_HAM_LONG(-1.00)[-1.000]; MIME_GOOD(-0.10)[text/plain]; TO_DN_NONE(0.00)[]; DMARC_NA(0.00)[viruzzz.org]; AUTH_NA(1.00)[]; RCPT_COUNT_ONE(0.00)[1]; SPAMHAUS_ZRD(0.00)[2001:67c:380:124::3:from:127.0.2.255]; NEURAL_HAM_MEDIUM(-1.00)[-1.000]; NEURAL_HAM_SHORT(-1.00)[-1.000]; R_SPF_NA(0.00)[no SPF record]; FROM_EQ_ENVFROM(0.00)[]; R_DKIM_NA(0.00)[]; MIME_TRACE(0.00)[0:+]; ASN(0.00)[asn:41599, ipnet:2001:67c:380::/48, country:RU]; RCVD_TLS_ALL(0.00)[]; MAILMAN_DEST(0.00)[freebsd-arm]; RCVD_COUNT_TWO(0.00)[2] X-BeenThere: freebsd-arm@freebsd.org X-Mailman-Version: 2.1.34 Precedence: list List-Id: "Porting FreeBSD to ARM processors." List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 24 Nov 2020 21:04:53 -0000 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. 2020-11-24 23:45, Dr. Rolf Jansen пишет: >> Am 24.11.2020 um 17:32 schrieb Ian Lepore : >> >> 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. > > Thank you for answering > > Best regards > > Rolf > _______________________________________________ > freebsd-arm@freebsd.org mailing list > https://lists.freebsd.org/mailman/listinfo/freebsd-arm > To unsubscribe, send any mail to "freebsd-arm-unsubscribe@freebsd.org" > -- With best regards, Vladimir Goncharov