Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753421AbdDMMVq (ORCPT ); Thu, 13 Apr 2017 08:21:46 -0400 Received: from mx0a-001ae601.pphosted.com ([67.231.149.25]:47865 "EHLO mx0b-001ae601.pphosted.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1753337AbdDMMVm (ORCPT ); Thu, 13 Apr 2017 08:21:42 -0400 Authentication-Results: ppops.net; spf=none smtp.mailfrom=rf@opensource.wolfsonmicro.com Message-ID: <1492086093.4826.25.camel@rf-debian.wolfsonmicro.main> Subject: Re: [PATCH 1/2] mfd: arizona: Add GPIO maintain state flag From: Richard Fitzgerald To: Linus Walleij CC: Charles Keepax , Rob Herring , Lee Jones , Alexandre Courbot , Mark Rutland , "linux-gpio@vger.kernel.org" , "devicetree@vger.kernel.org" , "linux-kernel@vger.kernel.org" , "open list:WOLFSON MICROELECTRONICS DRIVERS" Date: Thu, 13 Apr 2017 13:21:33 +0100 In-Reply-To: References: <1491568725-14882-1-git-send-email-ckeepax@opensource.wolfsonmicro.com> <20170410201758.lobmtzxt2jgcwwvc@rob-hp-laptop> <1491903267.4826.8.camel@rf-debian.wolfsonmicro.main> <20170413091513.GA1878@localhost.localdomain> Content-Type: text/plain; charset="us-ascii" X-Mailer: Evolution 3.4.4-3 MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Proofpoint-Spam-Details: rule=notspam policy=default score=0 priorityscore=1501 malwarescore=0 suspectscore=0 phishscore=0 bulkscore=0 spamscore=0 clxscore=1015 lowpriorityscore=0 impostorscore=0 adultscore=0 classifier=spam adjust=0 reason=mlx scancount=1 engine=8.0.1-1702020001 definitions=main-1704130103 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1259 Lines: 31 On Thu, 2017-04-13 at 14:14 +0200, Linus Walleij wrote: > On Thu, Apr 13, 2017 at 11:15 AM, Charles Keepax > wrote: > > On Tue, Apr 11, 2017 at 10:34:27AM +0100, Richard Fitzgerald wrote: > > >> 3) The codec only has to be kept awake while any such GPIO is actually > >> in use. See (2) > > > > Yeah option 3 is the primary issue here, we only want to keep the > > CODEC enabled whilst specific GPIOs are in use. As GPIOs can be > > dynamically requested/released by things in the kernel we want to > > know which GPIOs require the CODEC to be kept alive. Also in the > > future one might be tempted to add maintain whilst high and > > maintain whilst low options for lines with pulls on them to > > further optimise power. > > Why does this have to be encoded as information in the device > tree? Isn't it better to use a static table in the driver? > > I don't see what use system integrators and others playing > around with the device tree has of this, it will just be confusing > to them if it is a chip-internal detail. > They are GPIOs for connecting to external hardware, we don't know what people are going to connect them to so they have to tell us how they need them to behave. > Yours, > Linus Walleij