Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932430AbeAIIB0 (ORCPT + 1 other); Tue, 9 Jan 2018 03:01:26 -0500 Received: from mailout2.samsung.com ([203.254.224.25]:17661 "EHLO mailout2.samsung.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1754241AbeAIH7I (ORCPT ); Tue, 9 Jan 2018 02:59:08 -0500 DKIM-Filter: OpenDKIM Filter v2.11.0 mailout2.samsung.com 20180109075906epoutp02f1186c75b043dd0f56d37ee69cb1780f~IFVjrBIPy0493704937epoutp02G X-AuditID: b6c32a38-eddff70000001183-88-5a547649d9c6 From: Chanwoo Choi To: krzk@kernel.org, m.szyprowski@samsung.com, s.nawrocki@samsung.com, kgene@kernel.org Cc: tomasz.figa@gmail.com, cw00.choi@samsung.com, chanwoo@kernel.org, jh80.chung@samsung.com, inki.dae@samsung.com, linux-arm-kernel@lists.infradead.org, linux-samsung-soc@vger.kernel.org, linux-kernel@vger.kernel.org, devicetree@vger.kernel.org Subject: [PATCH 2/9] soc: samsung: pmu: Add powerup_conf callback Date: Tue, 09 Jan 2018 16:58:59 +0900 Message-id: <1515484746-10656-3-git-send-email-cw00.choi@samsung.com> X-Mailer: git-send-email 1.8.0 In-reply-to: <1515484746-10656-1-git-send-email-cw00.choi@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAAzWSa0hTYRjHez07Z1NaHabVy7rJCT+kuXbmnEdxoqS10GBYEE5iHfTgRu7S ztSUICFsJeKN7uk0vBBTI6aYmVpeWkUwTTM1MLtnapGVXTSiM49++z3P8/vzvjw8IkTiQaUi o9nO2Mx0NoEFCNr7d8rD9+ce0slrH4VQFePPBNTYj48oVTPgRanKqXIBNb54BqXK3s4i1ODg LSHlfvscpUY6qzDq8mCPH9UyMCmk+uccKOXq/AvixZo7VyeFGrfrHKZprT+lKW1zAc139zYt qmNiDQydydiCGXOGJdNozlITyQf1e/SRKjkZTkZTUUSwmTYxaiIxRRu+15jN/ZEIzqWzc7iW lmZZYndcrM2SY2eCDRbWribSSVIhI+VRMoVCIVNGHIlRRHLKUcZQfboEs3auP9FQ0osUgnpx MfAXQVwJH898QopBgEiCdwA40dQg5ItfAL5/MiFYtb55OjF+cAvAxkqf5c8VvwEsvbbBxxge Cu9Nj2M+DsLT4J9uD/AFEHwJwClPGeIbBOIJcOj16HJYgIdA54XPqI/FeBLsmB9ZeW0b/Nr1 Ztnxx/fCu/+aMb7fhkHH4CaeE6Hz4gDCcyCcedjG+SKON8PhB2rfuxB3AOjodiJ8cR5A79hL Pz4QAT9cL15mBF8HvyyUoHxYDM+ekfCKBha+HlvRE+DtpaaVHV0BsKRnWlgOpLVgjQtsZKys KYthSatSxtImNsecJcuwmNxg+YZCqQ7Q5U3pA7gIEGvFsOigToLSuWy+qQ9AEUIEiQ/UcC1x Jp1fwNgseltONsP2gUhuNxWIdEOGhbtIs11PKqPlSpWCO4ZokiQ2ibXaRJ0Ez6LtzDGGsTK2 1ZyfyF9aCJJV+XM7HFULN+KKnEi+Mf3CUMzon1HjfcGTF0WL3Wmpx1u2Suhqq0k3+6bXs3D+ MJGn1hdsoeZPt6Mny7c3O2NTk07Nx5XmhdXExAvyhpv37SvGGlpddV4wXnfx56WRm5eeyqRh Ku+uvkRbeWVso2HgnfJV/OWOAK0qdTqptZ0QsAaaDEVsLP0fBqhBAlkDAAA= X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrJLMWRmVeSWpSXmKPExsVy+t9jQV3PspAog+51PBYTb1xhsbj+5Tmr xfwj51gtJt2fwGJx41cbq0X/49fMFufPb2C32PT4GqvF5V1z2CxmnN/HZLH2yF12i8Nv2lkt Vu36w+jA67Fz1l12j02rOtk8Ni+p9+jbsorR4/MmuQDWKC6blNSczLLUIn27BK6Muc09bAW7 +CuW9hxkbmBcwtvFyMkhIWAi8enYLrYuRi4OIYF1jBITNs9mhXB+MEr039zACFLFJqAlsf/F DTYQW0QgUuLJ1KdgNrPAb0aJywuLQGxhAUeJCw+vsoPYLAKqEvOmvmUFsXkFXCV2fLzMArFN TuLDnkdgNZwCbhK7/60BmyMEVPPwwWnGCYw8CxgZVjFKphYU56bnFhsVGOallusVJ+YWl+al 6yXn525iBAbgtsNafTsY7y+JP8QowMGoxMNb0B4cJcSaWFZcmXuIUYKDWUmE13c+UIg3JbGy KrUoP76oNCe1+BCjNAeLkjjv7bxjkUIC6YklqdmpqQWpRTBZJg5OqQZGb51/H6XvJVyS75aL uszw/YLh8gf69mdirfU1D6xL6u+a2MP6aOac3TZB+//KT+mTO7zn/dPeA7/rHgTu+vGi8bFS uXZn5J9FMheYPYInG0v58zsaTg651Lpa8kr3ne5iK/+kVL5Vt1j6uln2NN2X/tf+1JwrS8zp yALd+dnKFk6u1ziN/rsqsRRnJBpqMRcVJwIAZ9hzEDwCAAA= X-CMS-MailID: 20180109075905epcas1p4e601230d86dd686db28796165178dafa X-Msg-Generator: CA CMS-TYPE: 101P DLP-Filter: Pass X-CFilter-Loop: Reflected X-CMS-RootMailID: 20180109075905epcas1p4e601230d86dd686db28796165178dafa X-RootMTR: 20180109075905epcas1p4e601230d86dd686db28796165178dafa References: <1515484746-10656-1-git-send-email-cw00.choi@samsung.com> Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Return-Path: This patch adds the powerup_conf callback which is used to re-initialize the PMU registers during the resume state. Signed-off-by: Chanwoo Choi --- drivers/soc/samsung/exynos-pmu.c | 8 ++++++++ drivers/soc/samsung/exynos-pmu.h | 1 + include/linux/soc/samsung/exynos-pmu.h | 1 + 3 files changed, 10 insertions(+) diff --git a/drivers/soc/samsung/exynos-pmu.c b/drivers/soc/samsung/exynos-pmu.c index f56adbd9fb8b..cfc9de518344 100644 --- a/drivers/soc/samsung/exynos-pmu.c +++ b/drivers/soc/samsung/exynos-pmu.c @@ -58,6 +58,14 @@ void exynos_sys_powerdown_conf(enum sys_powerdown mode) pmu_data->powerdown_conf_extra(mode); } +void exynos_sys_powerup_conf(enum sys_powerdown mode) +{ + const struct exynos_pmu_data *pmu_data = pmu_context->pmu_data; + + if (pmu_data->powerup_conf) + pmu_data->powerup_conf(mode); +} + /* * Split the data between ARM architectures because it is relatively big * and useless on other arch. diff --git a/drivers/soc/samsung/exynos-pmu.h b/drivers/soc/samsung/exynos-pmu.h index 977e4daf5a0f..efbaf8929252 100644 --- a/drivers/soc/samsung/exynos-pmu.h +++ b/drivers/soc/samsung/exynos-pmu.h @@ -24,6 +24,7 @@ struct exynos_pmu_data { void (*pmu_init)(void); void (*powerdown_conf)(enum sys_powerdown); void (*powerdown_conf_extra)(enum sys_powerdown); + void (*powerup_conf)(enum sys_powerdown); }; extern void __iomem *pmu_base_addr; diff --git a/include/linux/soc/samsung/exynos-pmu.h b/include/linux/soc/samsung/exynos-pmu.h index e57eb4b6cc5a..3aacf7b18401 100644 --- a/include/linux/soc/samsung/exynos-pmu.h +++ b/include/linux/soc/samsung/exynos-pmu.h @@ -22,6 +22,7 @@ enum sys_powerdown { }; extern void exynos_sys_powerdown_conf(enum sys_powerdown mode); +extern void exynos_sys_powerup_conf(enum sys_powerdown mode); #ifdef CONFIG_EXYNOS_PMU extern struct regmap *exynos_get_pmu_regmap(void); #else -- 1.9.1