[msm7x27a]: Enable UART for 7x27a target.
Change-Id: I90a8581f211f32173ec2e4e879debde573bc1bd2
diff --git a/platform/msm7x27a/platform.c b/platform/msm7x27a/platform.c
index 43ea05b..a7e34c8 100644
--- a/platform/msm7x27a/platform.c
+++ b/platform/msm7x27a/platform.c
@@ -51,9 +51,10 @@
void platform_early_init(void)
{
- //uart3_clock_init();
- //uart_init();
-
+#if WITH_DEBUG_UART
+ uart1_clock_init();
+ uart_init();
+#endif
platform_init_interrupts();
platform_init_timer();
}
diff --git a/platform/msm_shared/proc_comm.c b/platform/msm_shared/proc_comm.c
index eff7a43..fca1358 100644
--- a/platform/msm_shared/proc_comm.c
+++ b/platform/msm_shared/proc_comm.c
@@ -257,6 +257,12 @@
clock_set_rate(UART2_CLK, 19200000);
}
+void uart1_clock_init(void)
+{
+ clock_enable(UART1_CLK);
+ clock_set_rate(UART1_CLK, 19200000 / 4);
+}
+
void mddi_clock_init(unsigned num, unsigned rate)
{
unsigned clock_id;
diff --git a/platform/msm_shared/uart.c b/platform/msm_shared/uart.c
index 7f5c7e2..af6dcd9 100644
--- a/platform/msm_shared/uart.c
+++ b/platform/msm_shared/uart.c
@@ -121,6 +121,8 @@
static unsigned uart_ready = 0;
#if PLATFORM_MSM7X30
static unsigned uart_base = MSM_UART2_BASE;
+#elif PLATFORM_MSM7X27A
+static unsigned uart_base = MSM_UART1_BASE;
#else
static unsigned uart_base = MSM_UART3_BASE;
#endif
@@ -136,7 +138,7 @@
uwr(0x10, UART_CR); /* reset receiver */
uwr(0x20, UART_CR); /* reset transmitter */
-#if PLATFORM_QSD8K || PLATFORM_MSM7X30
+#if PLATFORM_QSD8K || PLATFORM_MSM7X30 || PLATFORM_MSM7X27A
/* TCXO */
uwr(0x06, UART_MREG);
uwr(0xF1, UART_NREG);