[U-Boot] [PATCH v2] gpio: omap_gpio: Fix valid gpio range for AM33XX

Axel Lin
2013-06-21T03:07:17Z

AM33XX has 4 gpio banks, thus the valid gpio range should be 0 ... 127.

Signed-off-by: Axel Lin <axel.lin@ingics.com>
---
v2: define OMAP_MAX_GPIO and use it.
This change is mainly based on Stefan's comment, however I use
OMAP_MAX_GPIO instead of CONFIG_OMAP_MAX_GPIO because having CONFIG_ prefix
seems meaning it can be configurable in configs.

drivers/gpio/omap_gpio.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/drivers/gpio/omap_gpio.c b/drivers/gpio/omap_gpio.c
index a30d7f0..6fa57c9 100644
--- a/drivers/gpio/omap_gpio.c
+++ b/drivers/gpio/omap_gpio.c
@@ -40,6 +40,12 @@
#include <asm/io.h>
#include <asm/errno.h>

+#if defined(CONFIG_AM33XX)
+#define OMAP_MAX_GPIO 128
+#else
+#define OMAP_MAX_GPIO 192
+#endif
+
#define OMAP_GPIO_DIR_OUT 0
#define OMAP_GPIO_DIR_IN 1

@@ -55,7 +61,7 @@ static inline int get_gpio_index(int gpio)

int gpio_is_valid(int gpio)
{
- return (gpio >= 0) && (gpio < 192);
+ return (gpio >= 0) && (gpio < OMAP_MAX_GPIO);
}

static int check_gpio(int gpio)
--
1.8.1.2