]> git.karo-electronics.de Git - mv-sheeva.git/blobdiff - drivers/serial/bcm63xx_uart.c
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6
[mv-sheeva.git] / drivers / serial / bcm63xx_uart.c
index 37ad0c449937c34046dcef72ec0db07af35b42ec..a1a0e55d0807761b59ae9a9374c3de5c03f57007 100644 (file)
@@ -35,7 +35,7 @@
 #include <bcm63xx_regs.h>
 #include <bcm63xx_io.h>
 
-#define BCM63XX_NR_UARTS       1
+#define BCM63XX_NR_UARTS       2
 
 static struct uart_port ports[BCM63XX_NR_UARTS];
 
@@ -784,7 +784,7 @@ static struct uart_driver bcm_uart_driver = {
        .dev_name       = "ttyS",
        .major          = TTY_MAJOR,
        .minor          = 64,
-       .nr             = 1,
+       .nr             = BCM63XX_NR_UARTS,
        .cons           = BCM63XX_CONSOLE,
 };
 
@@ -826,11 +826,12 @@ static int __devinit bcm_uart_probe(struct platform_device *pdev)
        port->dev = &pdev->dev;
        port->fifosize = 16;
        port->uartclk = clk_get_rate(clk) / 2;
+       port->line = pdev->id;
        clk_put(clk);
 
        ret = uart_add_one_port(&bcm_uart_driver, port);
        if (ret) {
-               kfree(port);
+               ports[pdev->id].membase = 0;
                return ret;
        }
        platform_set_drvdata(pdev, port);