Commit dabd14684bc2375bf69f227f04993a4dc2fd3a16
Committed by
Dominik Brodowski
1 parent
701a5dc05a
Exists in
master
and in
4 other branches
PCMCIA: sa1111: remove duplicated initializers
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Showing 6 changed files with 17 additions and 43 deletions Side-by-side Diff
drivers/pcmcia/pxa2xx_lubbock.c
... | ... | @@ -201,12 +201,8 @@ |
201 | 201 | |
202 | 202 | static struct pcmcia_low_level lubbock_pcmcia_ops = { |
203 | 203 | .owner = THIS_MODULE, |
204 | - .hw_init = sa1111_pcmcia_hw_init, | |
205 | - .hw_shutdown = sa1111_pcmcia_hw_shutdown, | |
206 | - .socket_state = sa1111_pcmcia_socket_state, | |
207 | 204 | .configure_socket = lubbock_pcmcia_configure_socket, |
208 | 205 | .socket_init = sa1111_pcmcia_socket_init, |
209 | - .socket_suspend = sa1111_pcmcia_socket_suspend, | |
210 | 206 | .first = 0, |
211 | 207 | .nr = 2, |
212 | 208 | }; |
drivers/pcmcia/sa1100_badge4.c
... | ... | @@ -127,14 +127,8 @@ |
127 | 127 | |
128 | 128 | static struct pcmcia_low_level badge4_pcmcia_ops = { |
129 | 129 | .owner = THIS_MODULE, |
130 | - .hw_init = sa1111_pcmcia_hw_init, | |
131 | - .hw_shutdown = sa1111_pcmcia_hw_shutdown, | |
132 | - .socket_state = sa1111_pcmcia_socket_state, | |
133 | 130 | .configure_socket = badge4_pcmcia_configure_socket, |
134 | - | |
135 | 131 | .socket_init = sa1111_pcmcia_socket_init, |
136 | - .socket_suspend = sa1111_pcmcia_socket_suspend, | |
137 | - | |
138 | 132 | .first = 0, |
139 | 133 | .nr = 2, |
140 | 134 | }; |
drivers/pcmcia/sa1100_jornada720.c
... | ... | @@ -22,23 +22,6 @@ |
22 | 22 | #define SOCKET1_POWER (GPIO_GPIO1 | GPIO_GPIO3) |
23 | 23 | #define SOCKET1_3V GPIO_GPIO3 |
24 | 24 | |
25 | -static int jornada720_pcmcia_hw_init(struct soc_pcmcia_socket *skt) | |
26 | -{ | |
27 | - struct sa1111_pcmcia_socket *s = to_skt(skt); | |
28 | - unsigned int pin = GPIO_A0 | GPIO_A1 | GPIO_A2 | GPIO_A3; | |
29 | - | |
30 | - /* | |
31 | - * What is all this crap for? | |
32 | - */ | |
33 | - GRER |= 0x00000002; | |
34 | - /* Set GPIO_A<3:1> to be outputs for PCMCIA/CF power controller: */ | |
35 | - sa1111_set_io_dir(s->dev, pin, 0, 0); | |
36 | - sa1111_set_io(s->dev, pin, 0); | |
37 | - sa1111_set_sleep_io(s->dev, pin, 0); | |
38 | - | |
39 | - return sa1111_pcmcia_hw_init(skt); | |
40 | -} | |
41 | - | |
42 | 25 | static int |
43 | 26 | jornada720_pcmcia_configure_socket(struct soc_pcmcia_socket *skt, const socket_state_t *state) |
44 | 27 | { |
45 | 28 | |
46 | 29 | |
... | ... | @@ -108,14 +91,8 @@ |
108 | 91 | |
109 | 92 | static struct pcmcia_low_level jornada720_pcmcia_ops = { |
110 | 93 | .owner = THIS_MODULE, |
111 | - .hw_init = jornada720_pcmcia_hw_init, | |
112 | - .hw_shutdown = sa1111_pcmcia_hw_shutdown, | |
113 | - .socket_state = sa1111_pcmcia_socket_state, | |
114 | 94 | .configure_socket = jornada720_pcmcia_configure_socket, |
115 | - | |
116 | 95 | .socket_init = sa1111_pcmcia_socket_init, |
117 | - .socket_suspend = sa1111_pcmcia_socket_suspend, | |
118 | - | |
119 | 96 | .first = 0, |
120 | 97 | .nr = 2, |
121 | 98 | }; |
... | ... | @@ -125,6 +102,15 @@ |
125 | 102 | int ret = -ENODEV; |
126 | 103 | |
127 | 104 | if (machine_is_jornada720()) { |
105 | + unsigned int pin = GPIO_A0 | GPIO_A1 | GPIO_A2 | GPIO_A3; | |
106 | + | |
107 | + GRER |= 0x00000002; | |
108 | + | |
109 | + /* Set GPIO_A<3:1> to be outputs for PCMCIA/CF power controller: */ | |
110 | + sa1111_set_io_dir(dev, pin, 0, 0); | |
111 | + sa1111_set_io(dev, pin, 0); | |
112 | + sa1111_set_sleep_io(dev, pin, 0); | |
113 | + | |
128 | 114 | sa11xx_drv_pcmcia_ops(&jornada720_pcmcia_ops); |
129 | 115 | ret = sa1111_pcmcia_add(dev, &jornada720_pcmcia_ops, |
130 | 116 | sa11xx_drv_pcmcia_add_one); |
drivers/pcmcia/sa1100_neponset.c
... | ... | @@ -116,12 +116,8 @@ |
116 | 116 | |
117 | 117 | static struct pcmcia_low_level neponset_pcmcia_ops = { |
118 | 118 | .owner = THIS_MODULE, |
119 | - .hw_init = sa1111_pcmcia_hw_init, | |
120 | - .hw_shutdown = sa1111_pcmcia_hw_shutdown, | |
121 | - .socket_state = sa1111_pcmcia_socket_state, | |
122 | 119 | .configure_socket = neponset_pcmcia_configure_socket, |
123 | 120 | .socket_init = neponset_pcmcia_socket_init, |
124 | - .socket_suspend = sa1111_pcmcia_socket_suspend, | |
125 | 121 | .first = 0, |
126 | 122 | .nr = 2, |
127 | 123 | }; |
drivers/pcmcia/sa1111_generic.c
... | ... | @@ -28,12 +28,12 @@ |
28 | 28 | { 1, IRQ_S1_BVD1_STSCHG, "SA1111 CF BVD1" }, |
29 | 29 | }; |
30 | 30 | |
31 | -int sa1111_pcmcia_hw_init(struct soc_pcmcia_socket *skt) | |
31 | +static int sa1111_pcmcia_hw_init(struct soc_pcmcia_socket *skt) | |
32 | 32 | { |
33 | 33 | return soc_pcmcia_request_irqs(skt, irqs, ARRAY_SIZE(irqs)); |
34 | 34 | } |
35 | 35 | |
36 | -void sa1111_pcmcia_hw_shutdown(struct soc_pcmcia_socket *skt) | |
36 | +static void sa1111_pcmcia_hw_shutdown(struct soc_pcmcia_socket *skt) | |
37 | 37 | { |
38 | 38 | soc_pcmcia_free_irqs(skt, irqs, ARRAY_SIZE(irqs)); |
39 | 39 | } |
... | ... | @@ -111,7 +111,7 @@ |
111 | 111 | soc_pcmcia_enable_irqs(skt, irqs, ARRAY_SIZE(irqs)); |
112 | 112 | } |
113 | 113 | |
114 | -void sa1111_pcmcia_socket_suspend(struct soc_pcmcia_socket *skt) | |
114 | +static void sa1111_pcmcia_socket_suspend(struct soc_pcmcia_socket *skt) | |
115 | 115 | { |
116 | 116 | soc_pcmcia_disable_irqs(skt, irqs, ARRAY_SIZE(irqs)); |
117 | 117 | } |
... | ... | @@ -121,6 +121,11 @@ |
121 | 121 | { |
122 | 122 | struct sa1111_pcmcia_socket *s; |
123 | 123 | int i, ret = 0; |
124 | + | |
125 | + ops->hw_init = sa1111_pcmcia_hw_init; | |
126 | + ops->hw_shutdown = sa1111_pcmcia_hw_shutdown; | |
127 | + ops->socket_state = sa1111_pcmcia_socket_state; | |
128 | + ops->socket_suspend = sa1111_pcmcia_socket_suspend; | |
124 | 129 | |
125 | 130 | s = kzalloc(sizeof(*s) * ops->nr, GFP_KERNEL); |
126 | 131 | if (!s) |
drivers/pcmcia/sa1111_generic.h
... | ... | @@ -15,12 +15,9 @@ |
15 | 15 | int sa1111_pcmcia_add(struct sa1111_dev *dev, struct pcmcia_low_level *ops, |
16 | 16 | int (*add)(struct soc_pcmcia_socket *)); |
17 | 17 | |
18 | -extern int sa1111_pcmcia_hw_init(struct soc_pcmcia_socket *); | |
19 | -extern void sa1111_pcmcia_hw_shutdown(struct soc_pcmcia_socket *); | |
20 | 18 | extern void sa1111_pcmcia_socket_state(struct soc_pcmcia_socket *, struct pcmcia_state *); |
21 | 19 | extern int sa1111_pcmcia_configure_socket(struct soc_pcmcia_socket *, const socket_state_t *); |
22 | 20 | extern void sa1111_pcmcia_socket_init(struct soc_pcmcia_socket *); |
23 | -extern void sa1111_pcmcia_socket_suspend(struct soc_pcmcia_socket *); | |
24 | 21 | |
25 | 22 | extern int pcmcia_badge4_init(struct device *); |
26 | 23 | extern int pcmcia_jornada720_init(struct device *); |