[PATCH v7 21/21] OMAP2+: UART: Do not gate uart clocks if used for debug_prints
Govindraj
govindraj.ti at gmail.com
Thu Oct 20 05:47:30 EDT 2011
On Thu, Oct 20, 2011 at 2:58 PM, Mohammed, Afzal <afzal at ti.com> wrote:
> Hi Govindraj,
>
> On Thu, Oct 20, 2011 at 14:09:22, Govindraj wrote:
>> Yes correct, I missed that part here is the updated patch [1]
>> Updated change-log for debug/loglevel and checked console_loglevel
>> in addition to debug in bootargs.
>
> Perhaps checking console_loglevel only is sufficient, if I am not
> missing anything, passing "debug" thr' bootargs only causes loglevel
> to be set to 10 and nothing else.
Agree, Updated [1]
--
Thanks,
Govindraj.R
[1]
https://gitorious.org/runtime_3-0/runtime_3-0/commit/4b04aa54e61540f1f358ef412f2aaa3bab8de7c1
diff --git a/arch/arm/mach-omap2/serial.c b/arch/arm/mach-omap2/serial.c
index 5e3bbce..4f41369 100644
--- a/arch/arm/mach-omap2/serial.c
+++ b/arch/arm/mach-omap2/serial.c
@@ -65,6 +65,7 @@ static LIST_HEAD(uart_list);
static u8 num_uarts;
static u8 console_uart_id = -1;
static u8 no_console_suspend;
+static u8 uart_debug;
#define DEFAULT_RXDMA_POLLRATE 1 /* RX DMA polling rate (us) */
#define DEFAULT_RXDMA_BUFSIZE 4096 /* RX DMA buffer size */
@@ -310,6 +311,13 @@ static int __init omap_serial_early_init(void)
if (cmdline_find_option(uart_name)) {
console_uart_id = uart->num;
+ if (console_loglevel >= 10) {
+ uart_debug = true;
+ pr_info("%s used as console in debug mode"
+ " uart%d clocks will not be"
+ " gated", uart_name, uart->num);
+ }
+
if (cmdline_find_option("no_console_suspend"))
no_console_suspend = true;
@@ -414,7 +422,8 @@ void __init omap_serial_init_port(struct
omap_board_data *bdata,
oh->dev_attr = uart;
- if ((cpu_is_omap34xx() || cpu_is_omap44xx()) && bdata->pads)
+ if (((cpu_is_omap34xx() || cpu_is_omap44xx()) && bdata->pads)
+ && !uart_debug)
device_init_wakeup(&pdev->dev, true);
}
More information about the linux-arm-kernel
mailing list