[SERIAL] Update ibmasm driver for death of register_serial&co
authorMax Asbock <masbock@us.ibm.com>
Wed, 7 Sep 2005 20:37:00 +0000 (21:37 +0100)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Wed, 7 Sep 2005 20:37:00 +0000 (21:37 +0100)
Signed-off-by: Max Asbock <masbock@us.ibm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
drivers/misc/Kconfig
drivers/misc/ibmasm/uart.c

index dea6589d153364c0b2f6799f1380e3f99ca180a4..7fc692a8f5b080e8db0a7c133db23f5eced53297 100644 (file)
@@ -6,7 +6,7 @@ menu "Misc devices"
 
 config IBM_ASM
        tristate "Device driver for IBM RSA service processor"
-       depends on X86 && PCI && EXPERIMENTAL && BROKEN
+       depends on X86 && PCI && EXPERIMENTAL
        ---help---
          This option enables device driver support for in-band access to the
          IBM RSA (Condor) service processor in eServer xSeries systems.
index 914804512dba00e7bb3971927a6b7b77e0382824..7e98434cfa37783b1cfa45c1bd162e9a56f14bad 100644 (file)
 #include <linux/termios.h>
 #include <linux/tty.h>
 #include <linux/serial_core.h>
-#include <linux/serial.h>
 #include <linux/serial_reg.h>
+#include <linux/serial_8250.h>
 #include "ibmasm.h"
 #include "lowlevel.h"
 
 
 void ibmasm_register_uart(struct service_processor *sp)
 {
-       struct serial_struct serial;
+       struct uart_port uport;
        void __iomem *iomem_base;
 
        iomem_base = sp->base_address + SCOUT_COM_B_BASE;
@@ -47,14 +47,14 @@ void ibmasm_register_uart(struct service_processor *sp)
                return;
        }
 
-       memset(&serial, 0, sizeof(serial));
-       serial.irq              = sp->irq;
-       serial.baud_base        = 3686400 / 16;
-       serial.flags            = UPF_AUTOPROBE | UPF_SHARE_IRQ;
-       serial.io_type          = UPIO_MEM;
-       serial.iomem_base       = iomem_base;
+       memset(&uport, 0, sizeof(struct uart_port));
+       uport.irq       = sp->irq;
+       uport.uartclk   = 3686400;
+       uport.flags     = UPF_AUTOPROBE | UPF_SHARE_IRQ;
+       uport.iotype    = UPIO_MEM;
+       uport.membase   = iomem_base;
 
-       sp->serial_line = register_serial(&serial);
+       sp->serial_line = serial8250_register_port(&uport);
        if (sp->serial_line < 0) {
                dev_err(sp->dev, "Failed to register serial port\n");
                return;
@@ -68,5 +68,5 @@ void ibmasm_unregister_uart(struct service_processor *sp)
                return;
 
        disable_uart_interrupts(sp->base_address);
-       unregister_serial(sp->serial_line);
+       serial8250_unregister_port(sp->serial_line);
 }