33 #include <linux/module.h>
37 #include <linux/kernel.h>
40 #include <linux/slab.h>
42 #include <mach/hardware.h>
64 unsigned int cpu_speed,
65 unsigned int cmd_time)
67 return sa1100_pcmcia_mecr_bs(cmd_time, cpu_speed);
84 unsigned int bs_io, bs_mem, bs_attr;
88 bs_io = skt->
ops->get_timing(skt, cpu_clock,
timing.io);
89 bs_mem = skt->
ops->get_timing(skt, cpu_clock,
timing.mem);
90 bs_attr = skt->
ops->get_timing(skt, cpu_clock,
timing.attr);
94 old_mecr = mecr =
MECR;
104 debug(skt, 2,
"FAST %X BSM %X BSA %X BSIO %X\n",
112 #ifdef CONFIG_CPU_FREQ
120 if (freqs->
new > freqs->
old)
121 sa1100_pcmcia_set_mecr(skt, freqs->
new);
125 if (freqs->
new < freqs->
old)
126 sa1100_pcmcia_set_mecr(skt, freqs->
new);
129 sa1100_pcmcia_set_mecr(skt, freqs->
new);
141 return sa1100_pcmcia_set_mecr(skt,
cpufreq_get(0));
149 unsigned long mecr =
MECR;
166 static const char *skt_names[] = {
171 #define SKT_DEV_INFO_SIZE(n) \
172 (sizeof(struct skt_dev_info) + (n)*sizeof(struct soc_pcmcia_socket))
207 ops->
get_timing = sa1100_pcmcia_default_mecr_timing;
212 #ifdef CONFIG_CPU_FREQ
213 ops->frequency_change = sa1100_pcmcia_frequency_change;
234 for (i = 0; i <
nr; i++) {
235 skt = &sinfo->
skt[
i];
257 static int __init sa11xx_pcmcia_init(
void)
263 static void __exit sa11xx_pcmcia_exit(
void) {}