From: Michal Simek <michal.simek@xilinx.com> To: Linus Walleij <linus.walleij@linaro.org>, Michal Simek <michal.simek@xilinx.com> Cc: "linux-kernel@vger.kernel.org" <linux-kernel@vger.kernel.org>, Michal Simek <monstr@monstr.eu>, Steffen Trumtrar <s.trumtrar@pengutronix.de>, Peter Crosthwaite <peter.crosthwaite@xilinx.com>, "open list:GPIO SUBSYSTEM" <linux-gpio@vger.kernel.org>, Rob Herring <robherring2@gmail.com>, Linux ARM <linux-arm-kernel@lists.infradead.org> Subject: Re: [PATCH] gpio: zynq: Setup chip->base based on alias ID Date: Thu, 26 Apr 2018 15:35:26 +0200 [thread overview] Message-ID: <f9dd4f64-4026-f495-5810-32affb5b0944@xilinx.com> (raw) In-Reply-To: <CACRpkdbOa+AvhQT1RCWA_zQuTpp4qfNjZBFDOKLdaFqMGAe+cw@mail.gmail.com> Hi Linus, On 26.4.2018 15:08, Linus Walleij wrote: > On Wed, Apr 11, 2018 at 3:55 PM, Michal Simek <michal.simek@xilinx.com> wrote: > > Thanks for your patch! > >> In past Xilinx gpio-zynq driver was setting up gpio chip->base as 0 >> which was chagned to autodetection when driver was upstreamed. Older >> systems, which were using this old version, setup SW stack which expects >> zynq gpio base as 0 and right now there is no way how to set this up. >> >> The patch is adding an option to setup chip->base based on aliases which >> is something what some other drivers are doing too. >> It means when gpio0 alias is setup then chip->base is 0. When gpio alias >> is not setup gpiochip_find_base() set it up properly which is current >> behavior. >> >> Signed-off-by: Michal Simek <michal.simek@xilinx.com> > > In general, we stopped any controlling of the GPIO base. I know. > > Also this use would have to be OK with the DT maintainers > as I never saw this use of alias before. If you grep gpio drivers you will see that these gpio-zx, gpio-mvebu, gpio-mxc, gpio-mxs, gpio-vf610 are using that. > > Please describe the use case for this. > > The only use case which I can think about is userspace sysfs > and then I would really like to know why these userspace > users cannot use the character device that is nowadays > supported by libgpiod and there is even patches for some > IoT libraries to use it. The character device makes the > GPIO Linux "base" irrelevant for userspace. > > GPIO sysfs is deprecated and moved to the obsolete ABI. > > If there are legacy applications that use this I would have > to consider it, but since this has been -1 since the driver > was merged I find that unlikely. Yes, it is about legacy application which I have seen recently and there is no source code for application calls it because board vendor doesn't provide it. You are right that -1 was used from the beginning in mainline but unfortunately this driver was in vendor tree for a while and it uses 0 there. In upstreaming this was changed to -1 but customers have a lot of code which developed against vendor tree and they want to use latest&greatest. And without this they are not able to run that applications. I found that this logic is already in 5 drivers in mainline that's why I send this patch to be +1. Thanks, Michal
WARNING: multiple messages have this Message-ID (diff)
From: michal.simek@xilinx.com (Michal Simek) To: linux-arm-kernel@lists.infradead.org Subject: [PATCH] gpio: zynq: Setup chip->base based on alias ID Date: Thu, 26 Apr 2018 15:35:26 +0200 [thread overview] Message-ID: <f9dd4f64-4026-f495-5810-32affb5b0944@xilinx.com> (raw) In-Reply-To: <CACRpkdbOa+AvhQT1RCWA_zQuTpp4qfNjZBFDOKLdaFqMGAe+cw@mail.gmail.com> Hi Linus, On 26.4.2018 15:08, Linus Walleij wrote: > On Wed, Apr 11, 2018 at 3:55 PM, Michal Simek <michal.simek@xilinx.com> wrote: > > Thanks for your patch! > >> In past Xilinx gpio-zynq driver was setting up gpio chip->base as 0 >> which was chagned to autodetection when driver was upstreamed. Older >> systems, which were using this old version, setup SW stack which expects >> zynq gpio base as 0 and right now there is no way how to set this up. >> >> The patch is adding an option to setup chip->base based on aliases which >> is something what some other drivers are doing too. >> It means when gpio0 alias is setup then chip->base is 0. When gpio alias >> is not setup gpiochip_find_base() set it up properly which is current >> behavior. >> >> Signed-off-by: Michal Simek <michal.simek@xilinx.com> > > In general, we stopped any controlling of the GPIO base. I know. > > Also this use would have to be OK with the DT maintainers > as I never saw this use of alias before. If you grep gpio drivers you will see that these gpio-zx, gpio-mvebu, gpio-mxc, gpio-mxs, gpio-vf610 are using that. > > Please describe the use case for this. > > The only use case which I can think about is userspace sysfs > and then I would really like to know why these userspace > users cannot use the character device that is nowadays > supported by libgpiod and there is even patches for some > IoT libraries to use it. The character device makes the > GPIO Linux "base" irrelevant for userspace. > > GPIO sysfs is deprecated and moved to the obsolete ABI. > > If there are legacy applications that use this I would have > to consider it, but since this has been -1 since the driver > was merged I find that unlikely. Yes, it is about legacy application which I have seen recently and there is no source code for application calls it because board vendor doesn't provide it. You are right that -1 was used from the beginning in mainline but unfortunately this driver was in vendor tree for a while and it uses 0 there. In upstreaming this was changed to -1 but customers have a lot of code which developed against vendor tree and they want to use latest&greatest. And without this they are not able to run that applications. I found that this logic is already in 5 drivers in mainline that's why I send this patch to be +1. Thanks, Michal
next prev parent reply other threads:[~2018-04-26 13:35 UTC|newest] Thread overview: 28+ messages / expand[flat|nested] mbox.gz Atom feed top 2018-04-11 13:55 [PATCH] gpio: zynq: Setup chip->base based on alias ID Michal Simek 2018-04-11 13:55 ` Michal Simek 2018-04-26 13:08 ` Linus Walleij 2018-04-26 13:08 ` Linus Walleij 2018-04-26 13:35 ` Michal Simek [this message] 2018-04-26 13:35 ` Michal Simek 2018-05-02 10:10 ` Linus Walleij 2018-05-02 10:10 ` Linus Walleij 2018-05-02 10:15 ` Michal Simek 2018-05-02 10:15 ` Michal Simek 2018-05-02 13:01 ` Linus Walleij 2018-05-02 13:01 ` Linus Walleij 2018-05-02 13:41 ` Michal Simek 2018-05-02 13:41 ` Michal Simek 2018-05-02 13:56 ` Linus Walleij 2018-05-02 13:56 ` Linus Walleij 2018-05-02 14:19 ` Michal Simek 2018-05-02 14:19 ` Michal Simek 2018-05-15 13:26 ` Michal Simek 2018-05-15 13:26 ` Michal Simek 2018-05-23 9:44 ` Linus Walleij 2018-05-23 9:44 ` Linus Walleij 2018-05-23 10:26 ` Michal Simek 2018-05-23 10:26 ` Michal Simek 2018-05-23 9:42 ` Linus Walleij 2018-05-23 9:42 ` Linus Walleij 2018-05-23 10:17 ` Michal Simek 2018-05-23 10:17 ` Michal Simek
Reply instructions: You may reply publicly to this message via plain-text email using any one of the following methods: * Save the following mbox file, import it into your mail client, and reply-to-all from there: mbox Avoid top-posting and favor interleaved quoting: https://en.wikipedia.org/wiki/Posting_style#Interleaved_style * Reply using the --to, --cc, and --in-reply-to switches of git-send-email(1): git send-email \ --in-reply-to=f9dd4f64-4026-f495-5810-32affb5b0944@xilinx.com \ --to=michal.simek@xilinx.com \ --cc=linus.walleij@linaro.org \ --cc=linux-arm-kernel@lists.infradead.org \ --cc=linux-gpio@vger.kernel.org \ --cc=linux-kernel@vger.kernel.org \ --cc=monstr@monstr.eu \ --cc=peter.crosthwaite@xilinx.com \ --cc=robherring2@gmail.com \ --cc=s.trumtrar@pengutronix.de \ /path/to/YOUR_REPLY https://kernel.org/pub/software/scm/git/docs/git-send-email.html * If your mail client supports setting the In-Reply-To header via mailto: links, try the mailto: linkBe sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes, see mirroring instructions on how to clone and mirror all data and code used by this external index.