#include <linux/slab.h>
#include <linux/string.h>
#include <linux/timer.h>
+#include <linux/tty.h>
+#include <linux/serial.h>
#include <linux/serial_core.h>
#include <linux/major.h>
#include <asm/io.h>
#ifdef PCMCIA_DEBUG
static int pc_debug = PCMCIA_DEBUG;
-module_param(pc_debug, int, 0644);
+MODULE_PARM(pc_debug, "i");
#define DEBUG(n, args...) if (pc_debug>(n)) printk(KERN_DEBUG args)
static char *version = "serial_cs.c 1.134 2002/05/04 05:48:53 (David Hinds)";
#else
static int buggy_uart;
module_param(irq_mask, uint, 0444);
-module_param_array(irq_list, int, &irq_list_count, 0444);
+module_param_array(irq_list, int, irq_list_count, 0444);
module_param(do_sound, int, 0444);
module_param(buggy_uart, int, 0444);
*/
if (info->link.state & DEV_CONFIG) {
for (i = 0; i < info->ndev; i++)
- serial8250_unregister_port(info->line[i]);
+ unregister_serial(info->line[i]);
info->link.dev = NULL;
/*====================================================================*/
-static int setup_serial(struct serial_info * info, ioaddr_t iobase, int irq)
+static int setup_serial(struct serial_info * info, ioaddr_t port, int irq)
{
- struct uart_port port;
+ struct serial_struct serial;
int line;
- memset(&port, 0, sizeof (struct uart_port));
- port.iobase = iobase;
- port.irq = irq;
- port.flags = UPF_BOOT_AUTOCONF | UPF_SKIP_TEST | UPF_SHARE_IRQ;
- port.uartclk = 1843200;
+ memset(&serial, 0, sizeof (serial));
+ serial.port = port;
+ serial.irq = irq;
+ serial.flags = UPF_SKIP_TEST | UPF_SHARE_IRQ;
if (buggy_uart)
- port.flags |= UPF_BUGGY_UART;
- line = serial8250_register_port(&port);
+ serial.flags |= UPF_BUGGY_UART;
+ line = register_serial(&serial);
if (line < 0) {
- printk(KERN_NOTICE "serial_cs: serial8250_register_port() at "
- "0x%04lx, irq %d failed\n", (u_long)iobase, irq);
+ printk(KERN_NOTICE "serial_cs: register_serial() at 0x%04lx,"
+ " irq %d failed\n", (u_long) serial.port, serial.irq);
return -EINVAL;
}