From patchwork Tue Dec 11 10:54:44 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hatim RV X-Patchwork-Id: 205165 X-Patchwork-Delegate: promsoft@gmail.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id 885392C0085 for ; Tue, 11 Dec 2012 21:55:03 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 68EF84A19E; Tue, 11 Dec 2012 11:54:59 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id 5MQdYJ3tF3ZF; Tue, 11 Dec 2012 11:54:59 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id F359E4A175; Tue, 11 Dec 2012 11:54:38 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id A557F4A138 for ; Tue, 11 Dec 2012 11:54:35 +0100 (CET) X-Virus-Scanned: Debian amavisd-new at theia.denx.de Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id J6tdimm15ypM for ; Tue, 11 Dec 2012 11:54:34 +0100 (CET) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from mailout2.samsung.com (mailout2.samsung.com [203.254.224.25]) by theia.denx.de (Postfix) with ESMTP id 493954A112 for ; Tue, 11 Dec 2012 11:54:33 +0100 (CET) Received: from epcpsbgm1.samsung.com (epcpsbgm1 [203.254.230.26]) by mailout2.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MEV00NSL4YR2XY0@mailout2.samsung.com> for u-boot@lists.denx.de; Tue, 11 Dec 2012 19:54:32 +0900 (KST) Received: from epcpsbgm1.samsung.com ( [172.20.52.126]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id EC.E4.01231.7E017C05; Tue, 11 Dec 2012 19:54:32 +0900 (KST) X-AuditID: cbfee61a-b7fa66d0000004cf-90-50c710e7c612 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id AC.E4.01231.7E017C05; Tue, 11 Dec 2012 19:54:31 +0900 (KST) Received: from hatim-linux.sisodomain.com ([107.108.73.95]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01 (7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MEV000H14YN0X80@mmp1.samsung.com> for u-boot@lists.denx.de; Tue, 11 Dec 2012 19:54:31 +0900 (KST) From: Hatim Ali To: u-boot@lists.denx.de Date: Tue, 11 Dec 2012 16:24:44 +0530 Message-id: <1355223289-15685-4-git-send-email-hatim.rv@samsung.com> X-Mailer: git-send-email 1.7.2.3 In-reply-to: <1355223289-15685-1-git-send-email-hatim.rv@samsung.com> References: <1355223289-15685-1-git-send-email-hatim.rv@samsung.com> DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrJLMWRmVeSWpSXmKPExsWyRsSkTveFwPEAg/29TBZv93ayOzB6nL2z gzGAMYrLJiU1J7MstUjfLoErY80+14KVvBU/dnSxNjDO5e5i5OSQEDCRuHJlIhOELSZx4d56 ti5GLg4hgaWMEvP27GSCKTo18w4rRGIRo8S5pjdQVUuYJHbsngNWxSagJrH+dScbiC0iICHx q/8qYxcjBwezgIbE43fqIGFhAQ+JCTe3MIPYLAKqEj9f3WMBsXkFXCTWbLsCtUxB4tWNtewg rZwCrhIN37hAwkJAJYtvb2eCaBWQ+Db5EAtIiYSArMSmA8wQndfZJHYfzoawJSUOrrjBMoFR eAEjwypG0dSC5ILipPRcQ73ixNzi0rx0veT83E2MwPA7/e+Z1A7GlQ0WhxgFOBiVeHg1tI4F CLEmlhVX5h5ilOBgVhLhLc0FCvGmJFZWpRblxxeV5qQWH2L0ATpkIrOUaHI+MDbySuINjU3M TY1NLY2MzExNcQgrifM2e6QECAmkJ5akZqemFqQWwYxj4uCUamCUuJxiV/rt6dMtb2rFQlNr Psu9Yb4iwPXWYpP35dtHGQMK7td9C65h3/PH3ppp0tknTBuimjYtO2N9PHq99ZNruT0pB9sm MUw++MIta71PUZvMm6wnhbsXl74Iqvqe2VavbXhFLbZ6jvUhTacd7/plPfS55v9c0a9zXFYx w1xMuWDZ3tjYmdZKLMUZiYZazEXFiQAhzjLPbAIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupkkeLIzCtJLcpLzFFi42I5/e+xgO5zgeMBBsv+G1q83dvJ7sDocfbO DsYAxqgGRpuM1MSU1CKF1Lzk/JTMvHRbJe/geOd4UzMDQ11DSwtzJYW8xNxUWyUXnwBdt8wc oLFKCmWJOaVAoYDE4mIlfTtME0JD3HQtYBojdH1DguB6jAzQQMIaxow1+1wLVvJW/NjRxdrA OJe7i5GTQ0LAROLUzDusELaYxIV769m6GLk4hAQWMUqca3oD5Sxhktixew4TSBWbgJrE+ted bCC2iICExK/+q4xdjBwczAIaEo/fqYOEhQU8JCbc3MIMYrMIqEr8fHWPBcTmFXCRWLPtChPE MgWJVzfWsoO0cgq4SjR84wIJCwGVLL69nWkCI+8CRoZVjKKpBckFxUnpuYZ6xYm5xaV56XrJ +bmbGMHh/UxqB+PKBotDjAIcjEo8vBpaxwKEWBPLiitzDzFKcDArifCW5gKFeFMSK6tSi/Lj i0pzUosPMfoAHTWRWUo0OR8Ye3kl8YbGJuamxqaWJhYmZpY4hJXEeZs9UgKEBNITS1KzU1ML UotgxjFxcEo1MFrMVyma2zCnJkf5eonc6tI9VyqOOYYkmdTYO76zuurS9J1f0ihDdJfNmTnP Klo6vn3but7u3jLb1T9nCjquCYvLnXThGpeiwM4fSa8Lf+SV/jbY+uRuz5Js5vw7k/I9ha6f Lf3WdPs4c9X8/VG/lwV9O21fduiuR+y1p70ZC3Mvp0UF/y1ftV6JpTgj0VCLuag4EQAzEpHv nAIAAA== X-CFilter-Loop: Reflected Subject: [U-Boot] [PATCH 3/8] EXYNOS5: Power down API for Thermal Management Unit X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.11 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Sender: u-boot-bounces@lists.denx.de Errors-To: u-boot-bounces@lists.denx.de From: Akshay Saraswat Adding API in power for system shutdown when tripping value is reached in Exynos Thermal Management Unit. Signed-off-by: Akshay Saraswat Acked-by: Simon Glass diff --git a/arch/arm/cpu/armv7/exynos/power.c b/arch/arm/cpu/armv7/exynos/power.c index d4bce6d..725c2d3 100644 --- a/arch/arm/cpu/armv7/exynos/power.c +++ b/arch/arm/cpu/armv7/exynos/power.c @@ -95,3 +95,18 @@ void set_dp_phy_ctrl(unsigned int enable) if (cpu_is_exynos5()) exynos5_dp_phy_control(enable); } + +/* + * This function never returns. + * When called this function makes system hang and PAD driving value high + * which in turn makes system power down in case of cold reboot. + */ +void power_shutdown(void) +{ + struct exynos5_power *power = + (struct exynos5_power *)samsung_get_base_power(); + + clrbits_le32(&power->ps_hold_control, POWER_PS_HOLD_CONTROL_DATA_HIGH); + + hang(); +} diff --git a/arch/arm/include/asm/arch-exynos/power.h b/arch/arm/include/asm/arch-exynos/power.h index d2fdb59..f069a0b 100644 --- a/arch/arm/include/asm/arch-exynos/power.h +++ b/arch/arm/include/asm/arch-exynos/power.h @@ -863,5 +863,13 @@ void set_usbhost_phy_ctrl(unsigned int enable); void set_dp_phy_ctrl(unsigned int enable); #define EXYNOS_DP_PHY_ENABLE (1 << 0) +#define POWER_PS_HOLD_CONTROL_DATA_HIGH (1 << 8) + +/* + * This function never returns. + * When called this function makes system hang and PAD driving value high + * which in turn makes system power down in case of cold reboot. + */ +void power_shutdown(void) __attribute__ ((noreturn)); #endif