Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754488Ab3HWJky (ORCPT ); Fri, 23 Aug 2013 05:40:54 -0400 Received: from smtp2-1.goneo.de ([212.90.139.83]:51113 "EHLO smtp2-1.goneo.de" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752943Ab3HWJkv (ORCPT ); Fri, 23 Aug 2013 05:40:51 -0400 X-Spam-Flag: NO X-Spam-Score: -2.746 From: Lars Poeschel To: Stephen Warren Subject: Re: [PATCH v2] gpio: interrupt consistency check for OF GPIO IRQs Date: Fri, 23 Aug 2013 11:40:44 +0200 User-Agent: KMail/1.13.7 (Linux/3.10-2-amd64; KDE/4.8.4; x86_64; ; ) Cc: Linus Walleij , Tomasz Figa , Lars Poeschel , Grant Likely , "linux-gpio@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , Mark Rutland , Ian Campbell , galak@codeaurora.org, Pawel Moll , Javier Martinez Canillas , Enric Balletbo i Serra , "Jean-Christophe PLAGNIOL-VILLARD" , Santosh Shilimkar , Kevin Hilman , Balaji T K , Tony Lindgren , Jon Hunter References: <1377092334-770-1-git-send-email-larsi@wh2.tu-dresden.de> <52167E5D.6060802@wwwdotorg.org> In-Reply-To: <52167E5D.6060802@wwwdotorg.org> MIME-Version: 1.0 Content-Type: Text/Plain; charset="iso-8859-1" Content-Transfer-Encoding: 7bit Message-Id: <201308231140.44923.poeschel@lemonage.de> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1890 Lines: 35 On Thursday 22 August 2013 at 23:10:53, Stephen Warren wrote: > On 08/21/2013 05:36 PM, Linus Walleij wrote: > > On Thu, Aug 22, 2013 at 1:10 AM, Stephen Warren > > wrote: [Me] > > > >>>> check if these in turn reference the interrupt-controller, and > >>>> if they do, loop over the interrupts used by that child and > >>>> perform gpio_request() and gpio_direction_input() on these, > >>>> making them unreachable from the GPIO side. > >> > >> What about bindings that require a GPIO to be specified, yet don't > >> allow an IRQ to be specified, and the driver internally does perform > >> gpio_to_irq() on it? I don't think one can detect that case. > > > > This is still allowed. Consumers that prefer to have a GPIO > > passed and convert it to IRQ by that call can still do so, > > they will know what they're doing and will not cause the > > double-command situation that we're trying to solve. > > Why not? There are certainly drivers in the kernel which request a GPIO > as both a GPIO and as an (dual-edge) interrupt, so that they can read > the GPIO input whenever the IRQ goes off, in order to determine the pin > state. This is safer against high-latency or lost interrupts. This is the point! They REQUEST the GPIO. They can then do whatever they like with this GPIO then, even additionally use it as interrupt. In the devicetree case the interrupts are not requested. This is what we are trying to address with the patch. The device using this interrupt has no idea where this interrupt comes from. Is it a gpio-interrupt or not? Does it have to request a gpio before using this interrupt or not? -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/