2012-04-16 15:31:48 +03:00
|
|
|
From 7ab075944587e4fe7e2688b1df85452e3d86edb5 Mon Sep 17 00:00:00 2001
|
|
|
|
From: John Crispin <blogic@openwrt.org>
|
|
|
|
Date: Tue, 21 Feb 2012 14:25:21 +0100
|
|
|
|
Subject: [PATCH 28/70] MIPS: lantiq: convert falcon debug uart to clkdev api
|
|
|
|
|
|
|
|
On Falcon SoCs we have a secondary serial port that can be used to help
|
|
|
|
debug the voice core. For the port to work several clocking bits need to
|
|
|
|
be activated. We convert the code to clkdev api.
|
|
|
|
|
|
|
|
Signed-off-by: John Crispin <blogic@openwrt.org>
|
|
|
|
---
|
|
|
|
arch/mips/lantiq/falcon/prom.c | 4 +---
|
|
|
|
drivers/tty/serial/lantiq.c | 7 ++++---
|
|
|
|
2 files changed, 5 insertions(+), 6 deletions(-)
|
|
|
|
|
|
|
|
--- a/arch/mips/lantiq/falcon/prom.c
|
|
|
|
+++ b/arch/mips/lantiq/falcon/prom.c
|
|
|
|
@@ -43,10 +43,8 @@ ltq_soc_setup(void)
|
|
|
|
ltq_register_asc(0);
|
|
|
|
ltq_register_wdt();
|
|
|
|
falcon_register_gpio();
|
|
|
|
- if (register_asc1) {
|
|
|
|
+ if (register_asc1)
|
|
|
|
ltq_register_asc(1);
|
|
|
|
- ltq_sysctl_activate(SYSCTL_SYS1, ACTS_ASC1_ACT);
|
|
|
|
- }
|
|
|
|
}
|
|
|
|
|
|
|
|
void __init
|
|
|
|
--- a/drivers/tty/serial/lantiq.c
|
|
|
|
+++ b/drivers/tty/serial/lantiq.c
|
|
|
|
@@ -117,6 +117,7 @@ static DEFINE_SPINLOCK(ltq_asc_lock);
|
|
|
|
|
|
|
|
struct ltq_uart_port {
|
|
|
|
struct uart_port port;
|
|
|
|
+ struct clk *fpiclk;
|
|
|
|
struct clk *clk;
|
|
|
|
unsigned int tx_irq;
|
|
|
|
unsigned int rx_irq;
|
|
|
|
@@ -319,7 +320,7 @@ lqasc_startup(struct uart_port *port)
|
|
|
|
struct ltq_uart_port *ltq_port = to_ltq_uart_port(port);
|
|
|
|
int retval;
|
|
|
|
|
|
|
|
- port->uartclk = clk_get_rate(ltq_port->clk);
|
|
|
|
+ port->uartclk = clk_get_rate(ltq_port->fpiclk);
|
|
|
|
|
|
|
|
ltq_w32_mask(ASCCLC_DISS | ASCCLC_RMCMASK, (1 << ASCCLC_RMCOFFSET),
|
|
|
|
port->membase + LTQ_ASC_CLC);
|
2012-04-17 15:51:02 +03:00
|
|
|
@@ -646,7 +647,7 @@ lqasc_console_setup(struct console *co,
|
2012-04-16 15:31:48 +03:00
|
|
|
|
|
|
|
port = <q_port->port;
|
|
|
|
|
|
|
|
- port->uartclk = clk_get_rate(ltq_port->clk);
|
|
|
|
+ port->uartclk = clk_get_rate(ltq_port->fpiclk);
|
|
|
|
|
|
|
|
if (options)
|
|
|
|
uart_parse_options(options, &baud, &parity, &bits, &flow);
|
2012-04-17 15:51:02 +03:00
|
|
|
@@ -731,7 +732,7 @@ lqasc_probe(struct platform_device *pdev
|
2012-04-16 15:31:48 +03:00
|
|
|
port->irq = tx_irq; /* unused, just to be backward-compatibe */
|
|
|
|
port->mapbase = mmres->start;
|
|
|
|
|
|
|
|
- ltq_port->clk = clk;
|
|
|
|
+ ltq_port->fpiclk = clk;
|
|
|
|
|
|
|
|
ltq_port->tx_irq = tx_irq;
|
|
|
|
ltq_port->rx_irq = rx_irq;
|