From 97d7f175742dca0b4ea5aeafbe688471b053deaf Mon Sep 17 00:00:00 2001 From: Sourav Poddar Date: Sat, 27 Apr 2013 01:55:32 +0530 Subject: arm: omap2+: serial: remove no_console_suspend support "no_console_suspend" is no longer handled in platform file, Since the omap serial driver is now adapted to prevent console UART idleing during suspend. Cc: Santosh Shilimkar Cc: Felipe Balbi Cc: Rajendra nayak Signed-off-by: Sourav Poddar Reviewed-by: Felipe Balbi Signed-off-by: Kevin Hilman diff --git a/arch/arm/mach-omap2/serial.c b/arch/arm/mach-omap2/serial.c index 8396b5b..25fb6e9 100644 --- a/arch/arm/mach-omap2/serial.c +++ b/arch/arm/mach-omap2/serial.c @@ -63,7 +63,6 @@ struct omap_uart_state { 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) */ @@ -236,9 +235,6 @@ static int __init omap_serial_early_init(void) uart_name, uart->num); } - if (cmdline_find_option("no_console_suspend")) - no_console_suspend = true; - /* * omap-uart can be used for earlyprintk logs * So if omap-uart is used as console then prevent @@ -323,9 +319,6 @@ void __init omap_serial_init_port(struct omap_board_data *bdata, return; } - if ((console_uart_id == bdata->id) && no_console_suspend) - omap_device_disable_idle_on_suspend(pdev); - oh->mux = omap_hwmod_mux_init(bdata->pads, bdata->pads_cnt); if (console_uart_id == bdata->id) { -- cgit v0.10.2 From 4425fb13d12f25501b56f06b960203ecd8de2573 Mon Sep 17 00:00:00 2001 From: Sourav Poddar Date: Sat, 27 Apr 2013 01:55:33 +0530 Subject: arm: dts: am33xx: Remove "ti,no_idle_on_suspend" property. The "ti,no_idle_on_suspend" property was required to keep ocmcram clocks running during idle. But commit 72bb6f9 (ARM: OMAP: omap_device: don't attempt late suspend if no driver bound), added in v3.6 should prevent any automatic clock gating for devices without drivers bound. Since there is no driver for the OCM RAM block, we are not affected by the automatic idle on suspend anyways which means "ti,no_idle_on_suspend" can be safely removed since there are no users for it. Cc: Benoit Cousson Cc: Santosh Shilimkar Cc: Felipe Balbi Cc: Rajendra nayak Signed-off-by: Sourav Poddar Reviewed-by: Felipe Balbi Signed-off-by: Kevin Hilman diff --git a/arch/arm/boot/dts/am33xx.dtsi b/arch/arm/boot/dts/am33xx.dtsi index 1460d9b..a2608c0 100644 --- a/arch/arm/boot/dts/am33xx.dtsi +++ b/arch/arm/boot/dts/am33xx.dtsi @@ -394,7 +394,6 @@ compatible = "ti,am3352-ocmcram"; reg = <0x40300000 0x10000>; ti,hwmods = "ocmcram"; - ti,no_idle_on_suspend; }; wkup_m3: wkup_m3@44d00000 { -- cgit v0.10.2 From 4b7ec5accecdb136c7afaf8739a06d5335cc05aa Mon Sep 17 00:00:00 2001 From: Sourav Poddar Date: Sat, 27 Apr 2013 01:55:34 +0530 Subject: arm: omap2+: omap_device: remove no_idle_on_suspend Remove "no_idle_on_suspend" check, since respective driver should be able to prevent idling of an omap device whenever required. Driver's can get same behavior by just returning -EBUSY from their ->runtime_suspend only during suspend. Cc: Santosh Shilimkar Cc: Felipe Balbi Cc: Rajendra nayak Cc: Grygorii Strashko Signed-off-by: Sourav Poddar Reviewed-by: Felipe Balbi Signed-off-by: Kevin Hilman diff --git a/arch/arm/mach-omap2/omap_device.c b/arch/arm/mach-omap2/omap_device.c index e6d2307..68be532 100644 --- a/arch/arm/mach-omap2/omap_device.c +++ b/arch/arm/mach-omap2/omap_device.c @@ -170,9 +170,6 @@ static int omap_device_build_from_dt(struct platform_device *pdev) r->name = dev_name(&pdev->dev); } - if (of_get_property(node, "ti,no_idle_on_suspend", NULL)) - omap_device_disable_idle_on_suspend(pdev); - pdev->dev.pm_domain = &omap_device_pm_domain; odbfd_exit1: @@ -621,8 +618,7 @@ static int _od_suspend_noirq(struct device *dev) if (!ret && !pm_runtime_status_suspended(dev)) { if (pm_generic_runtime_suspend(dev) == 0) { - if (!(od->flags & OMAP_DEVICE_NO_IDLE_ON_SUSPEND)) - omap_device_idle(pdev); + omap_device_idle(pdev); od->flags |= OMAP_DEVICE_SUSPENDED; } } @@ -638,8 +634,7 @@ static int _od_resume_noirq(struct device *dev) if ((od->flags & OMAP_DEVICE_SUSPENDED) && !pm_runtime_status_suspended(dev)) { od->flags &= ~OMAP_DEVICE_SUSPENDED; - if (!(od->flags & OMAP_DEVICE_NO_IDLE_ON_SUSPEND)) - omap_device_enable(pdev); + omap_device_enable(pdev); pm_generic_runtime_resume(dev); } diff --git a/arch/arm/mach-omap2/omap_device.h b/arch/arm/mach-omap2/omap_device.h index 044c31d..17ca1ae 100644 --- a/arch/arm/mach-omap2/omap_device.h +++ b/arch/arm/mach-omap2/omap_device.h @@ -38,7 +38,6 @@ extern struct dev_pm_domain omap_device_pm_domain; /* omap_device.flags values */ #define OMAP_DEVICE_SUSPENDED BIT(0) -#define OMAP_DEVICE_NO_IDLE_ON_SUSPEND BIT(1) /** * struct omap_device - omap_device wrapper for platform_devices @@ -101,13 +100,4 @@ static inline struct omap_device *to_omap_device(struct platform_device *pdev) { return pdev ? pdev->archdata.od : NULL; } - -static inline -void omap_device_disable_idle_on_suspend(struct platform_device *pdev) -{ - struct omap_device *od = to_omap_device(pdev); - - od->flags |= OMAP_DEVICE_NO_IDLE_ON_SUSPEND; -} - #endif -- cgit v0.10.2