From owner-soc-status@freebsd.org Thu Jul 5 07:08:46 2018 Return-Path: Delivered-To: soc-status@mailman.ysv.freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2610:1c1:1:606c::19:1]) by mailman.ysv.freebsd.org (Postfix) with ESMTP id CEBC5102C7E6 for ; Thu, 5 Jul 2018 07:08:46 +0000 (UTC) (envelope-from uddka@student.kit.edu) Received: from scc-mailout-kit-01.scc.kit.edu (scc-mailout-kit-01.scc.kit.edu [IPv6:2a00:1398:9:f712::810d:e751]) (using TLSv1.2 with cipher ECDHE-RSA-AES128-GCM-SHA256 (128/128 bits)) (Client did not present a certificate) by mx1.freebsd.org (Postfix) with ESMTPS id 6A66A8C7C9; Thu, 5 Jul 2018 07:08:46 +0000 (UTC) (envelope-from uddka@student.kit.edu) Received: from tr-v1239-fse.scc.kit.edu ([2a00:1398:e:28::2] helo=server-01.fs-etec.kit.edu) by scc-mailout-kit-01.scc.kit.edu with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256) (envelope-from ) id 1fayNe-0004dC-CB; Thu, 05 Jul 2018 09:08:44 +0200 Received: from Chris-TP.fritz.box (p200300D2EF0EC00024C8A188E2FBBF67.dip0.t-ipconnect.de [IPv6:2003:d2:ef0e:c000:24c8:a188:e2fb:bf67]) by server-01.fs-etec.kit.edu (Postfix) with ESMTPSA id 49460188F15; Thu, 5 Jul 2018 09:08:41 +0200 (CEST) Date: Thu, 5 Jul 2018 09:07:15 +0200 From: Christian =?ISO-8859-1?Q?Kr=E4mer?= To: soc-status@freebsd.org Cc: Chuck Tuffli , Luiz Otavio O Souza Subject: User space interface for GPIO interrupts / Status Report Weeks 6+7 Message-Id: <20180705090715.cd9063a3c897ed9872885ffd@student.kit.edu> X-Mailer: Sylpheed 3.7.0 (GTK+ 2.24.32; amd64-portbld-freebsd11.1) Mime-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit X-BeenThere: soc-status@freebsd.org X-Mailman-Version: 2.1.27 Precedence: list List-Id: Summer of Code Status Reports and Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 05 Jul 2018 07:08:47 -0000 Hi all, during the last two weeks I implemented the second part of the long-term test, which is an utility that replays the same PRNG as the interrupt source and predicts when the next interrupt should occur. I also added some functions to libgpio to handle the driver and modified the configuration utility in order to use these functions instead of calling ioctl() directly. Currently I am still working on the pin distinction which requires changes to many parts of the driver, but this should be done after this week. The configuration will be sticked to the file descriptor. I also took a closer look at asynchronous I/O and did some tests, but currently only unsafe AIO is possible, because the read() syscall does always block. Due to this the implementation of the read() syscall will be changed to allow non-blocking calls also. The source code of the driver can be found in my fork of the FreeBSD src tree on GitHub [1]. The utilities for configuration and testing are located in a separate repository [2]. Regards, Chris [1] [2]