aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/pcmcia/sa11xx_base.c
diff options
context:
space:
mode:
authorRussell King - ARM Linux <linux@arm.linux.org.uk>2009-03-29 14:42:44 -0400
committerDominik Brodowski <linux@dominikbrodowski.net>2009-11-09 02:30:11 -0500
commit701a5dc05ad99a06958b3f97cb69d99b47cebee3 (patch)
treef91ab0cb2179fa771dfb3c9929bc09c7580ec3f8 /drivers/pcmcia/sa11xx_base.c
parentda4f007375197d6683461b995d404b01a7fdf2f5 (diff)
PCMCIA: sa1111: wrap soc_pcmcia_socket to contain sa1111 specific data
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk> Signed-off-by: Dominik Brodowski <linux@dominikbrodowski.net>
Diffstat (limited to 'drivers/pcmcia/sa11xx_base.c')
-rw-r--r--drivers/pcmcia/sa11xx_base.c21
1 files changed, 14 insertions, 7 deletions
diff --git a/drivers/pcmcia/sa11xx_base.c b/drivers/pcmcia/sa11xx_base.c
index 92a43486adc6..4db81490e5c9 100644
--- a/drivers/pcmcia/sa11xx_base.c
+++ b/drivers/pcmcia/sa11xx_base.c
@@ -171,7 +171,7 @@ static const char *skt_names[] = {
171#define SKT_DEV_INFO_SIZE(n) \ 171#define SKT_DEV_INFO_SIZE(n) \
172 (sizeof(struct skt_dev_info) + (n)*sizeof(struct soc_pcmcia_socket)) 172 (sizeof(struct skt_dev_info) + (n)*sizeof(struct soc_pcmcia_socket))
173 173
174static int sa11xx_drv_pcmcia_add_one(struct soc_pcmcia_socket *skt) 174int sa11xx_drv_pcmcia_add_one(struct soc_pcmcia_socket *skt)
175{ 175{
176 skt->res_skt.start = _PCMCIA(skt->nr); 176 skt->res_skt.start = _PCMCIA(skt->nr);
177 skt->res_skt.end = _PCMCIA(skt->nr) + PCMCIASp - 1; 177 skt->res_skt.end = _PCMCIA(skt->nr) + PCMCIASp - 1;
@@ -195,14 +195,10 @@ static int sa11xx_drv_pcmcia_add_one(struct soc_pcmcia_socket *skt)
195 195
196 return soc_pcmcia_add_one(skt); 196 return soc_pcmcia_add_one(skt);
197} 197}
198EXPORT_SYMBOL(sa11xx_drv_pcmcia_add_one);
198 199
199int sa11xx_drv_pcmcia_probe(struct device *dev, struct pcmcia_low_level *ops, 200void sa11xx_drv_pcmcia_ops(struct pcmcia_low_level *ops)
200 int first, int nr)
201{ 201{
202 struct skt_dev_info *sinfo;
203 struct soc_pcmcia_socket *skt;
204 int i;
205
206 /* 202 /*
207 * set default MECR calculation if the board specific 203 * set default MECR calculation if the board specific
208 * code did not specify one... 204 * code did not specify one...
@@ -216,6 +212,17 @@ int sa11xx_drv_pcmcia_probe(struct device *dev, struct pcmcia_low_level *ops,
216#ifdef CONFIG_CPU_FREQ 212#ifdef CONFIG_CPU_FREQ
217 ops->frequency_change = sa1100_pcmcia_frequency_change; 213 ops->frequency_change = sa1100_pcmcia_frequency_change;
218#endif 214#endif
215}
216EXPORT_SYMBOL(sa11xx_drv_pcmcia_ops);
217
218int sa11xx_drv_pcmcia_probe(struct device *dev, struct pcmcia_low_level *ops,
219 int first, int nr)
220{
221 struct skt_dev_info *sinfo;
222 struct soc_pcmcia_socket *skt;
223 int i, ret = 0;
224
225 sa11xx_drv_pcmcia_ops(ops);
219 226
220 sinfo = kzalloc(SKT_DEV_INFO_SIZE(nr), GFP_KERNEL); 227 sinfo = kzalloc(SKT_DEV_INFO_SIZE(nr), GFP_KERNEL);
221 if (!sinfo) 228 if (!sinfo)