Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S942379AbcJ0OE4 (ORCPT ); Thu, 27 Oct 2016 10:04:56 -0400 Received: from mail-qt0-f172.google.com ([209.85.216.172]:36567 "EHLO mail-qt0-f172.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S942338AbcJ0OEt (ORCPT ); Thu, 27 Oct 2016 10:04:49 -0400 MIME-Version: 1.0 In-Reply-To: References: <1477062035-30825-1-git-send-email-enric.balletbo@collabora.com> <11644726.TmP4uu3h4l@ws-stein> From: Linus Walleij Date: Thu, 27 Oct 2016 14:22:14 +0200 Message-ID: Subject: Re: [PATCH] gpio: mcp23s08: Add option to configure pullups. To: Enric Balletbo Serra Cc: Alexander Stein , Enric Balletbo i Serra , "linux-kernel@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-gpio@vger.kernel.org" , Rob Herring Content-Type: text/plain; charset=UTF-8 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1617 Lines: 43 On Wed, Oct 26, 2016 at 11:59 AM, Enric Balletbo Serra wrote: > 2016-10-24 8:13 GMT+02:00 Alexander Stein > : >> On Monday 24 October 2016 02:53:31, Linus Walleij wrote: >>> On Fri, Oct 21, 2016 at 5:00 PM, Enric Balletbo i Serra >>> >>> wrote: >>> > Default is without pullups, but if property is specified in DT and the bit >>> > is set, set a pullup on GPIO-n. >>> > >>> > Signed-off-by: Enric Balletbo i Serra >>> >>> I don't generally like this. >>> > > I tried to use the same approach as used in gpio-twl4030.c because is > what I knew before. Maybe you can point me to a better approach? Move the whole driver to a pin control variant: Documentation/pinctrl.txt We just did this with the sx150x, see commit 9e80f9064e73f9f82679884ddf8b03ac3606cf4a "pinctrl: Add SX150X GPIO Extender Pinctrl Driver" in linux-next. However that is a heavy operation. And a lot of upfront work. If it is really *JUST* this one extra parameter, it's not a super-big deal, but I do not like to create a plethora of custom attributes to hack around stuff we already have generic solutions for. And if it makes sense for clients to specify the pullup, it should definately be done on the consumer side rather than on the producer side as these approaches do. For that approach see commit 69d301fdd19635a39cb2b78e53fdd625b7a27924 "gpio: add DT bindings for existing consumer flags" commit c663e5f56737757db4d0b317c510ab505f93cecb "gpio: support native single-ended hardware drivers" Yours, Linus Walleij