From patchwork Thu Nov 8 09:14:55 2012 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Hatim RV X-Patchwork-Id: 197811 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 A19B32C0180 for ; Thu, 8 Nov 2012 20:22:33 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 53A454A84F; Thu, 8 Nov 2012 10:22:32 +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 PPS5hMXUm3Xy; Thu, 8 Nov 2012 10:22:32 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id F02E54A843; Thu, 8 Nov 2012 10:22:29 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id D2E404A83F for ; Thu, 8 Nov 2012 10:22:27 +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 POSxmht8M+pC for ; Thu, 8 Nov 2012 10:22:26 +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 mailout3.samsung.com (mailout3.samsung.com [203.254.224.33]) by theia.denx.de (Postfix) with ESMTP id C2DC34A843 for ; Thu, 8 Nov 2012 10:22:24 +0100 (CET) Received: from epcpsbgm2.samsung.com (epcpsbgm2 [203.254.230.27]) by mailout3.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MD500JOUWO9NWJ0@mailout3.samsung.com> for u-boot@lists.denx.de; Thu, 08 Nov 2012 18:22:22 +0900 (KST) Received: from epcpsbgm2.samsung.com ( [172.20.52.126]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id 30.43.12699.EC97B905; Thu, 08 Nov 2012 18:22:22 +0900 (KST) X-AuditID: cbfee61b-b7f616d00000319b-24-509b79cec756 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm2.samsung.com (EPCPMTA) with SMTP id 9F.33.12699.DC97B905; Thu, 08 Nov 2012 18:22:22 +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 <0MD5000KUWJF2180@mmp1.samsung.com> for u-boot@lists.denx.de; Thu, 08 Nov 2012 18:22:21 +0900 (KST) From: Hatim Ali To: u-boot@lists.denx.de Date: Thu, 08 Nov 2012 14:44:55 +0530 Message-id: <1352366100-18727-4-git-send-email-hatim.rv@samsung.com> X-Mailer: git-send-email 1.7.2.3 In-reply-to: <1352366100-18727-1-git-send-email-hatim.rv@samsung.com> References: <1352366100-18727-1-git-send-email-hatim.rv@samsung.com> DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFrrFLMWRmVeSWpSXmKPExsWyRsSkTvdc5ewAgyVdkhZv93ayOzB6nL2z gzGAMYrLJiU1J7MstUjfLoEr40DPWcaCv3wVPfuPMzUwHuHpYuTkkBAwkehouMYKYYtJXLi3 nq2LkYtDSGApo8Tyvr3MMEWtHxvAioQEFjFKnGuqgChawiTx6OVOsCI2ATWJ9a872UBsEQEJ iV/9VxlBbGaBUokjrdtYQGxhAW+JO+fusXcxcnCwCKhK/FvoCBLmFXCRWPi/nQ1il4LEqxtr wUo4BVwlmu7bQax1kehesRNsIouAgMS3yYdYQEokBGQlNh1gBrlGQuAym8T09n52iDGSEgdX 3GCZwCi8gJFhFaNoakFyQXFSeq6RXnFibnFpXrpecn7uJkZgAJ7+90x6B+OqBotDjAIcjEo8 vBqSswOEWBPLiitzDzFKcDArifAucwYK8aYkVlalFuXHF5XmpBYfYvQBumQis5Rocj4wOvJK 4g2NTcxNjU0tjYzMTE1xCCuJ8zZ7pAQICaQnlqRmp6YWpBbBjGPi4JRqYOxKcP33v2rxQab6 z7c/y4mzT1gYu7dZaL20hck6mX/5yTO2GmflR8VH9B+XCr+UEdUhO7Nus//9au2KVW+nPjq1 qPpxZuq2XC2mSfc6QoqvxIZOO3w8bca7nKp41h2vxdmupnzK1mPIi7W2T2cqXD/zZMSGjUfj v0sZZejuim/5pPahcsvhRiWW4oxEQy3mouJEALvuk1xtAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFupkkeLIzCtJLcpLzFFi42I5/e+xgO65ytkBBlOXMlu83dvJ7sDocfbO DsYAxqgGRpuM1MSU1CKF1Lzk/JTMvHRbJe/geOd4UzMDQ11DSwtzJYW8xNxUWyUXnwBdt8wc oLFKCmWJOaVAoYDE4mIlfTtME0JD3HQtYBojdH1DguB6jAzQQMIaxowDPWcZC/7yVfTsP87U wHiEp4uRk0NCwESi9WMDK4QtJnHh3no2EFtIYBGjxLmmii5GLiB7CZPEo5c7mUESbAJqEutf d4IViQhISPzqv8oIYjMLlEocad3GAmILC3hL3Dl3j72LkYODRUBV4t9CR5Awr4CLxML/7WwQ uxQkXt1YC1bCKeAq0XTfDmKti0T3ip2MExh5FzAyrGIUTS1ILihOSs810itOzC0uzUvXS87P 3cQIDu9n0jsYVzVYHGIU4GBU4uHVkJwdIMSaWFZcmXuIUYKDWUmEd5kzUIg3JbGyKrUoP76o NCe1+BCjD9BNE5mlRJPzgbGXVxJvaGxibmpsamliYWJmiUNYSZy32SMlQEggPbEkNTs1tSC1 CGYcEwenVAOj7uNDWe+YTM9za84+nr5hpukF2QL/jVo7ty/6vXRi7r5FFQsi2bqyjkmHMduI bub31f4fZ3cpoGrFMbX+gr4DS5cr35eqTdZ+EXK8tumADWPIa7nDB79nl2Y35cZYW9xddutg 9jy1G8ye8bcbQxP/z2WdtEpQsLVzUYz1b60I8W15W6fLBzUosRRnJBpqMRcVJwIAByeZIZwC AAA= X-CFilter-Loop: Reflected Cc: akshay.s@samsung.com, alim.akhtar@samsung.com Subject: [U-Boot] [PATCH 3/8 v3] 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 --- Changes since v2: - None arch/arm/cpu/armv7/exynos/power.c | 15 +++++++++++++++ arch/arm/include/asm/arch-exynos/power.h | 8 ++++++++ 2 files changed, 23 insertions(+), 0 deletions(-) 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