Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1755848AbcLNNOE (ORCPT ); Wed, 14 Dec 2016 08:14:04 -0500 Received: from mail-wj0-f182.google.com ([209.85.210.182]:34747 "EHLO mail-wj0-f182.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752976AbcLNNOB (ORCPT ); Wed, 14 Dec 2016 08:14:01 -0500 Subject: Re: [PATCH linux v1 0/4] Seven segment display support To: Greg KH , Thomas Petazzoni References: <1481702104-8617-1-git-send-email-jaghu@google.com> <20161214134530.2bd54a4e@free-electrons.com> <20161214125641.GA5379@kroah.com> Cc: mark.rutland@arm.com, Jaghathiswari Rankappagounder Natarajan , arnd@arndb.de, devicetree@vger.kernel.org, openbmc@lists.ozlabs.org, linux@armlinux.org.uk, linux-kernel@vger.kernel.org, robh+dt@kernel.org, joel@jms.id.au, linux-arm-kernel@lists.infradead.org From: Neil Armstrong Organization: Baylibre Message-ID: Date: Wed, 14 Dec 2016 14:12:41 +0100 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.3.0 MIME-Version: 1.0 In-Reply-To: <20161214125641.GA5379@kroah.com> Content-Type: text/plain; charset=windows-1252 Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2522 Lines: 64 On 12/14/2016 01:56 PM, Greg KH wrote: > On Wed, Dec 14, 2016 at 01:45:30PM +0100, Thomas Petazzoni wrote: >> Hello, >> >> On Tue, 13 Dec 2016 23:55:00 -0800, Jaghathiswari Rankappagounder >> Natarajan wrote: >> >>> Documentation for the binding which provides an interface for adding clock, >>> data and clear signal GPIO lines to control seven segment display. >>> >>> The platform device driver provides an API for displaying on two 7-segment >>> displays, and implements the required bit-banging. The hardware assumed is >>> 74HC164 wired to two 7-segment displays. >>> >>> The character device driver implements the user-space API for letting a user >>> write to two 7-segment displays including any conversion methods necessary >>> to map the user input to two 7-segment displays. >>> >>> Adding clock, data and clear signal GPIO lines in the devicetree to control >>> seven segment display on zaius platform. >>> >>> The platform driver matches on the device tree node; the platform driver also >>> initializes the character device. >>> >>> Tested that the seven segment display works properly by writing to the >>> character device file on a EVB AST2500 board which also has 74HC164 wired >>> to two 7-segment displays. >> >> FWIW, I proposed a driver for seven segment displays back in 2013: >> >> http://lists.infradead.org/pipermail/linux-arm-kernel/2013-January/139986.html >> >> And the feedback from Greg KH was: we don't need a driver for that, do >> it from userspace. See: >> >> http://lists.infradead.org/pipermail/linux-arm-kernel/2013-January/139992.html >> >> So: good luck :-) > > Did anyone ever write a library for this type of thing? > > Again, I don't want to see one-off drivers for random devices like this > that should be able to all be controlled from userspace in a common > manner. Much like we did for fingerprint readers a long long time > ago... > > thanks, > > greg k-h Hi Greg, Actually, it's more than a random interface, a lot of SoCs and boards actually have such displays and it's a pity to use UIO, sysfs gpio bitbanging and all sort of ugly stuff to only print a few characters a simple and clean driver could achieve. Some very well known SoCs even have integrated registers to lower the BOM and bypass the need for a 74HC164 like component and avoid gpio bit banging. My personal concern is that you could also need to drive more segments, thus 7-segments is too restrictive. But this driver is well structured, the gpio-bitbanging sub-driver is welcome. Neil