From patchwork Mon Jul 7 05:19:36 2014 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Pankaj Dubey X-Patchwork-Id: 4492661 Return-Path: X-Original-To: patchwork-linux-arm@patchwork.kernel.org Delivered-To: patchwork-parsemail@patchwork2.web.kernel.org Received: from mail.kernel.org (mail.kernel.org [198.145.19.201]) by patchwork2.web.kernel.org (Postfix) with ESMTP id 6FF4EBEECB for ; Mon, 7 Jul 2014 05:26:22 +0000 (UTC) Received: from mail.kernel.org (localhost [127.0.0.1]) by mail.kernel.org (Postfix) with ESMTP id 897622024C for ; Mon, 7 Jul 2014 05:26:21 +0000 (UTC) Received: from bombadil.infradead.org (bombadil.infradead.org [198.137.202.9]) (using TLSv1.2 with cipher DHE-RSA-AES256-GCM-SHA384 (256/256 bits)) (No client certificate requested) by mail.kernel.org (Postfix) with ESMTPS id F3BC62022A for ; Mon, 7 Jul 2014 05:26:19 +0000 (UTC) Received: from localhost ([127.0.0.1] helo=bombadil.infradead.org) by bombadil.infradead.org with esmtp (Exim 4.80.1 #2 (Red Hat Linux)) id 1X41OB-0003GG-Gx; Mon, 07 Jul 2014 05:22:55 +0000 Received: from mailout2.samsung.com ([203.254.224.25]) by bombadil.infradead.org with esmtps (Exim 4.80.1 #2 (Red Hat Linux)) id 1X41Nx-0003At-Co for linux-arm-kernel@lists.infradead.org; Mon, 07 Jul 2014 05:22:42 +0000 Received: from epcpsbgr1.samsung.com (u141.gpu120.samsung.co.kr [203.254.230.141]) by mailout2.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0N8B00F52TL8QVC0@mailout2.samsung.com> for linux-arm-kernel@lists.infradead.org; Mon, 07 Jul 2014 14:22:21 +0900 (KST) Received: from epcpsbgm2.samsung.com ( [172.20.52.122]) by epcpsbgr1.samsung.com (EPCPMTA) with SMTP id 6B.AB.24374.C8E2AB35; Mon, 07 Jul 2014 14:22:20 +0900 (KST) X-AuditID: cbfee68d-b7fd46d000005f36-08-53ba2e8c84cd Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id 6F.16.05196.C8E2AB35; Mon, 07 Jul 2014 14:22:20 +0900 (KST) Received: from chromebld-server.sisodomain.com ([107.108.73.106]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0N8B000UKTKRMY90@mmp1.samsung.com>; Mon, 07 Jul 2014 14:22:20 +0900 (KST) From: Pankaj Dubey To: linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org Subject: [PATCH v6 4/4] ARM: EXYNOS: Move PMU specific definitions from common.h Date: Mon, 07 Jul 2014 10:49:36 +0530 Message-id: <1404710376-16448-5-git-send-email-pankaj.dubey@samsung.com> X-Mailer: git-send-email 1.7.9.5 In-reply-to: <1404710376-16448-1-git-send-email-pankaj.dubey@samsung.com> References: <1404710376-16448-1-git-send-email-pankaj.dubey@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFmpjkeLIzCtJLcpLzFFi42JZI2JSpdujtyvY4PsaK4tlk+6yWXzf9YXd onfBVTaLTY+vsVpc3jWHzWLG+X1MFrcv81p8Ovqf1WLRVqCK9TNes1h0LGO0uPlsO5MDj0dL cw+bx+Yl9R59W1YxenzeJBfAEsVlk5Kak1mWWqRvl8CV8enrb5aCnZIVVy7/YGpgnC3axcjJ ISFgInGq8QUzhC0mceHeerYuRi4OIYGljBIzb81h7GLkACuaNU8HIr6IUWL1vv3MEM4EJokP XXvZQLrZBHQlnryfCzZJRCBbov/2ahaQImaBx4wSb1YeZQRJCAsESFz6uokFxGYRUJWY9eQE E4jNK+Ah8XnJFnaIbQoScybZgIQ5BTwlJr/eDzZfCKjk7dI/TBCX7mKXaFnACjFGQOLb5EMs EK2yEpsOQD0jKXFwxQ2WCYzCCxgZVjGKphYkFxQnpRcZ6hUn5haX5qXrJefnbmIExsHpf896 dzDePmB9iDEZaNxEZinR5HxgHOWVxBsamxlZmJqYGhuZW5qRJqwkzpv0MClISCA9sSQ1OzW1 ILUovqg0J7X4ECMTB6dUA+OeexImQZEM20qjVp/IjF1RuSFqVmh6YtLDyL3PLxYc855jcUnI ruTVxhseZ9dGlJ8vdbvUb7XwjciZdIPOgp2zdiR4xh94tuDmGXF32VfMMfIMNa//n9uoEyIq fFetv6hMnH3yla+VW+XOXZ7qYM5pvuG1Zf2tklmik5pDBQuXb1Zrky/Te6fEUpyRaKjFXFSc CABf3SMlmQIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFtrGIsWRmVeSWpSXmKPExsVy+t9jAd0evV3BBpP2G1ssm3SXzeL7ri/s Fr0LrrJZbHp8jdXi8q45bBYzzu9jsrh9mdfi09H/rBaLtgJVrJ/xmsWiYxmjxc1n25kceDxa mnvYPDYvqffo27KK0ePzJrkAlqgGRpuM1MSU1CKF1Lzk/JTMvHRbJe/geOd4UzMDQ11DSwtz JYW8xNxUWyUXnwBdt8wcoMOUFMoSc0qBQgGJxcVK+naYJoSGuOlawDRG6PqGBMH1GBmggYQ1 jBmfvv5mKdgpWXHl8g+mBsbZol2MHBwSAiYSs+bpdDFyApliEhfurWfrYuTiEBJYxCixet9+ ZghnApPEh669bCBVbAK6Ek/ez2UGsUUEsiX6b69mASliFnjMKPFm5VFGkISwQIDEpa+bWEBs FgFViVlPTjCB2LwCHhKfl2xhh9isIDFnkg1ImFPAU2Ly6/1g84WASt4u/cM0gZF3ASPDKkbR 1ILkguKk9FwjveLE3OLSvHS95PzcTYzgOHsmvYNxVYPFIUYBDkYlHt4Dq3YGC7EmlhVX5h5i lOBgVhLhPeMGFOJNSaysSi3Kjy8qzUktPsRoCnTURGYp0eR8YArIK4k3NDYxNzU2tTSxMDGz VBLnPdhqHSgkkJ5YkpqdmlqQWgTTx8TBKdXAyLjv0aybIpmdvj5vd0kv0Ff78+JW8i2hjo7v 9a5vN8vU+VzPPGHrdeyfunjUq3SnG7sMHy7ec0fjGWvJSu4tMknfr/648/nA+a8XHp3IlI/6 4XFz9ZquRW3NQrI+CnnJv2ctnXLL8kP2NeHXH1/a+PfwrLzin3hvLu+Er3WruU5rPnn49/z3 lk1KLMUZiYZazEXFiQCTUkidyQIAAA== DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected X-CRM114-Version: 20100106-BlameMichelson ( TRE 0.8.0 (BSD) ) MR-646709E3 X-CRM114-CacheID: sfid-20140706_222241_601255_C1520412 X-CRM114-Status: GOOD ( 13.69 ) X-Spam-Score: -5.7 (-----) Cc: kgene.kim@samsung.com, linux@arm.linux.org.uk, naushad@samsung.com, Pankaj Dubey , t.figa@samsung.com, joshi@samsung.com, thomas.ab@samsung.com, vikas.sajjan@samsung.com, chow.kim@samsung.com X-BeenThere: linux-arm-kernel@lists.infradead.org X-Mailman-Version: 2.1.18-1 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: "linux-arm-kernel" Errors-To: linux-arm-kernel-bounces+patchwork-linux-arm=patchwork.kernel.org@lists.infradead.org X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,RP_MATCHES_RCVD, UNPARSEABLE_RELAY autolearn=unavailable version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on mail.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP This patch moves PMU specific definitions into a new file as exynos-pmu.h. This will help in reducing dependency of common.h in pmu.c. Signed-off-by: Pankaj Dubey Reviewed-by: Tomasz Figa --- arch/arm/mach-exynos/common.h | 17 ----------------- arch/arm/mach-exynos/exynos-pmu.h | 24 ++++++++++++++++++++++++ arch/arm/mach-exynos/pm.c | 1 + arch/arm/mach-exynos/pmu.c | 10 +++++++++- 4 files changed, 34 insertions(+), 18 deletions(-) create mode 100644 arch/arm/mach-exynos/exynos-pmu.h diff --git a/arch/arm/mach-exynos/common.h b/arch/arm/mach-exynos/common.h index 9bf9198..38334bf 100644 --- a/arch/arm/mach-exynos/common.h +++ b/arch/arm/mach-exynos/common.h @@ -132,23 +132,6 @@ extern struct smp_operations exynos_smp_ops; extern void exynos_cpu_die(unsigned int cpu); -/* PMU(Power Management Unit) support */ - -#define PMU_TABLE_END (-1U) - -enum sys_powerdown { - SYS_AFTR, - SYS_LPA, - SYS_SLEEP, - NUM_SYS_POWERDOWN, -}; - -struct exynos_pmu_conf { - unsigned int offset; - unsigned int val[NUM_SYS_POWERDOWN]; -}; - -extern void exynos_sys_powerdown_conf(enum sys_powerdown mode); extern void exynos_cpu_power_down(int cpu); extern void exynos_cpu_power_up(int cpu); extern int exynos_cpu_power_state(int cpu); diff --git a/arch/arm/mach-exynos/exynos-pmu.h b/arch/arm/mach-exynos/exynos-pmu.h new file mode 100644 index 0000000..a2ab0d5 --- /dev/null +++ b/arch/arm/mach-exynos/exynos-pmu.h @@ -0,0 +1,24 @@ +/* + * Copyright (c) 2014 Samsung Electronics Co., Ltd. + * http://www.samsung.com + * + * Header for EXYNOS PMU Driver support + * + * This program is free software; you can redistribute it and/or modify + * it under the terms of the GNU General Public License version 2 as + * published by the Free Software Foundation. + */ + +#ifndef __EXYNOS_PMU_H +#define __EXYNOS_PMU_H + +enum sys_powerdown { + SYS_AFTR, + SYS_LPA, + SYS_SLEEP, + NUM_SYS_POWERDOWN, +}; + +extern void exynos_sys_powerdown_conf(enum sys_powerdown mode); + +#endif /* __EXYNOS_PMU_H */ diff --git a/arch/arm/mach-exynos/pm.c b/arch/arm/mach-exynos/pm.c index ff96fcd..ba75171 100644 --- a/arch/arm/mach-exynos/pm.c +++ b/arch/arm/mach-exynos/pm.c @@ -34,6 +34,7 @@ #include #include "common.h" +#include "exynos-pmu.h" #include "regs-pmu.h" #include "regs-sys.h" diff --git a/arch/arm/mach-exynos/pmu.c b/arch/arm/mach-exynos/pmu.c index 2b16a2d..a4ede73 100644 --- a/arch/arm/mach-exynos/pmu.c +++ b/arch/arm/mach-exynos/pmu.c @@ -15,9 +15,16 @@ #include #include -#include "common.h" +#include "exynos-pmu.h" #include "regs-pmu.h" +#define PMU_TABLE_END (-1U) + +struct exynos_pmu_conf { + unsigned int offset; + unsigned int val[NUM_SYS_POWERDOWN]; +}; + struct exynos_pmu_data { const struct exynos_pmu_conf *pmu_config; const struct exynos_pmu_conf *pmu_config_extra; @@ -31,6 +38,7 @@ struct exynos_pmu_context { const struct exynos_pmu_data *pmu_data; }; +static void __iomem *pmu_base_addr; static struct exynos_pmu_context *pmu_context; static inline void pmu_raw_writel(u32 val, u32 offset)