From patchwork Fri Mar 22 16:20:09 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rickard Andersson X-Patchwork-Id: 2321721 Return-Path: X-Original-To: patchwork-linux-pm@patchwork.kernel.org Delivered-To: patchwork-process-083081@patchwork1.kernel.org Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by patchwork1.kernel.org (Postfix) with ESMTP id B841E400E6 for ; Fri, 22 Mar 2013 16:39:25 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1161011Ab3CVQjZ (ORCPT ); Fri, 22 Mar 2013 12:39:25 -0400 Received: from eu1sys200aog125.obsmtp.com ([207.126.144.159]:56801 "EHLO eu1sys200aog125.obsmtp.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1160998Ab3CVQjY (ORCPT ); Fri, 22 Mar 2013 12:39:24 -0400 X-Greylist: delayed 1136 seconds by postgrey-1.27 at vger.kernel.org; Fri, 22 Mar 2013 12:39:23 EDT Received: from beta.dmz-us.st.com ([167.4.1.35]) (using TLSv1) by eu1sys200aob125.postini.com ([207.126.147.11]) with SMTP ID DSNKUUyJOozIxk4AkVW9hRi3GPc1AaRU+ZwY@postini.com; Fri, 22 Mar 2013 16:39:24 UTC Received: from zeta.dmz-us.st.com (ns4.st.com [167.4.16.71]) by beta.dmz-us.st.com (STMicroelectronics) with ESMTP id 0AC1057; Fri, 22 Mar 2013 16:19:30 +0000 (GMT) Received: from relay1.stm.gmessaging.net (unknown [10.230.100.17]) by zeta.dmz-us.st.com (STMicroelectronics) with ESMTP id EFDDF57; Fri, 22 Mar 2013 09:52:42 +0000 (GMT) Received: from exdcvycastm003.EQ1STM.local (alteon-source-exch [10.230.100.61]) (using TLSv1 with cipher RC4-MD5 (128/128 bits)) (Client CN "exdcvycastm003", Issuer "exdcvycastm003" (not verified)) by relay1.stm.gmessaging.net (Postfix) with ESMTPS id 9C07424C07C; Fri, 22 Mar 2013 17:20:13 +0100 (CET) Received: from steludxu2826.lud.stericsson.com (10.230.100.153) by smtp.stericsson.com (10.230.100.1) with Microsoft SMTP Server (TLS) id 8.3.279.5; Fri, 22 Mar 2013 17:20:21 +0100 From: Rickard Andersson To: , Cc: , , , , , Subject: [RFC PATCH 5/8] ARM: ux500: Create APE generic power domain Date: Fri, 22 Mar 2013 17:20:09 +0100 Message-ID: <1363969212-14864-6-git-send-email-rickard.andersson@stericsson.com> X-Mailer: git-send-email 1.8.2 In-Reply-To: <1363969212-14864-1-git-send-email-rickard.andersson@stericsson.com> References: <1363969212-14864-1-git-send-email-rickard.andersson@stericsson.com> MIME-Version: 1.0 Sender: linux-pm-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-pm@vger.kernel.org The APE generic power domain is created and initiated. This power domain is turned off in the sleep states ApSleep and ApDeepSleep Signed-off-by: Rickard Andersson --- arch/arm/mach-ux500/Kconfig | 1 + arch/arm/mach-ux500/board-mop500.c | 17 ++++++++++++++++- 2 files changed, 17 insertions(+), 1 deletion(-) diff --git a/arch/arm/mach-ux500/Kconfig b/arch/arm/mach-ux500/Kconfig index 5dea906..b2e5c8b 100644 --- a/arch/arm/mach-ux500/Kconfig +++ b/arch/arm/mach-ux500/Kconfig @@ -12,6 +12,7 @@ config UX500_SOC_COMMON select PINCTRL select PINCTRL_NOMADIK select PL310_ERRATA_753970 if CACHE_PL310 + select PM_GENERIC_DOMAINS if PM config UX500_SOC_DB8500 bool diff --git a/arch/arm/mach-ux500/board-mop500.c b/arch/arm/mach-ux500/board-mop500.c index d453522..77d3d1a 100644 --- a/arch/arm/mach-ux500/board-mop500.c +++ b/arch/arm/mach-ux500/board-mop500.c @@ -37,7 +37,7 @@ #include #include #include - +#include #include #include #include @@ -645,6 +645,15 @@ static struct platform_device *snowball_platform_devs[] __initdata = { &u8500_cpufreq_cooling_device, }; +struct generic_pm_domain ape_domain = { + .name = "APE", +}; + +static void __init init_pm_domains(void) +{ + pm_genpd_init(&ape_domain, NULL, false); +} + static void __init mop500_init_machine(void) { struct device *parent = NULL; @@ -668,6 +677,8 @@ static void __init mop500_init_machine(void) mop500_audio_init(parent); mop500_uart_init(parent); + init_pm_domains(); + u8500_cryp1_hash1_init(parent); i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices); @@ -700,6 +711,8 @@ static void __init snowball_init_machine(void) mop500_audio_init(parent); mop500_uart_init(parent); + init_pm_domains(); + /* This board has full regulator constraints */ regulator_has_full_constraints(); } @@ -732,6 +745,8 @@ static void __init hrefv60_init_machine(void) mop500_audio_init(parent); mop500_uart_init(parent); + init_pm_domains(); + i2c0_devs = ARRAY_SIZE(mop500_i2c0_devices); i2c0_devs -= NUM_PRE_V60_I2C0_DEVICES;