Received: by 2002:ac0:a5b6:0:0:0:0:0 with SMTP id m51-v6csp342997imm; Fri, 1 Jun 2018 01:47:01 -0700 (PDT) X-Google-Smtp-Source: ADUXVKL6JetbHpME1i307oknOcbyX3Jg9JB9mi4uLo5ZGEgHg/LESmZNE549JOAbMAmOmORJoxJr X-Received: by 2002:a17:902:8602:: with SMTP id f2-v6mr10212848plo.5.1527842821216; Fri, 01 Jun 2018 01:47:01 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1527842821; cv=none; d=google.com; s=arc-20160816; b=ZVxOjk9qb5mF09n5Z7Hdvohw6vN7aH5q9jeZTSM1DksjFN9t3i3jhLEJsaL+4eAB3U zmp6+Pu5i1MGiDD+4MxRcCMfa4lnhE4wGbkQ4TN+aiFMcSIP18qR2WFKf4LF5f0c/m1N IIt8fjtWNg3dgESF26XLi7kdllT1cRyjQtTSLAYahGGHQo4FkzqUauzcPYrMhpsomK4R qqmYCPttw/32fkYmbtJUJEXcjJYEOj/Z7CKkYUcKUpNz0h4Pbn7hlHkDLiHSgYSk593R iXRYgVWXHPNccIn2C8QWRaG4tniRnG2DbxrYTVF/mVb5of/IGZRUN7/ESx8ItJPtS8Et EaRg== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:in-reply-to :mime-version:user-agent:date:message-id:from:references:cc:to :subject:dkim-signature:arc-authentication-results; bh=thVnKai/CP4VE+luqfyigPgnCJ3JN7tQo1BeMXCxwtk=; b=tZOl7WUqy97piNA4RAbqq0ijL1nTT+08lmGMiFOqhRuP1kE1U2YOYV1/PVPL9vXXWn 4fZHj5DPAVlvt5R52Ko13M50F0gQJA2nTYOwCKcyMgNEOMCB0DendR3EWqmAbiYlsYuy s5mesbHCpovizk7BGj3Zfqez4vn11/c4pyWujxqwECyFhLmS/MbKd44YoFxcQrLe9ldl zW5Z0niKLqXwC1R3TsivESa/RF2vg2sk06WdnS+973s8IFwkzCdP7tXwwGQkjRE+cqTT KiG38igHMN8DTn+1IL6l7RYM4z5DdWECOaF20RV6emuglkxnkHXDUlr5qpJASHhzo0+S 71qg== ARC-Authentication-Results: i=1; mx.google.com; dkim=pass header.i=@dd-wrt.com header.s=mikd header.b=ZBeac1g8; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=REJECT dis=NONE) header.from=dd-wrt.com Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id w16-v6si2603363pgq.513.2018.06.01.01.46.46; Fri, 01 Jun 2018 01:47:01 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; dkim=pass header.i=@dd-wrt.com header.s=mikd header.b=ZBeac1g8; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org; dmarc=pass (p=NONE sp=REJECT dis=NONE) header.from=dd-wrt.com Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1750916AbeFAIqS (ORCPT + 99 others); Fri, 1 Jun 2018 04:46:18 -0400 Received: from smtps.newmedia-net.de ([185.84.6.167]:37697 "EHLO webmail.newmedia-net.de" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1750724AbeFAIqO (ORCPT ); Fri, 1 Jun 2018 04:46:14 -0400 DKIM-Signature: v=1; a=rsa-sha256; q=dns/txt; c=relaxed/relaxed; d=dd-wrt.com; s=mikd; h=Content-Transfer-Encoding:Content-Type:In-Reply-To:MIME-Version:Date:Message-ID:From:References:Cc:To:Subject; bh=thVnKai/CP4VE+luqfyigPgnCJ3JN7tQo1BeMXCxwtk=; b=ZBeac1g8vDESFf7m4bShQVywveYLBwLvdXrf5sEy7lFZh7tX79NPGZctM6Z3E8PEzLzr6Rwplt+cWNHi0F76PNU3mKVb6iUX7BTML5qoaTV8BZStAHKhtNwCsZ6WyvkNkDfmEeroQfGaIcVgnzSlkDLmj9uB1bcSgVeY7REmCUI=; Subject: Re: [PATCH 4.16 269/272] pinctrl: msm: Use dynamic GPIO numbering To: Bjorn Andersson , Greg Kroah-Hartman , Linus Walleij Cc: linux-kernel@vger.kernel.org, stable@vger.kernel.org, Timur Tabi , Sasha Levin References: <20180528100240.256525891@linuxfoundation.org> <20180528100302.722883806@linuxfoundation.org> <7c34ccef-2fa8-8b53-2677-29f6fbe71a04@dd-wrt.com> <20180531114553.GB11598@kroah.com> <20180531165759.GJ14924@minitux> From: Sebastian Gottschall Message-ID: <8c5897d0-364f-b8e0-4608-9bdd294de657@dd-wrt.com> Date: Fri, 1 Jun 2018 10:46:08 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; WOW64; rv:52.0) Gecko/20100101 Thunderbird/52.8.0 MIME-Version: 1.0 In-Reply-To: <20180531165759.GJ14924@minitux> Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: 8bit X-Received: from [212.111.244.1] (helo=[172.29.0.209]) by webmail.newmedia-net.de with esmtpsa (TLSv1:AES128-SHA:128) (Exim 4.72) (envelope-from ) id 1fOfhJ-0000CD-JP; Fri, 01 Jun 2018 10:46:09 +0200 Sender: linux-kernel-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Am 31.05.2018 um 18:57 schrieb Bjorn Andersson: > On Thu 31 May 04:45 PDT 2018, Greg Kroah-Hartman wrote: > >> On Thu, May 31, 2018 at 01:21:56PM +0200, Sebastian Gottschall wrote: >>> Am 28.05.2018 um 12:05 schrieb Greg Kroah-Hartman: >>>> 4.16-stable review patch. If anyone has any objections, please let me know. >>>> >>>> ------------------ >>>> >>>> From: Bjorn Andersson >>>> >>>> [ Upstream commit a7aa75a2a7dba32594291a71c3704000a2fd7089 ] >>>> >>>> The base of the TLMM gpiochip should not be statically defined as 0, fix >>>> this to not artificially restrict the existence of multiple pinctrl-msm >>>> devices. >>>> >>>> Fixes: f365be092572 ("pinctrl: Add Qualcomm TLMM driver") >>>> Reported-by: Timur Tabi >>>> Signed-off-by: Bjorn Andersson >>>> Signed-off-by: Linus Walleij >>>> Signed-off-by: Sasha Levin >>>> Signed-off-by: Greg Kroah-Hartman >>>> --- >>>> drivers/pinctrl/qcom/pinctrl-msm.c | 2 +- >>>> 1 file changed, 1 insertion(+), 1 deletion(-) >>>> >>>> --- a/drivers/pinctrl/qcom/pinctrl-msm.c >>>> +++ b/drivers/pinctrl/qcom/pinctrl-msm.c >>>> @@ -818,7 +818,7 @@ static int msm_gpio_init(struct msm_pinc >>>> return -EINVAL; >>>> chip = &pctrl->chip; >>>> - chip->base = 0; >>>> + chip->base = -1; >>>> chip->ngpio = ngpio; >>>> chip->label = dev_name(pctrl->dev); >>>> chip->parent = pctrl->dev; >>> this patch creates a regression for me. on ipq8064 the systems gpios now >>> start somewhere in the sky >>> >>> new layout >>> >>> lrwxrwxrwx    1 root     root             0 Jan  1 00:00 gpiochip373 -> ../../devices/platform/soc/1b700000.pci/pci0001:00/0001:00:00.0/0001:01:00.0/gpio/gpiochip373 >>> lrwxrwxrwx    1 root     root             0 Jan  1 00:00 gpiochip408 -> ../../devices/platform/soc/1b500000.pci/pci0000:00/0000:00:00.0/0000:01:00.0/gpio/gpiochip408 >>> lrwxrwxrwx    1 root     root             0 Jan  1 00:00 gpiochip443 -> >>> ../../devices/platform/soc/800000.pinmux/gpio/gpiochip443 >>> >>> >>> before the patch >>> >>> lrwxrwxrwx    1 root     root             0 Jan  1  1970 gpiochip0 -> >>> ../../devices/platform/soc/800000.pinmux/gpio/gpiochip0 >>> lrwxrwxrwx    1 root     root             0 May 31 13:13 gpiochip442 -> ../../devices/platform/soc/1b700000.pci/pci0001:00/0001:00:00.0/0001:01:00.0/gpio/gpiochip442 >>> lrwxrwxrwx    1 root     root             0 May 31 13:13 gpiochip477 -> ../../devices/platform/soc/1b500000.pci/pci0000:00/0000:00:00.0/0000:01:00.0/gpio/gpiochip477 >>> >>> >>> this broke my userspace gpio handling. i can override this, but still it >>> doesnt look correct since there is a hole at the beginng likelly reserved by >>> unused arm gpios >> So does this mean that 4.17-rc is also broken for you? If so, this >> needs to be reverted there as well. >> >> Bjorn, any ideas? >> > The Qualcomm TLMM (pinctrl) driver was introduced long after it was > decided that the kernel should not rely on global/static gpio numbering. > > But due to a mistake on my part the dynamic gpio base for this gpiochip > was always 0, which the offending patch corrects. > > > So writing user space code relying on the gpio numbering for this chip > has always been incorrect, just as it is for the other two gpiochips > listed above. > > > The original objection for backporting this patch was a touchscreen > driver stopped working on 4.4, but the driver clearly doesn't depend on > global or static numbering of gpios. I don't think this was ever root > caused. > > > I guess the pragmatic approach would be to come up with something like > Timur's suggested fix that makes the first instance of this driver use > base = 0 and then use dynamic numbering for the rest, to maintain > support for this incorrect usage of the gpio sysfs interface. (Although > that would probably break if Timur's customers move their user space to > the new platform as "the first instance" isn't deterministic). > > Regards, > Bjorn that would at least guarantee backward compatiblity. i'm fine with that Sebastian >