aboutsummaryrefslogtreecommitdiffstats
path: root/drivers/serial
diff options
context:
space:
mode:
authorLinus Torvalds <torvalds@g5.osdl.org>2006-01-07 13:45:22 -0500
committerLinus Torvalds <torvalds@g5.osdl.org>2006-01-07 13:45:22 -0500
commit8995b161eb142b843094dd614b80e4cce1d66352 (patch)
treeffd9988879441d5ec45ab96b2e06f4fcb1210158 /drivers/serial
parentcc918c7ab7da017bfaf9661420bb5c462e057cfb (diff)
parentfe5dd7c73d328b255286b6b65ca19dd34447f709 (diff)
Merge master.kernel.org:/home/rmk/linux-2.6-arm
Diffstat (limited to 'drivers/serial')
-rw-r--r--drivers/serial/amba-pl010.c4
-rw-r--r--drivers/serial/amba-pl011.c13
-rw-r--r--drivers/serial/s3c2410.c7
3 files changed, 6 insertions, 18 deletions
diff --git a/drivers/serial/amba-pl010.c b/drivers/serial/amba-pl010.c
index ddd0307fece2..48f6e872314b 100644
--- a/drivers/serial/amba-pl010.c
+++ b/drivers/serial/amba-pl010.c
@@ -47,12 +47,12 @@
47#include <linux/tty_flip.h> 47#include <linux/tty_flip.h>
48#include <linux/serial_core.h> 48#include <linux/serial_core.h>
49#include <linux/serial.h> 49#include <linux/serial.h>
50#include <linux/amba/bus.h>
51#include <linux/amba/serial.h>
50 52
51#include <asm/io.h> 53#include <asm/io.h>
52#include <asm/irq.h> 54#include <asm/irq.h>
53#include <asm/hardware.h> 55#include <asm/hardware.h>
54#include <asm/hardware/amba.h>
55#include <asm/hardware/amba_serial.h>
56 56
57#define UART_NR 2 57#define UART_NR 2
58 58
diff --git a/drivers/serial/amba-pl011.c b/drivers/serial/amba-pl011.c
index d84476ee6592..129670556162 100644
--- a/drivers/serial/amba-pl011.c
+++ b/drivers/serial/amba-pl011.c
@@ -47,12 +47,12 @@
47#include <linux/tty_flip.h> 47#include <linux/tty_flip.h>
48#include <linux/serial_core.h> 48#include <linux/serial_core.h>
49#include <linux/serial.h> 49#include <linux/serial.h>
50#include <linux/amba/bus.h>
51#include <linux/amba/serial.h>
52#include <linux/clk.h>
50 53
51#include <asm/io.h> 54#include <asm/io.h>
52#include <asm/sizes.h> 55#include <asm/sizes.h>
53#include <asm/hardware/amba.h>
54#include <asm/hardware/clock.h>
55#include <asm/hardware/amba_serial.h>
56 56
57#define UART_NR 14 57#define UART_NR 14
58 58
@@ -761,10 +761,6 @@ static int pl011_probe(struct amba_device *dev, void *id)
761 goto unmap; 761 goto unmap;
762 } 762 }
763 763
764 ret = clk_use(uap->clk);
765 if (ret)
766 goto putclk;
767
768 uap->port.dev = &dev->dev; 764 uap->port.dev = &dev->dev;
769 uap->port.mapbase = dev->res.start; 765 uap->port.mapbase = dev->res.start;
770 uap->port.membase = base; 766 uap->port.membase = base;
@@ -782,8 +778,6 @@ static int pl011_probe(struct amba_device *dev, void *id)
782 if (ret) { 778 if (ret) {
783 amba_set_drvdata(dev, NULL); 779 amba_set_drvdata(dev, NULL);
784 amba_ports[i] = NULL; 780 amba_ports[i] = NULL;
785 clk_unuse(uap->clk);
786 putclk:
787 clk_put(uap->clk); 781 clk_put(uap->clk);
788 unmap: 782 unmap:
789 iounmap(base); 783 iounmap(base);
@@ -808,7 +802,6 @@ static int pl011_remove(struct amba_device *dev)
808 amba_ports[i] = NULL; 802 amba_ports[i] = NULL;
809 803
810 iounmap(uap->port.membase); 804 iounmap(uap->port.membase);
811 clk_unuse(uap->clk);
812 clk_put(uap->clk); 805 clk_put(uap->clk);
813 kfree(uap); 806 kfree(uap);
814 return 0; 807 return 0;
diff --git a/drivers/serial/s3c2410.c b/drivers/serial/s3c2410.c
index 47681c4654e4..fe83ce6fef52 100644
--- a/drivers/serial/s3c2410.c
+++ b/drivers/serial/s3c2410.c
@@ -72,12 +72,12 @@
72#include <linux/serial_core.h> 72#include <linux/serial_core.h>
73#include <linux/serial.h> 73#include <linux/serial.h>
74#include <linux/delay.h> 74#include <linux/delay.h>
75#include <linux/clk.h>
75 76
76#include <asm/io.h> 77#include <asm/io.h>
77#include <asm/irq.h> 78#include <asm/irq.h>
78 79
79#include <asm/hardware.h> 80#include <asm/hardware.h>
80#include <asm/hardware/clock.h>
81 81
82#include <asm/arch/regs-serial.h> 82#include <asm/arch/regs-serial.h>
83#include <asm/arch/regs-gpio.h> 83#include <asm/arch/regs-gpio.h>
@@ -782,11 +782,9 @@ static void s3c24xx_serial_set_termios(struct uart_port *port,
782 782
783 if (ourport->baudclk != NULL && !IS_ERR(ourport->baudclk)) { 783 if (ourport->baudclk != NULL && !IS_ERR(ourport->baudclk)) {
784 clk_disable(ourport->baudclk); 784 clk_disable(ourport->baudclk);
785 clk_unuse(ourport->baudclk);
786 ourport->baudclk = NULL; 785 ourport->baudclk = NULL;
787 } 786 }
788 787
789 clk_use(clk);
790 clk_enable(clk); 788 clk_enable(clk);
791 789
792 ourport->clksrc = clksrc; 790 ourport->clksrc = clksrc;
@@ -1077,9 +1075,6 @@ static int s3c24xx_serial_init_port(struct s3c24xx_uart_port *ourport,
1077 1075
1078 ourport->clk = clk_get(&platdev->dev, "uart"); 1076 ourport->clk = clk_get(&platdev->dev, "uart");
1079 1077
1080 if (ourport->clk != NULL && !IS_ERR(ourport->clk))
1081 clk_use(ourport->clk);
1082
1083 dbg("port: map=%08x, mem=%08x, irq=%d, clock=%ld\n", 1078 dbg("port: map=%08x, mem=%08x, irq=%d, clock=%ld\n",
1084 port->mapbase, port->membase, port->irq, port->uartclk); 1079 port->mapbase, port->membase, port->irq, port->uartclk);
1085 1080