Merge branch 'linux-linaro-lsk-v4.4-android' of git://git.linaro.org/kernel/linux...
[firefly-linux-kernel-4.4.55.git] / drivers / misc / rk29_modem / modem_rockchip_demo.c
1 #include <linux/kernel.h>\r
2 #include <linux/module.h>\r
3 #include <linux/moduleparam.h>\r
4 #include <linux/init.h>\r
5 #include <linux/device.h>\r
6 #include <linux/errno.h>\r
7 #include <linux/types.h>\r
8 #include <linux/stat.h>\r
9 #include <linux/io.h>\r
10 #include <linux/vmalloc.h>\r
11 #include <asm/io.h>\r
12 #include <asm/sizes.h>\r
13 #include <mach/iomux.h>\r
14 #include <mach/gpio.h>\r
15 #include <linux/delay.h>\r
16 \r
17 #include <linux/wakelock.h>\r
18 #include <linux/workqueue.h>\r
19 #include <linux/interrupt.h>\r
20 #include <linux/gpio.h>\r
21 #include <mach/board.h>\r
22 \r
23 #include <linux/platform_device.h>\r
24 \r
25 #include "rk29_modem.h"\r
26 \r
27 static int rk30_modem_probe(struct platform_device *pdev);\r
28 \r
29 static struct platform_driver demo_platform_driver = {\r
30     .probe  = rk30_modem_probe,\r
31     .driver = {\r
32         .name   = "rk30_modem",\r
33     },\r
34 };\r
35 \r
36 static struct rk29_modem_t demo_driver = {\r
37     .driver         = &demo_platform_driver,\r
38     .modem_power    = NULL,//&demo_io_power,\r
39     .ap_ready       = NULL,\r
40     .bp_wakeup_ap   = NULL,\r
41     .status         = MODEM_ENABLE,\r
42     .dev_init       = NULL,\r
43     .dev_uninit     = NULL,\r
44     .irq_handler    = NULL,\r
45     \r
46     .enable         = NULL,\r
47     .disable        = NULL,\r
48     .sleep          = NULL,\r
49     .wakeup         = NULL,\r
50 };\r
51 \r
52 static int rk30_modem_probe(struct platform_device *pdev)\r
53 {\r
54     int ret = 0;\r
55     struct rk29_io_t *rk29_io_info = pdev->dev.platform_data;\r
56 \r
57     printk("%s\n", __FUNCTION__);\r
58     demo_driver.modem_power = rk29_io_info;\r
59     demo_driver.modem_power->io_init();\r
60 \r
61     return 0;\r
62 }\r
63 \r
64 static int __init demo_init(void)\r
65 {\r
66     printk("%s[%d]: %s\n", __FILE__, __LINE__, __FUNCTION__);\r
67 \r
68     return rk29_modem_init(&demo_driver);\r
69 }\r
70 \r
71 static void __exit demo_exit(void)\r
72 {\r
73     printk("%s[%d]: %s\n", __FILE__, __LINE__, __FUNCTION__);\r
74     rk29_modem_exit();\r
75 }\r
76 \r
77 module_init(demo_init);\r
78 module_exit(demo_exit);\r
79 \r
80 MODULE_AUTHOR("lintao lintao@rock-chips.com, cmy@rock-chips.com");\r
81 MODULE_DESCRIPTION("ROCKCHIP modem driver");\r
82 MODULE_LICENSE("GPL");\r
83 \r