blob: 14eae238131dac3f72acbee5e7a4eb92ac2fc907 [file] [log] [blame]
Thomas Gleixnerd2912cb2019-06-04 10:11:33 +02001// SPDX-License-Identifier: GPL-2.0-only
Mike Rapoport8616e2f2008-10-05 10:27:22 +01002/*
3 * linux/drivers/pcmcia/pxa/pxa_cm_x2xx.c
4 *
Mike Rapoport8616e2f2008-10-05 10:27:22 +01005 * Compulab Ltd., 2003, 2007, 2008
6 * Mike Rapoport <mike@compulab.co.il>
Mike Rapoport8616e2f2008-10-05 10:27:22 +01007 */
8
9#include <linux/module.h>
10
Mike Rapoport8616e2f2008-10-05 10:27:22 +010011#include <asm/mach-types.h>
Russell King7a3f8de2011-11-05 22:06:17 +000012#include <mach/hardware.h>
Mike Rapoport8616e2f2008-10-05 10:27:22 +010013
14int cmx255_pcmcia_init(void);
15int cmx270_pcmcia_init(void);
16void cmx255_pcmcia_exit(void);
17void cmx270_pcmcia_exit(void);
18
19static int __init cmx2xx_pcmcia_init(void)
20{
21 int ret = -ENODEV;
22
23 if (machine_is_armcore() && cpu_is_pxa25x())
24 ret = cmx255_pcmcia_init();
25 else if (machine_is_armcore() && cpu_is_pxa27x())
26 ret = cmx270_pcmcia_init();
27
28 return ret;
29}
30
31static void __exit cmx2xx_pcmcia_exit(void)
32{
33 if (machine_is_armcore() && cpu_is_pxa25x())
34 cmx255_pcmcia_exit();
35 else if (machine_is_armcore() && cpu_is_pxa27x())
36 cmx270_pcmcia_exit();
37}
38
39module_init(cmx2xx_pcmcia_init);
40module_exit(cmx2xx_pcmcia_exit);
41
42MODULE_LICENSE("GPL");
43MODULE_AUTHOR("Mike Rapoport <mike@compulab.co.il>");
44MODULE_DESCRIPTION("CM-x2xx PCMCIA driver");