From patchwork Mon Jan 21 11:11:40 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Akshay Saraswat X-Patchwork-Id: 214116 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 4DD822C0080 for ; Mon, 21 Jan 2013 23:06:22 +1100 (EST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id E33BD4A0F3; Mon, 21 Jan 2013 13:06:09 +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 l-5Td-R9ALQ8; Mon, 21 Jan 2013 13:06:09 +0100 (CET) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id AFA0F4A0F6; Mon, 21 Jan 2013 13:05:46 +0100 (CET) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 07D884A08E for ; Mon, 21 Jan 2013 12:02:57 +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 STRVQOnhb7R4 for ; Mon, 21 Jan 2013 12:02:55 +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 mailout4.samsung.com (mailout4.samsung.com [203.254.224.34]) by theia.denx.de (Postfix) with ESMTP id 564B94A04A for ; Mon, 21 Jan 2013 12:02:53 +0100 (CET) Received: from epcpsbgm1.samsung.com (epcpsbgm1 [203.254.230.26]) by mailout4.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTP id <0MGZ005NT27Z7J80@mailout4.samsung.com> for u-boot@lists.denx.de; Mon, 21 Jan 2013 19:52:47 +0900 (KST) Received: from epcpsbgm1.samsung.com ( [172.20.52.124]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id AD.F8.03918.FFD1DF05; Mon, 21 Jan 2013 19:52:47 +0900 (KST) X-AuditID: cbfee61a-b7f7d6d000000f4e-e5-50fd1dff10c6 Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id 0C.F8.03918.EFD1DF05; Mon, 21 Jan 2013 19:52:46 +0900 (KST) Received: from chrome-ubuntu.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 <0MGZ0098E23DT650@mmp1.samsung.com> for u-boot@lists.denx.de; Mon, 21 Jan 2013 19:52:46 +0900 (KST) From: Akshay Saraswat To: u-boot@lists.denx.de Date: Mon, 21 Jan 2013 06:11:40 -0500 Message-id: <1358766705-2118-3-git-send-email-akshay.s@samsung.com> X-Mailer: git-send-email 1.8.0 In-reply-to: <1358766705-2118-1-git-send-email-akshay.s@samsung.com> References: <1358766705-2118-1-git-send-email-akshay.s@samsung.com> X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFvrMLMWRmVeSWpSXmKPExsWyRsSkRve/7N8Ag67D3BZv93ayOzB6nL2z gzGAMYrLJiU1J7MstUjfLoEr48HBnYwFZ3kqVixYwdjAeI6ri5GTQ0LAROL148PsELaYxIV7 69m6GLk4hASWMkosnHSIEaboSsMhFojEIkaJtjULGCGcZUwSjw78ZQWpYhPQkdi+5DvYKBEB CYlf/VfBupkFyiQe7WoAs4UFwiUWr5/LAmKzCKhKPOyczQZi8wo4S7zc+RvqDDmJD3segdmc Ai4Syz9MBZsvBFTz4PN8Voia62wSX95xQMwRkPg2GeQ6DqC4rMSmA8wQJZISB1fcYJnAKLyA kWEVo2hqQXJBcVJ6rqFecWJucWleul5yfu4mRmAQnv73TGoH48oGi0OMAhyMSjy8GVP/BAix JpYVV+YeYpTgYFYS4f05AyjEm5JYWZValB9fVJqTWnyIMRlo+URmKdHkfGCE5JXEGxqbmJsa m1oaGZmZmpImrCTOy3jqSYCQQHpiSWp2ampBahHMFiYOTqkGRv0WrebuX8cP/43NKorbKuVw NvLLE9OLL21rHlzwWtudH/KzU0GyaJJ9z940zk4jiU9SCxZeSLv48sAJv8vLVVK2N1paPHux ojO4r1p5NmPju9Z2fvbY6THZup2L18av3cf8xXmq9N5FystLFrD4PhfhKPixYdUCGdnbv379 Tv4UfNz6efnHOUosxRmJhlrMRcWJANyeCByGAgAA X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrMIsWRmVeSWpSXmKPExsVy+t9jAd1/sn8DDOauNLV4u7eT3YHR4+yd HYwBjFENjDYZqYkpqUUKqXnJ+SmZeem2St7B8c7xpmYGhrqGlhbmSgp5ibmptkouPgG6bpk5 QGOVFMoSc0qBQgGJxcVK+naYJoSGuOlawDRG6PqGBMH1GBmggYQ1jBkPDu5kLDjLU7FiwQrG BsZzXF2MnBwSAiYSVxoOsUDYYhIX7q1n62Lk4hASWMQo0bZmASOEs4xJ4tGBv6wgVWwCOhLb l3xnB7FFBCQkfvVfZQSxmQXKJB7tagCzhQXCJRavnws2lUVAVeJh52w2EJtXwFni5c7f7BDb 5CQ+7HkEZnMKuEgs/zAVbL4QUM2Dz/NZJzDyLmBkWMUomlqQXFCclJ5rqFecmFtcmpeul5yf u4kRHOTPpHYwrmywOMQowMGoxMObMfVPgBBrYllxZe4hRgkOZiUR3p8zgEK8KYmVValF+fFF pTmpxYcYk4GumsgsJZqcD4zAvJJ4Q2MTc1NjU0sTCxMzS9KElcR5GU89CRASSE8sSc1OTS1I LYLZwsTBKdXAuOi+YUvoQYHakw6C7/rqFmjHefo9F/nMu8PB/k7NrdDTc5/ejAn4eHB+uuny +f9+lBc8Vpjl3RRRpGF8JemM6hWVBSkTjO4e3rna/dzpg1yvze9XvTqQ5bDG6eLDRUk7NWdc PFI8MSX6+8KVp58e8jZZdD5W9trHl3c+7/iasDbFIP3/qguct92VWIozEg21mIuKEwHOzuX5 tgIAAA== DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected X-Mailman-Approved-At: Mon, 21 Jan 2013 13:05:42 +0100 Cc: hatim.rv@samsung.com, rajeshwari.s@samsung.com Subject: [U-Boot] [PATCH 2/7 v5] EXYNOS5: Implement board_poweroff 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 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 v4: - Changed API name from power_shutdown to generic board_poweroff defined in commomn.h. arch/arm/cpu/armv7/exynos/power.c | 15 +++++++++++++++ arch/arm/include/asm/arch-exynos/power.h | 1 + 2 files changed, 16 insertions(+) diff --git a/arch/arm/cpu/armv7/exynos/power.c b/arch/arm/cpu/armv7/exynos/power.c index d4bce6d..1d26982 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. + */ +void board_poweroff(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..7463036 100644 --- a/arch/arm/include/asm/arch-exynos/power.h +++ b/arch/arm/include/asm/arch-exynos/power.h @@ -863,5 +863,6 @@ 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) #endif