Commit | Line | Data |
---|---|---|
e0980daf PS |
1 | /* |
2 | * linux/drivers/serial/8250_exar.c | |
3 | * | |
4 | * Written by Paul B Schroeder < pschroeder "at" uplogix "dot" com > | |
5 | * Based on 8250_boca. | |
6 | * | |
7 | * Copyright (C) 2005 Russell King. | |
8 | * Data taken from include/asm-i386/serial.h | |
9 | * | |
10 | * This program is free software; you can redistribute it and/or modify | |
11 | * it under the terms of the GNU General Public License version 2 as | |
12 | * published by the Free Software Foundation. | |
13 | */ | |
14 | #include <linux/module.h> | |
15 | #include <linux/init.h> | |
16 | #include <linux/serial_8250.h> | |
17 | ||
18 | #define PORT(_base,_irq) \ | |
19 | { \ | |
20 | .iobase = _base, \ | |
21 | .irq = _irq, \ | |
22 | .uartclk = 1843200, \ | |
23 | .iotype = UPIO_PORT, \ | |
24 | .flags = UPF_BOOT_AUTOCONF, \ | |
25 | } | |
26 | ||
27 | static struct plat_serial8250_port exar_data[] = { | |
28 | PORT(0x100, 5), | |
29 | PORT(0x108, 5), | |
30 | PORT(0x110, 5), | |
31 | PORT(0x118, 5), | |
32 | { }, | |
33 | }; | |
34 | ||
35 | static struct platform_device exar_device = { | |
36 | .name = "serial8250", | |
37 | .id = PLAT8250_DEV_EXAR_ST16C554, | |
38 | .dev = { | |
39 | .platform_data = exar_data, | |
40 | }, | |
41 | }; | |
42 | ||
43 | static int __init exar_init(void) | |
44 | { | |
45 | return platform_device_register(&exar_device); | |
46 | } | |
47 | ||
48 | module_init(exar_init); | |
49 | ||
50 | MODULE_AUTHOR("Paul B Schroeder"); | |
51 | MODULE_DESCRIPTION("8250 serial probe module for Exar cards"); | |
52 | MODULE_LICENSE("GPL"); |