From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on aws-us-west-2-korg-lkml-1.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-0.8 required=3.0 tests=DKIM_SIGNED,DKIM_VALID, DKIM_VALID_AU,HEADER_FROM_DIFFERENT_DOMAINS,MAILING_LIST_MULTI,SPF_HELO_NONE, SPF_PASS,URIBL_BLOCKED autolearn=no autolearn_force=no version=3.4.0 Received: from mail.kernel.org (mail.kernel.org [198.145.29.99]) by smtp.lore.kernel.org (Postfix) with ESMTP id 2115BC2D0E8 for ; Wed, 25 Mar 2020 22:50:58 +0000 (UTC) Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.kernel.org (Postfix) with ESMTP id E94F420772 for ; Wed, 25 Mar 2020 22:50:57 +0000 (UTC) Authentication-Results: mail.kernel.org; dkim=pass (2048-bit key) header.d=linaro.org header.i=@linaro.org header.b="oiS1IbPa" Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727358AbgCYWu5 (ORCPT ); Wed, 25 Mar 2020 18:50:57 -0400 Received: from mail-lj1-f194.google.com ([209.85.208.194]:41882 "EHLO mail-lj1-f194.google.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1727384AbgCYWu5 (ORCPT ); Wed, 25 Mar 2020 18:50:57 -0400 Received: by mail-lj1-f194.google.com with SMTP id n17so4376542lji.8 for ; Wed, 25 Mar 2020 15:50:55 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=linaro.org; s=google; h=mime-version:references:in-reply-to:from:date:message-id:subject:to :cc; bh=mvpoEnCZ4C8vKQMoIguE6IEarWu7BrtW6hbppPd41Ms=; b=oiS1IbPa6rVlMQpiVeCxe4ZMoRkeE9A7zdm6RICLtCLk03wzQlXT9oAQNEEHqbunKx 7cYD+MpDnQ8WB5Rf5xDzOi6OguU/qsogEuvLJUUuwTIoudZBsmB37+jRcWkpJbEyI/cC RB7bUKT0yh3ORR3ouXLj/jHG09NDIYmqk+1d02lS2+GyYtMAGj3kngCEa5tHViAu0FHX 7kia7cGC90BRYYoLTXBqEjLtTM344573/8/H/DWy7cw8xgH3Xw9cNnFf+zhxpcQrSLzC AEQfz8TBMpIp7O7ezPZJEJtxMWuUQ1J4S8DHEKmts/yy/ka+BRwXO8qkTlMcQCqPdLmy rerg== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20161025; h=x-gm-message-state:mime-version:references:in-reply-to:from:date :message-id:subject:to:cc; bh=mvpoEnCZ4C8vKQMoIguE6IEarWu7BrtW6hbppPd41Ms=; b=S2EiV6DXldqgQ5FToQKL4XU8/S8AgteYbXGbD5wHJGUOj3IsQOmpakcXL3j0F1DyyM /qhD1gEcCq1KIYTGxq6eJqphQxL2tLXXAq7mjjxeOmireJoDf4cfKjijl266GpvzEyku HxtCgSYQfDw6KZF2ly6rPCg4hMQonusbOVjJJ52JzVy3TXzVtbW9EofbEeG73XNp2w8a jiZOnXGvWksugsbJZ9TrKEKHuorcZYMv179rDOiHn7p6LlC1YYOjwX5WJ48msPxWgOAT UvPlqd+Tyk8exKUXxP3Vb699l3c02ilIJp4G1JnUmVLboTdAzmwO0VICOXcmwb83S4R3 zkPw== X-Gm-Message-State: ANhLgQ1o31Jd3goVj3+DqbCmx3sVkc6/a98QzKIhIJCqyDwQQ5XAdWXY iL7QlGFEinZuVXAzP/NGFRc6B/DMLGttWxzTlmFXMA== X-Google-Smtp-Source: ADFU+vuOH4Me0XspRjuLjVHoMVTABevC7PhfbHX7+cC03LR6H2O9N4MTjsXAhpRlFIcEFE1sqmjJ5hoUXeN01SCrpwY= X-Received: by 2002:a05:651c:445:: with SMTP id g5mr3210224ljg.125.1585176654577; Wed, 25 Mar 2020 15:50:54 -0700 (PDT) MIME-Version: 1.0 References: <20200205194804.1647-1-mst@semihalf.com> <20200206083149.GK2667@lahna.fi.intel.com> <20200207075654.GB2667@lahna.fi.intel.com> <20200210101414.GN2667@lahna.fi.intel.com> <20200310144913.GY2540@lahna.fi.intel.com> In-Reply-To: <20200310144913.GY2540@lahna.fi.intel.com> From: Linus Walleij Date: Wed, 25 Mar 2020 23:50:43 +0100 Message-ID: Subject: Re: [PATCH] pinctrl: cherryview: Add quirk with custom translation of ACPI GPIO numbers To: Mika Westerberg Cc: =?UTF-8?Q?Micha=C5=82_Stanek?= , "open list:GPIO SUBSYSTEM" , ACPI Devel Maling List , "linux-kernel@vger.kernel.org" , stanekm@google.com, stable , Marcin Wojtas , levinale@chromium.org, Andy Shevchenko , Bartosz Golaszewski , "Rafael J. Wysocki" , Dmitry Torokhov Content-Type: text/plain; charset="UTF-8" Sender: linux-gpio-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-gpio@vger.kernel.org On Tue, Mar 10, 2020 at 3:49 PM Mika Westerberg wrote: > > With the newer kernel the gpiochip%d number is different so crossystem > > ends up reading the wrong pin. > > Hmm, so gpiochipX is also not considered a stable number. It is based on > ARCH_NR_GPIOS which may change. So if the userspace is relaying certain GPIO > chip is always gpichip200 for example then it is wrong. Yes it has always been clear that sysfs is what one shall use for establishing the topology of the hardware, so /sys/bus/gpiochip etc. For example on my laptop: $ pwd /sys/bus/gpio/devices $ ls -al total 0 drwxr-xr-x. 2 root root 0 25 mar 23.49 . drwxr-xr-x. 4 root root 0 25 mar 23.49 .. lrwxrwxrwx. 1 root root 0 25 mar 23.49 gpiochip0 -> ../../../devices/pci0000:00/INT344B:00/gpiochip0 Here we see that this gpiochip is on this PCI card and so on. Linus