ARM: OMAP: GPIO: fix MPUIO check
- MPUIO doesn't exist on OMAP2 - no error was returned for too big MPUIO numbers Signed-off-by: Imre Deak <imre.deak@solidboot.com> Signed-off-by: Juha Yrjola <juha.yrjola@solidboot.com> Signed-off-by: Tony Lindgren <tony@atomide.com>
This commit is contained in:
parent
0e0a198690
commit
5a4e86daa2
|
@ -110,8 +110,6 @@
|
||||||
#define OMAP24XX_GPIO_CLEARDATAOUT 0x0090
|
#define OMAP24XX_GPIO_CLEARDATAOUT 0x0090
|
||||||
#define OMAP24XX_GPIO_SETDATAOUT 0x0094
|
#define OMAP24XX_GPIO_SETDATAOUT 0x0094
|
||||||
|
|
||||||
#define OMAP_MPUIO_MASK (~OMAP_MAX_GPIO_LINES & 0xff)
|
|
||||||
|
|
||||||
struct gpio_bank {
|
struct gpio_bank {
|
||||||
void __iomem *base;
|
void __iomem *base;
|
||||||
u16 irq;
|
u16 irq;
|
||||||
|
@ -216,11 +214,13 @@ static inline int gpio_valid(int gpio)
|
||||||
{
|
{
|
||||||
if (gpio < 0)
|
if (gpio < 0)
|
||||||
return -1;
|
return -1;
|
||||||
|
#ifndef CONFIG_ARCH_OMAP24XX
|
||||||
if (OMAP_GPIO_IS_MPUIO(gpio)) {
|
if (OMAP_GPIO_IS_MPUIO(gpio)) {
|
||||||
if ((gpio & OMAP_MPUIO_MASK) > 16)
|
if (gpio >= MAX_GPIO_LINES + 16)
|
||||||
return -1;
|
return -1;
|
||||||
return 0;
|
return 0;
|
||||||
}
|
}
|
||||||
|
#endif
|
||||||
#ifdef CONFIG_ARCH_OMAP15XX
|
#ifdef CONFIG_ARCH_OMAP15XX
|
||||||
if (cpu_is_omap15xx() && gpio < 16)
|
if (cpu_is_omap15xx() && gpio < 16)
|
||||||
return 0;
|
return 0;
|
||||||
|
|
Loading…
Reference in a new issue