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 /arch/m68k/include | |
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>
Diffstat (limited to 'arch/m68k/include')
-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; |