diff --git a/arch/arm/mach-msm/include/mach/msm_serial_hs.h b/arch/arm/mach-msm/include/mach/msm_serial_hs.h index bae03674e15e..db7efafc133d 100644 --- a/arch/arm/mach-msm/include/mach/msm_serial_hs.h +++ b/arch/arm/mach-msm/include/mach/msm_serial_hs.h @@ -59,4 +59,5 @@ void msm_hs_request_clock_on(struct uart_port *uport); struct uart_port *msm_hs_get_uart_port(int port_index); void msm_hs_set_mctrl(struct uart_port *uport, unsigned int mctrl); +int msm_hs_get_clock_state(struct uart_port *uport); #endif diff --git a/drivers/tty/serial/msm_serial_hs.c b/drivers/tty/serial/msm_serial_hs.c index c3040e6bb2dc..9c7accdf4535 100644 --- a/drivers/tty/serial/msm_serial_hs.c +++ b/drivers/tty/serial/msm_serial_hs.c @@ -2190,6 +2190,14 @@ void msm_hs_request_clock_on(struct uart_port *uport) } EXPORT_SYMBOL(msm_hs_request_clock_on); +int msm_hs_get_clock_state(struct uart_port *uport) +{ + struct msm_hs_port *msm_uport = UARTDM_TO_MSM(uport); + + return (int)msm_uport->clk_state; +} +EXPORT_SYMBOL(msm_hs_get_clock_state); + static irqreturn_t msm_hs_wakeup_isr(int irq, void *dev) { unsigned int wakeup = 0;