public inbox for linux-arm-kernel@lists.infradead.org 
 help / color / mirror / Atom feed
From: tony@atomide•com (Tony Lindgren)
To: linux-arm-kernel@lists•infradead.org
Subject: [PATCH v8 01-b/11] OMAP: GPIO: Make omap_gpio_show_rev bank specific
Date: Wed, 1 Dec 2010 10:34:35 -0800	[thread overview]
Message-ID: <20101201183435.GJ17222@atomide.com> (raw)
In-Reply-To: <1290689318-10191-2-git-send-email-charu@ti.com>

Otherwise GPIO init on 16xx may try to access uninitialized GPIO
bank as the MPUIO bank does not have a revision register.

Signed-off-by: Tony Lindgren <tony@atomide•com>

--- a/arch/arm/plat-omap/gpio.c
+++ b/arch/arm/plat-omap/gpio.c
@@ -1689,16 +1689,16 @@ static struct clk * gpio5_fck;
 static struct clk *gpio_iclks[OMAP34XX_NR_GPIOS];
 #endif
 
-static void __init omap_gpio_show_rev(void)
+static void __init omap_gpio_show_rev(struct gpio_bank *bank)
 {
 	u32 rev;
 
-	if (cpu_is_omap16xx())
-		rev = __raw_readw(gpio_bank[1].base + OMAP1610_GPIO_REVISION);
+	if (cpu_is_omap16xx() && !(bank->method != METHOD_MPUIO))
+		rev = __raw_readw(bank->base + OMAP1610_GPIO_REVISION);
 	else if (cpu_is_omap24xx() || cpu_is_omap34xx())
-		rev = __raw_readl(gpio_bank[0].base + OMAP24XX_GPIO_REVISION);
+		rev = __raw_readl(bank->base + OMAP24XX_GPIO_REVISION);
 	else if (cpu_is_omap44xx())
-		rev = __raw_readl(gpio_bank[0].base + OMAP4_GPIO_REVISION);
+		rev = __raw_readl(bank->base + OMAP4_GPIO_REVISION);
 	else
 		return;
 
@@ -1958,7 +1958,7 @@ static int __init _omap_gpio_init(void)
 		}
 	}
 
-	omap_gpio_show_rev();
+	omap_gpio_show_rev(bank);
 
 	return 0;
 }

  reply	other threads:[~2010-12-01 18:34 UTC|newest]

Thread overview: 37+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2010-11-25 12:48 [PATCH v8 00/11] OMAP: GPIO: Implement GPIO as platform device Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 01/11] OMAP: GPIO: prepare for platform driver Varadarajan, Charulatha
2010-12-01 18:34   ` Tony Lindgren [this message]
2010-12-09 19:18   ` Kevin Hilman
2010-12-09 21:33     ` Cousson, Benoit
2010-12-09 22:19       ` Kevin Hilman
2010-12-09 22:29         ` Cousson, Benoit
2010-12-09 23:19     ` Kevin Hilman
2010-11-25 12:48 ` [PATCH v8 02/11] OMAP15xx: GPIO: Introduce support for GPIO init Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 03/11] OMAP16xx: " Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 04/11] OMAP7xx: " Varadarajan, Charulatha
2010-12-07  5:20   ` Cory Maccarrone
2010-12-07  5:43     ` Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 05/11] OMAP2420: hwmod data: Add GPIO Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 06/11] OMAP2430: " Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 07/11] OMAP3: " Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 08/11] OMAP4: " Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 09/11] OMAP2+: GPIO: device registration Varadarajan, Charulatha
2010-11-25 12:48 ` [PATCH v8 10/11] OMAP: GPIO: Implement GPIO as a platform device Varadarajan, Charulatha
2010-12-07  5:19   ` Cory Maccarrone
2010-12-07  5:35     ` Varadarajan, Charulatha
2010-12-07  7:08       ` Varadarajan, Charulatha
2010-12-07 22:07         ` Tony Lindgren
2010-11-25 12:48 ` [PATCH v8 11/11] OMAP: GPIO: Remove omap_gpio_init() Varadarajan, Charulatha
2010-12-01 18:33 ` [PATCH v8 00/11] OMAP: GPIO: Implement GPIO as platform device Tony Lindgren
2010-12-02  9:58   ` Kevin Hilman
2010-12-02 14:18     ` Varadarajan, Charulatha
2010-12-04 21:25       ` Tony Lindgren
2010-12-07 23:23         ` [PATCH 12/11] omap1: Fix gpio mpuio bank to work for multi-omap for 7xx/15xx/16xx Tony Lindgren
2010-12-08  1:04           ` Tony Lindgren
2010-12-08  4:22           ` Varadarajan, Charulatha
2010-12-10 16:04           ` Janusz Krzysztofik
2010-12-10 17:41             ` Tony Lindgren
2010-12-08  0:54 ` [PATCH v8 00/11] OMAP: GPIO: Implement GPIO as platform device Tony Lindgren
2010-12-09 19:33 ` [PATCH 13/11] OMAP2+: GPIO: ensure bank wakeups are enabled by default Kevin Hilman
2010-12-10  0:07   ` Tony Lindgren
2010-12-10  0:14     ` Kevin Hilman

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=20101201183435.GJ17222@atomide.com \
    --to=tony@atomide$(echo .)com \
    --cc=linux-arm-kernel@lists$(echo .)infradead.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
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