aboutsummaryrefslogtreecommitdiffstats
path: root/arch/arm/mach-ep93xx/include
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@linux-foundation.org>2011-10-27 02:39:10 -0400
committerLinus Torvalds <torvalds@linux-foundation.org>2011-10-27 02:39:10 -0400
commitca90666287401b475d9e0becf85bd02f069f1de8 (patch)
treead4dd789f8d5ab639c78997d3655b94fcbf660ef /arch/arm/mach-ep93xx/include
parent60325f0c6ee7c6b68f95aaa643260fb33d4bdd88 (diff)
parent374e759db148d1e874e3afb76707082af67e0984 (diff)
Merge branch 'gpio' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm
* 'gpio' of http://ftp.arm.linux.org.uk/pub/linux/arm/kernel/git-cur/linux-2.6-arm: (43 commits) ARM: 7135/1: ep93xx: bring back missing <mach/gpio.h> ARM: 7104/1: plat-pxa: break out GPIO driver specifics ARM: 7103/1: plat-pxa: move PXA GPIO driver to GPIO subsystem ARM: 7042/3: mach-ep93xx: break out GPIO driver specifics ARM: 7101/1: arm/tegra: Replace <mach/gpio.h> with <mach/gpio-tegra.h> ARM: 7094/1: arm/tegra: Move EN_VDD_1V05_GPIO to board-harmony.h ARM: 7083/1: rewrite U300 GPIO to use gpiolib ARM: 7074/1: gpio: davinci: eliminate unused variable warnings ARM: 7063/1: Orion: gpio: add missing include of linux/types.h ARM: 7055/1: arm/tegra: mach/gpio.h: include linux/types.h to fix build ARM: 7054/1: arm/tegra: Delete custom gpio_to_irq, and irq_to_gpio ARM: 7053/1: gpio/tegra: Implement gpio_chip.to_irq ARM: 7052/1: gpio/tegra: Remove use of irq_to_gpio ARM: 7057/1: mach-pnx4008: rename GPIO header ARM: 7056/1: plat-nomadik: kill off <plat/gpio.h> ARM: 7050/1: mach-sa1100: delete irq_to_gpio() function ARM: 7049/1: mach-sa1100: move SA1100 GPIO driver to GPIO subsystem ARM: 7045/1: mach-lpc32xx: break out GPIO driver specifics ARM: 7044/1: mach-lpc32xx: move LPC32XX GPIO driver to GPIO subsystem ARM: 7043/1: mach-ixp2000: rename GPIO header ... Fix up trivial conflicts in arch/arm/mach-u300/Kconfig manually
Diffstat (limited to 'arch/arm/mach-ep93xx/include')
-rw-r--r--arch/arm/mach-ep93xx/include/mach/gpio-ep93xx.h100
-rw-r--r--arch/arm/mach-ep93xx/include/mach/gpio.h121
2 files changed, 101 insertions, 120 deletions
diff --git a/arch/arm/mach-ep93xx/include/mach/gpio-ep93xx.h b/arch/arm/mach-ep93xx/include/mach/gpio-ep93xx.h
new file mode 100644
index 000000000000..8aff2ea35877
--- /dev/null
+++ b/arch/arm/mach-ep93xx/include/mach/gpio-ep93xx.h
@@ -0,0 +1,100 @@
1/* Include file for the EP93XX GPIO controller machine specifics */
2
3#ifndef __GPIO_EP93XX_H
4#define __GPIO_EP93XX_H
5
6/* GPIO port A. */
7#define EP93XX_GPIO_LINE_A(x) ((x) + 0)
8#define EP93XX_GPIO_LINE_EGPIO0 EP93XX_GPIO_LINE_A(0)
9#define EP93XX_GPIO_LINE_EGPIO1 EP93XX_GPIO_LINE_A(1)
10#define EP93XX_GPIO_LINE_EGPIO2 EP93XX_GPIO_LINE_A(2)
11#define EP93XX_GPIO_LINE_EGPIO3 EP93XX_GPIO_LINE_A(3)
12#define EP93XX_GPIO_LINE_EGPIO4 EP93XX_GPIO_LINE_A(4)
13#define EP93XX_GPIO_LINE_EGPIO5 EP93XX_GPIO_LINE_A(5)
14#define EP93XX_GPIO_LINE_EGPIO6 EP93XX_GPIO_LINE_A(6)
15#define EP93XX_GPIO_LINE_EGPIO7 EP93XX_GPIO_LINE_A(7)
16
17/* GPIO port B. */
18#define EP93XX_GPIO_LINE_B(x) ((x) + 8)
19#define EP93XX_GPIO_LINE_EGPIO8 EP93XX_GPIO_LINE_B(0)
20#define EP93XX_GPIO_LINE_EGPIO9 EP93XX_GPIO_LINE_B(1)
21#define EP93XX_GPIO_LINE_EGPIO10 EP93XX_GPIO_LINE_B(2)
22#define EP93XX_GPIO_LINE_EGPIO11 EP93XX_GPIO_LINE_B(3)
23#define EP93XX_GPIO_LINE_EGPIO12 EP93XX_GPIO_LINE_B(4)
24#define EP93XX_GPIO_LINE_EGPIO13 EP93XX_GPIO_LINE_B(5)
25#define EP93XX_GPIO_LINE_EGPIO14 EP93XX_GPIO_LINE_B(6)
26#define EP93XX_GPIO_LINE_EGPIO15 EP93XX_GPIO_LINE_B(7)
27
28/* GPIO port C. */
29#define EP93XX_GPIO_LINE_C(x) ((x) + 40)
30#define EP93XX_GPIO_LINE_ROW0 EP93XX_GPIO_LINE_C(0)
31#define EP93XX_GPIO_LINE_ROW1 EP93XX_GPIO_LINE_C(1)
32#define EP93XX_GPIO_LINE_ROW2 EP93XX_GPIO_LINE_C(2)
33#define EP93XX_GPIO_LINE_ROW3 EP93XX_GPIO_LINE_C(3)
34#define EP93XX_GPIO_LINE_ROW4 EP93XX_GPIO_LINE_C(4)
35#define EP93XX_GPIO_LINE_ROW5 EP93XX_GPIO_LINE_C(5)
36#define EP93XX_GPIO_LINE_ROW6 EP93XX_GPIO_LINE_C(6)
37#define EP93XX_GPIO_LINE_ROW7 EP93XX_GPIO_LINE_C(7)
38
39/* GPIO port D. */
40#define EP93XX_GPIO_LINE_D(x) ((x) + 24)
41#define EP93XX_GPIO_LINE_COL0 EP93XX_GPIO_LINE_D(0)
42#define EP93XX_GPIO_LINE_COL1 EP93XX_GPIO_LINE_D(1)
43#define EP93XX_GPIO_LINE_COL2 EP93XX_GPIO_LINE_D(2)
44#define EP93XX_GPIO_LINE_COL3 EP93XX_GPIO_LINE_D(3)
45#define EP93XX_GPIO_LINE_COL4 EP93XX_GPIO_LINE_D(4)
46#define EP93XX_GPIO_LINE_COL5 EP93XX_GPIO_LINE_D(5)
47#define EP93XX_GPIO_LINE_COL6 EP93XX_GPIO_LINE_D(6)
48#define EP93XX_GPIO_LINE_COL7 EP93XX_GPIO_LINE_D(7)
49
50/* GPIO port E. */
51#define EP93XX_GPIO_LINE_E(x) ((x) + 32)
52#define EP93XX_GPIO_LINE_GRLED EP93XX_GPIO_LINE_E(0)
53#define EP93XX_GPIO_LINE_RDLED EP93XX_GPIO_LINE_E(1)
54#define EP93XX_GPIO_LINE_DIORn EP93XX_GPIO_LINE_E(2)
55#define EP93XX_GPIO_LINE_IDECS1n EP93XX_GPIO_LINE_E(3)
56#define EP93XX_GPIO_LINE_IDECS2n EP93XX_GPIO_LINE_E(4)
57#define EP93XX_GPIO_LINE_IDEDA0 EP93XX_GPIO_LINE_E(5)
58#define EP93XX_GPIO_LINE_IDEDA1 EP93XX_GPIO_LINE_E(6)
59#define EP93XX_GPIO_LINE_IDEDA2 EP93XX_GPIO_LINE_E(7)
60
61/* GPIO port F. */
62#define EP93XX_GPIO_LINE_F(x) ((x) + 16)
63#define EP93XX_GPIO_LINE_WP EP93XX_GPIO_LINE_F(0)
64#define EP93XX_GPIO_LINE_MCCD1 EP93XX_GPIO_LINE_F(1)
65#define EP93XX_GPIO_LINE_MCCD2 EP93XX_GPIO_LINE_F(2)
66#define EP93XX_GPIO_LINE_MCBVD1 EP93XX_GPIO_LINE_F(3)
67#define EP93XX_GPIO_LINE_MCBVD2 EP93XX_GPIO_LINE_F(4)
68#define EP93XX_GPIO_LINE_VS1 EP93XX_GPIO_LINE_F(5)
69#define EP93XX_GPIO_LINE_READY EP93XX_GPIO_LINE_F(6)
70#define EP93XX_GPIO_LINE_VS2 EP93XX_GPIO_LINE_F(7)
71
72/* GPIO port G. */
73#define EP93XX_GPIO_LINE_G(x) ((x) + 48)
74#define EP93XX_GPIO_LINE_EECLK EP93XX_GPIO_LINE_G(0)
75#define EP93XX_GPIO_LINE_EEDAT EP93XX_GPIO_LINE_G(1)
76#define EP93XX_GPIO_LINE_SLA0 EP93XX_GPIO_LINE_G(2)
77#define EP93XX_GPIO_LINE_SLA1 EP93XX_GPIO_LINE_G(3)
78#define EP93XX_GPIO_LINE_DD12 EP93XX_GPIO_LINE_G(4)
79#define EP93XX_GPIO_LINE_DD13 EP93XX_GPIO_LINE_G(5)
80#define EP93XX_GPIO_LINE_DD14 EP93XX_GPIO_LINE_G(6)
81#define EP93XX_GPIO_LINE_DD15 EP93XX_GPIO_LINE_G(7)
82
83/* GPIO port H. */
84#define EP93XX_GPIO_LINE_H(x) ((x) + 56)
85#define EP93XX_GPIO_LINE_DD0 EP93XX_GPIO_LINE_H(0)
86#define EP93XX_GPIO_LINE_DD1 EP93XX_GPIO_LINE_H(1)
87#define EP93XX_GPIO_LINE_DD2 EP93XX_GPIO_LINE_H(2)
88#define EP93XX_GPIO_LINE_DD3 EP93XX_GPIO_LINE_H(3)
89#define EP93XX_GPIO_LINE_DD4 EP93XX_GPIO_LINE_H(4)
90#define EP93XX_GPIO_LINE_DD5 EP93XX_GPIO_LINE_H(5)
91#define EP93XX_GPIO_LINE_DD6 EP93XX_GPIO_LINE_H(6)
92#define EP93XX_GPIO_LINE_DD7 EP93XX_GPIO_LINE_H(7)
93
94/* maximum value for gpio line identifiers */
95#define EP93XX_GPIO_LINE_MAX EP93XX_GPIO_LINE_H(7)
96
97/* maximum value for irq capable line identifiers */
98#define EP93XX_GPIO_LINE_MAX_IRQ EP93XX_GPIO_LINE_F(7)
99
100#endif /* __GPIO_EP93XX_H */
diff --git a/arch/arm/mach-ep93xx/include/mach/gpio.h b/arch/arm/mach-ep93xx/include/mach/gpio.h
index c57152c231f1..40a8c178f10d 100644
--- a/arch/arm/mach-ep93xx/include/mach/gpio.h
+++ b/arch/arm/mach-ep93xx/include/mach/gpio.h
@@ -1,120 +1 @@
1/* /* empty */
2 * arch/arm/mach-ep93xx/include/mach/gpio.h
3 */
4
5#ifndef __ASM_ARCH_GPIO_H
6#define __ASM_ARCH_GPIO_H
7
8/* GPIO port A. */
9#define EP93XX_GPIO_LINE_A(x) ((x) + 0)
10#define EP93XX_GPIO_LINE_EGPIO0 EP93XX_GPIO_LINE_A(0)
11#define EP93XX_GPIO_LINE_EGPIO1 EP93XX_GPIO_LINE_A(1)
12#define EP93XX_GPIO_LINE_EGPIO2 EP93XX_GPIO_LINE_A(2)
13#define EP93XX_GPIO_LINE_EGPIO3 EP93XX_GPIO_LINE_A(3)
14#define EP93XX_GPIO_LINE_EGPIO4 EP93XX_GPIO_LINE_A(4)
15#define EP93XX_GPIO_LINE_EGPIO5 EP93XX_GPIO_LINE_A(5)
16#define EP93XX_GPIO_LINE_EGPIO6 EP93XX_GPIO_LINE_A(6)
17#define EP93XX_GPIO_LINE_EGPIO7 EP93XX_GPIO_LINE_A(7)
18
19/* GPIO port B. */
20#define EP93XX_GPIO_LINE_B(x) ((x) + 8)
21#define EP93XX_GPIO_LINE_EGPIO8 EP93XX_GPIO_LINE_B(0)
22#define EP93XX_GPIO_LINE_EGPIO9 EP93XX_GPIO_LINE_B(1)
23#define EP93XX_GPIO_LINE_EGPIO10 EP93XX_GPIO_LINE_B(2)
24#define EP93XX_GPIO_LINE_EGPIO11 EP93XX_GPIO_LINE_B(3)
25#define EP93XX_GPIO_LINE_EGPIO12 EP93XX_GPIO_LINE_B(4)
26#define EP93XX_GPIO_LINE_EGPIO13 EP93XX_GPIO_LINE_B(5)
27#define EP93XX_GPIO_LINE_EGPIO14 EP93XX_GPIO_LINE_B(6)
28#define EP93XX_GPIO_LINE_EGPIO15 EP93XX_GPIO_LINE_B(7)
29
30/* GPIO port C. */
31#define EP93XX_GPIO_LINE_C(x) ((x) + 40)
32#define EP93XX_GPIO_LINE_ROW0 EP93XX_GPIO_LINE_C(0)
33#define EP93XX_GPIO_LINE_ROW1 EP93XX_GPIO_LINE_C(1)
34#define EP93XX_GPIO_LINE_ROW2 EP93XX_GPIO_LINE_C(2)
35#define EP93XX_GPIO_LINE_ROW3 EP93XX_GPIO_LINE_C(3)
36#define EP93XX_GPIO_LINE_ROW4 EP93XX_GPIO_LINE_C(4)
37#define EP93XX_GPIO_LINE_ROW5 EP93XX_GPIO_LINE_C(5)
38#define EP93XX_GPIO_LINE_ROW6 EP93XX_GPIO_LINE_C(6)
39#define EP93XX_GPIO_LINE_ROW7 EP93XX_GPIO_LINE_C(7)
40
41/* GPIO port D. */
42#define EP93XX_GPIO_LINE_D(x) ((x) + 24)
43#define EP93XX_GPIO_LINE_COL0 EP93XX_GPIO_LINE_D(0)
44#define EP93XX_GPIO_LINE_COL1 EP93XX_GPIO_LINE_D(1)
45#define EP93XX_GPIO_LINE_COL2 EP93XX_GPIO_LINE_D(2)
46#define EP93XX_GPIO_LINE_COL3 EP93XX_GPIO_LINE_D(3)
47#define EP93XX_GPIO_LINE_COL4 EP93XX_GPIO_LINE_D(4)
48#define EP93XX_GPIO_LINE_COL5 EP93XX_GPIO_LINE_D(5)
49#define EP93XX_GPIO_LINE_COL6 EP93XX_GPIO_LINE_D(6)
50#define EP93XX_GPIO_LINE_COL7 EP93XX_GPIO_LINE_D(7)
51
52/* GPIO port E. */
53#define EP93XX_GPIO_LINE_E(x) ((x) + 32)
54#define EP93XX_GPIO_LINE_GRLED EP93XX_GPIO_LINE_E(0)
55#define EP93XX_GPIO_LINE_RDLED EP93XX_GPIO_LINE_E(1)
56#define EP93XX_GPIO_LINE_DIORn EP93XX_GPIO_LINE_E(2)
57#define EP93XX_GPIO_LINE_IDECS1n EP93XX_GPIO_LINE_E(3)
58#define EP93XX_GPIO_LINE_IDECS2n EP93XX_GPIO_LINE_E(4)
59#define EP93XX_GPIO_LINE_IDEDA0 EP93XX_GPIO_LINE_E(5)
60#define EP93XX_GPIO_LINE_IDEDA1 EP93XX_GPIO_LINE_E(6)
61#define EP93XX_GPIO_LINE_IDEDA2 EP93XX_GPIO_LINE_E(7)
62
63/* GPIO port F. */
64#define EP93XX_GPIO_LINE_F(x) ((x) + 16)
65#define EP93XX_GPIO_LINE_WP EP93XX_GPIO_LINE_F(0)
66#define EP93XX_GPIO_LINE_MCCD1 EP93XX_GPIO_LINE_F(1)
67#define EP93XX_GPIO_LINE_MCCD2 EP93XX_GPIO_LINE_F(2)
68#define EP93XX_GPIO_LINE_MCBVD1 EP93XX_GPIO_LINE_F(3)
69#define EP93XX_GPIO_LINE_MCBVD2 EP93XX_GPIO_LINE_F(4)
70#define EP93XX_GPIO_LINE_VS1 EP93XX_GPIO_LINE_F(5)
71#define EP93XX_GPIO_LINE_READY EP93XX_GPIO_LINE_F(6)
72#define EP93XX_GPIO_LINE_VS2 EP93XX_GPIO_LINE_F(7)
73
74/* GPIO port G. */
75#define EP93XX_GPIO_LINE_G(x) ((x) + 48)
76#define EP93XX_GPIO_LINE_EECLK EP93XX_GPIO_LINE_G(0)
77#define EP93XX_GPIO_LINE_EEDAT EP93XX_GPIO_LINE_G(1)
78#define EP93XX_GPIO_LINE_SLA0 EP93XX_GPIO_LINE_G(2)
79#define EP93XX_GPIO_LINE_SLA1 EP93XX_GPIO_LINE_G(3)
80#define EP93XX_GPIO_LINE_DD12 EP93XX_GPIO_LINE_G(4)
81#define EP93XX_GPIO_LINE_DD13 EP93XX_GPIO_LINE_G(5)
82#define EP93XX_GPIO_LINE_DD14 EP93XX_GPIO_LINE_G(6)
83#define EP93XX_GPIO_LINE_DD15 EP93XX_GPIO_LINE_G(7)
84
85/* GPIO port H. */
86#define EP93XX_GPIO_LINE_H(x) ((x) + 56)
87#define EP93XX_GPIO_LINE_DD0 EP93XX_GPIO_LINE_H(0)
88#define EP93XX_GPIO_LINE_DD1 EP93XX_GPIO_LINE_H(1)
89#define EP93XX_GPIO_LINE_DD2 EP93XX_GPIO_LINE_H(2)
90#define EP93XX_GPIO_LINE_DD3 EP93XX_GPIO_LINE_H(3)
91#define EP93XX_GPIO_LINE_DD4 EP93XX_GPIO_LINE_H(4)
92#define EP93XX_GPIO_LINE_DD5 EP93XX_GPIO_LINE_H(5)
93#define EP93XX_GPIO_LINE_DD6 EP93XX_GPIO_LINE_H(6)
94#define EP93XX_GPIO_LINE_DD7 EP93XX_GPIO_LINE_H(7)
95
96/* maximum value for gpio line identifiers */
97#define EP93XX_GPIO_LINE_MAX EP93XX_GPIO_LINE_H(7)
98
99/* maximum value for irq capable line identifiers */
100#define EP93XX_GPIO_LINE_MAX_IRQ EP93XX_GPIO_LINE_F(7)
101
102/* new generic GPIO API - see Documentation/gpio.txt */
103
104#include <asm-generic/gpio.h>
105
106#define gpio_get_value __gpio_get_value
107#define gpio_set_value __gpio_set_value
108#define gpio_cansleep __gpio_cansleep
109
110/*
111 * Map GPIO A0..A7 (0..7) to irq 64..71,
112 * B0..B7 (7..15) to irq 72..79, and
113 * F0..F7 (16..24) to irq 80..87.
114 */
115#define gpio_to_irq(gpio) \
116 (((gpio) <= EP93XX_GPIO_LINE_MAX_IRQ) ? (64 + (gpio)) : -EINVAL)
117
118#define irq_to_gpio(irq) ((irq) - gpio_to_irq(0))
119
120#endif