diff options
| author | Steven King <sfking@fdwdc.com> | 2014-05-21 19:00:33 -0400 |
|---|---|---|
| committer | Greg Ungerer <gerg@uclinux.org> | 2014-05-25 23:28:38 -0400 |
| commit | 83c6bdb827c9422fe6e02130d9546800143304c1 (patch) | |
| tree | ddd7d58034bc1f14d11e6dc4233301c37feab34b | |
| parent | ec9f8483547fa354a5747d8954cd0b91225a0b2d (diff) | |
m68knommu: Implement gpio support for m54xx.
Singed-off-by: Steven King <sfking@fdwdc.com>
Signed-off-by: Greg Ungerer <gerg@uclinux.org>
| -rw-r--r-- | arch/m68k/include/asm/m54xxsim.h | 12 | ||||
| -rw-r--r-- | arch/m68k/include/asm/mcfgpio.h | 12 |
2 files changed, 17 insertions, 7 deletions
diff --git a/arch/m68k/include/asm/m54xxsim.h b/arch/m68k/include/asm/m54xxsim.h index d3bd83887429..a5fbd17ab0a5 100644 --- a/arch/m68k/include/asm/m54xxsim.h +++ b/arch/m68k/include/asm/m54xxsim.h | |||
| @@ -55,9 +55,15 @@ | |||
| 55 | /* | 55 | /* |
| 56 | * Generic GPIO support | 56 | * Generic GPIO support |
| 57 | */ | 57 | */ |
| 58 | #define MCFGPIO_PIN_MAX 0 /* I am too lazy to count */ | 58 | #define MCFGPIO_PODR (MCF_MBAR + 0xA00) |
| 59 | #define MCFGPIO_IRQ_MAX -1 | 59 | #define MCFGPIO_PDDR (MCF_MBAR + 0xA10) |
| 60 | #define MCFGPIO_IRQ_VECBASE -1 | 60 | #define MCFGPIO_PPDR (MCF_MBAR + 0xA20) |
| 61 | #define MCFGPIO_SETR (MCF_MBAR + 0xA20) | ||
| 62 | #define MCFGPIO_CLRR (MCF_MBAR + 0xA30) | ||
| 63 | |||
| 64 | #define MCFGPIO_PIN_MAX 136 /* 128 gpio + 8 eport */ | ||
| 65 | #define MCFGPIO_IRQ_MAX 8 | ||
| 66 | #define MCFGPIO_IRQ_VECBASE MCFINT_VECBASE | ||
| 61 | 67 | ||
| 62 | /* | 68 | /* |
| 63 | * EDGE Port support. | 69 | * EDGE Port support. |
diff --git a/arch/m68k/include/asm/mcfgpio.h b/arch/m68k/include/asm/mcfgpio.h index c41ebf45f1d0..66203c334c6f 100644 --- a/arch/m68k/include/asm/mcfgpio.h +++ b/arch/m68k/include/asm/mcfgpio.h | |||
| @@ -139,7 +139,8 @@ static inline void gpio_free(unsigned gpio) | |||
| 139 | 139 | ||
| 140 | #if defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ | 140 | #if defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ |
| 141 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ | 141 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ |
| 142 | defined(CONFIG_M53xx) || defined(CONFIG_M5441x) | 142 | defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ |
| 143 | defined(CONFIG_M5441x) | ||
| 143 | /* | 144 | /* |
| 144 | * These parts have an 'Edge' Port module (external interrupt/GPIO) which uses | 145 | * These parts have an 'Edge' Port module (external interrupt/GPIO) which uses |
| 145 | * read-modify-write to change an output and a GPIO module which has separate | 146 | * read-modify-write to change an output and a GPIO module which has separate |
| @@ -195,7 +196,8 @@ static inline u32 __mcfgpio_ppdr(unsigned gpio) | |||
| 195 | return MCFSIM2_GPIO1READ; | 196 | return MCFSIM2_GPIO1READ; |
| 196 | #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ | 197 | #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ |
| 197 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ | 198 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ |
| 198 | defined(CONFIG_M53xx) || defined(CONFIG_M5441x) | 199 | defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ |
| 200 | defined(CONFIG_M5441x) | ||
| 199 | #if !defined(CONFIG_M5441x) | 201 | #if !defined(CONFIG_M5441x) |
| 200 | if (gpio < 8) | 202 | if (gpio < 8) |
| 201 | return MCFEPORT_EPPDR; | 203 | return MCFEPORT_EPPDR; |
| @@ -237,7 +239,8 @@ static inline u32 __mcfgpio_podr(unsigned gpio) | |||
| 237 | return MCFSIM2_GPIO1WRITE; | 239 | return MCFSIM2_GPIO1WRITE; |
| 238 | #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ | 240 | #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ |
| 239 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ | 241 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ |
| 240 | defined(CONFIG_M53xx) || defined(CONFIG_M5441x) | 242 | defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ |
| 243 | defined(CONFIG_M5441x) | ||
| 241 | #if !defined(CONFIG_M5441x) | 244 | #if !defined(CONFIG_M5441x) |
| 242 | if (gpio < 8) | 245 | if (gpio < 8) |
| 243 | return MCFEPORT_EPDR; | 246 | return MCFEPORT_EPDR; |
| @@ -279,7 +282,8 @@ static inline u32 __mcfgpio_pddr(unsigned gpio) | |||
| 279 | return MCFSIM2_GPIO1ENABLE; | 282 | return MCFSIM2_GPIO1ENABLE; |
| 280 | #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ | 283 | #elif defined(CONFIG_M520x) || defined(CONFIG_M523x) || \ |
| 281 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ | 284 | defined(CONFIG_M527x) || defined(CONFIG_M528x) || \ |
| 282 | defined(CONFIG_M53xx) || defined(CONFIG_M5441x) | 285 | defined(CONFIG_M53xx) || defined(CONFIG_M54xx) || \ |
| 286 | defined(CONFIG_M5441x) | ||
| 283 | #if !defined(CONFIG_M5441x) | 287 | #if !defined(CONFIG_M5441x) |
| 284 | if (gpio < 8) | 288 | if (gpio < 8) |
| 285 | return MCFEPORT_EPDDR; | 289 | return MCFEPORT_EPDDR; |
