From: Sascha Hauer <s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
To: Shawn Guo <shawn.guo-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
Cc: devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org,
linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
patches-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org
Subject: Re: [PATCH 1/2] gpio/mxc: get rid of the uses of cpu_is_mx()
Date: Mon, 4 Jul 2011 18:44:57 +0200 [thread overview]
Message-ID: <20110704164457.GJ6069@pengutronix.de> (raw)
In-Reply-To: <20110704102008.GH10245-+NayF8gZjK2ctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
On Mon, Jul 04, 2011 at 06:20:09PM +0800, Shawn Guo wrote:
> On Mon, Jul 04, 2011 at 11:49:21AM +0200, Sascha Hauer wrote:
> > On Mon, Jul 04, 2011 at 05:28:01PM +0800, Shawn Guo wrote:
> > > On Mon, Jul 04, 2011 at 08:46:03AM +0200, Sascha Hauer wrote:
> > > > On Sun, Jul 03, 2011 at 04:16:56PM +0800, Shawn Guo wrote:
> > > > > The patch removes all the uses of cpu_is_mx(). Instead, it utilizes
> > > > > platform_device_id to distinguish the gpio differences among SoCs.
> > > > >
> > > > > Signed-off-by: Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
> > > > > Cc: Grant Likely <grant.likely-s3s/WqlpOiPyB63q8FvJNQ@public.gmane.org>
> > > > > Cc: Sascha Hauer <s.hauer-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
> > > > > ---
> > > > > arch/arm/mach-imx/mm-imx1.c | 8 +-
> > > > > arch/arm/mach-imx/mm-imx21.c | 12 +-
> > > > > arch/arm/mach-imx/mm-imx25.c | 8 +-
> > > > > arch/arm/mach-imx/mm-imx27.c | 12 +-
> > > > > arch/arm/mach-imx/mm-imx31.c | 6 +-
> > > > > arch/arm/mach-imx/mm-imx35.c | 6 +-
> > > > > arch/arm/mach-mx5/mm-mx50.c | 12 +-
> > > > > arch/arm/mach-mx5/mm.c | 22 ++--
> > > > > arch/arm/plat-mxc/devices/platform-gpio-mxc.c | 4 +-
> > > > > arch/arm/plat-mxc/include/mach/common.h | 2 +-
> > > > > drivers/gpio/gpio-mxc.c | 123 +++++++++++++++++++++----
> > > > > 11 files changed, 151 insertions(+), 64 deletions(-)
> > > >
> > > >
> > > > Summarizing the renames up:
> > > >
> > > > i.MX1 -> imx1-gpio
> > > > i.MX21 -> imx2-gpio
> > > > i.MX25 -> imx-gpio
> > > > i.MX27 -> imx2-gpio
> > > > i.MX31 -> imx-gpio
> > > > i.MX35 -> imx-gpio
> > > > i.MX50 -> imx-gpio
> > > > i.MX51 -> imx-gpio
> > > > i.MX53 -> imx-gpio
> > > >
> > > > This is not consitent. Please either use the full SoC name for all
> > > > device ids or use something like imx-gpio-v1, v2...
> > > > It's not good that the i.MX25 is not a imx2 and that the 'modern'
> > > > i.MXs only have imx-gpio. We all know that your hardware designers
> > > > will be creative enough to change the register layout again in the
> > > > future.
> > > >
> > > Ok, here it is. It's avoid confusion in machine code, but every
> > > time we add a new soc we need to change touch this table, even if
> > > the new soc has a total compatible gpio to IMX_GPIO. I'm fine with
> > > either way.
> >
> > I'm also fine with imx1-gpio, imx21-gpio and imx31-gpio and all others
> > get a compatible entry with these like you did in the uart driver.
> > I only want to avoid to have a imx2-gpio when a i.MX25 is incompatible
> > with this.
> > When we do so it's probably worth to put this into a comment somewhere
> > next to the id table. I can imagine people wonder why only such ancient
> > SoCs are supported.
> >
> So I'm going to do the following to address your concern. Please let
> me know if you still do not buy it.
>
> static struct platform_device_id mxc_gpio_devtype[] = {
> {
> .name = "imx1-gpio",
> .driver_data = IMX1_GPIO,
> }, {
> .name = "imx21-gpio",
> .driver_data = IMX2_GPIO,
> }, {
> .name = "imx25-gpio",
> .driver_data = IMX_GPIO,
> }, {
> .name = "imx27-gpio",
> .driver_data = IMX2_GPIO,
> }, {
> .name = "imx-gpio",
> .driver_data = IMX_GPIO,
> }, {
> /* sentinel */
> }
> };
Read again. We have three different types of gpio irq controllers, they
are first seen in the imx1, imx21 and imx31. So all others can be made
compatible with these three. No need for imx-gpio, imx25-gpio and
imx27-gpio. The mxc_gpio_devtype would look like this:
static struct platform_device_id mxc_gpio_devtype[] = {
{
.name = "imx1-gpio",
.driver_data = IMX1_GPIO,
}, {
.name = "imx21-gpio",
.driver_data = IMX21_GPIO,
}, {
.name = "imx31-gpio",
.driver_data = IMX31_GPIO,
}, {
}
};
Sascha
--
Pengutronix e.K. | |
Industrial Linux Solutions | http://www.pengutronix.de/ |
Peiner Str. 6-8, 31137 Hildesheim, Germany | Phone: +49-5121-206917-0 |
Amtsgericht Hildesheim, HRA 2686 | Fax: +49-5121-206917-5555 |
next prev parent reply other threads:[~2011-07-04 16:44 UTC|newest]
Thread overview: 19+ messages / expand[flat|nested] mbox.gz Atom feed top
2011-07-03 8:16 [PATCH 0/2] Add device tree probe for imx/mxc gpio Shawn Guo
[not found] ` <1309681017-22970-1-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-07-03 8:16 ` [PATCH 1/2] gpio/mxc: get rid of the uses of cpu_is_mx() Shawn Guo
[not found] ` <1309681017-22970-2-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-07-04 6:10 ` Grant Likely
2011-07-04 6:11 ` Grant Likely
[not found] ` <20110704061028.GE15152-e0URQFbLeQY2iJbIjFUEsiwD8/FfD2ys@public.gmane.org>
2011-07-04 16:56 ` Shawn Guo
[not found] ` <20110704165627.GA10594-+NayF8gZjK2ctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2011-07-04 16:59 ` Grant Likely
2011-07-04 6:46 ` Sascha Hauer
[not found] ` <20110704064603.GW6069-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-07-04 9:28 ` Shawn Guo
2011-07-04 9:49 ` Sascha Hauer
[not found] ` <20110704094921.GG6069-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-07-04 10:20 ` Shawn Guo
[not found] ` <20110704102008.GH10245-+NayF8gZjK2ctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2011-07-04 16:44 ` Sascha Hauer [this message]
[not found] ` <20110704164457.GJ6069-bIcnvbaLZ9MEGnE8C9+IrQ@public.gmane.org>
2011-07-05 3:01 ` Shawn Guo
[not found] ` <20110705030121.GB10594-+NayF8gZjK2ctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2011-07-05 3:04 ` Grant Likely
[not found] ` <CACxGe6vHF-k+xCXAYwuQnuRXceD9eJC4ZpSbNXey8cnkX1J2-Q-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2011-07-05 3:32 ` Shawn Guo
[not found] ` <20110705033227.GC10594-+NayF8gZjK2ctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2011-07-05 16:42 ` Sascha Hauer
2011-07-06 5:21 ` Shawn Guo
[not found] ` <20110704092800.GG10245-+NayF8gZjK2ctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
2011-07-04 15:23 ` Grant Likely
2011-07-03 8:16 ` [PATCH 2/2] gpio/mxc: add device tree probe support Shawn Guo
[not found] ` <1309681017-22970-3-git-send-email-shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
2011-07-04 6:19 ` Grant Likely
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=20110704164457.GJ6069@pengutronix.de \
--to=s.hauer-bicnvbalz9megne8c9+irq@public.gmane.org \
--cc=devicetree-discuss-uLR06cmDAlY/bJ5BZ2RsiQ@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=patches-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=shawn.guo-KZfg59tc24xl57MIdRCFDg@public.gmane.org \
/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: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).