diff options
author | Jeff Garzik <jgarzik@pretzel.yyz.us> | 2005-06-27 22:05:03 -0400 |
---|---|---|
committer | Jeff Garzik <jgarzik@pobox.com> | 2005-06-27 22:05:03 -0400 |
commit | 1bad3f4050b2a641bbfeaddb2717b28247311e9c (patch) | |
tree | bdc2efda40f48e0fbb64e6b9aca793e95ac72fc4 /drivers/serial/8250_fourport.c | |
parent | 747802ab478399f13ff57751c2ebd22577be4eeb (diff) | |
parent | c7b645f934e52a54af58142d91fb51f881f8ce26 (diff) |
Merge /spare/repo/linux-2.6/
Diffstat (limited to 'drivers/serial/8250_fourport.c')
-rw-r--r-- | drivers/serial/8250_fourport.c | 53 |
1 files changed, 53 insertions, 0 deletions
diff --git a/drivers/serial/8250_fourport.c b/drivers/serial/8250_fourport.c new file mode 100644 index 00000000000..e9b4d908ef4 --- /dev/null +++ b/drivers/serial/8250_fourport.c @@ -0,0 +1,53 @@ +/* + * linux/drivers/serial/8250_fourport.c + * + * Copyright (C) 2005 Russell King. + * Data taken from include/asm-i386/serial.h + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ +#include <linux/module.h> +#include <linux/init.h> +#include <linux/serial_8250.h> + +#define PORT(_base,_irq) \ + { \ + .iobase = _base, \ + .irq = _irq, \ + .uartclk = 1843200, \ + .iotype = UPIO_PORT, \ + .flags = UPF_BOOT_AUTOCONF | UPF_FOURPORT, \ + } + +static struct plat_serial8250_port fourport_data[] = { + PORT(0x1a0, 9), + PORT(0x1a8, 9), + PORT(0x1b0, 9), + PORT(0x1b8, 9), + PORT(0x2a0, 5), + PORT(0x2a8, 5), + PORT(0x2b0, 5), + PORT(0x2b8, 5), + { }, +}; + +static struct platform_device fourport_device = { + .name = "serial8250", + .id = 1, + .dev = { + .platform_data = fourport_data, + }, +}; + +static int __init fourport_init(void) +{ + return platform_device_register(&fourport_device); +} + +module_init(fourport_init); + +MODULE_AUTHOR("Russell King"); +MODULE_DESCRIPTION("8250 serial probe module for AST Fourport cards"); +MODULE_LICENSE("GPL"); |