From patchwork Thu Apr 4 07:06:05 2013 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Rajeshwari Shinde X-Patchwork-Id: 15897 Return-Path: X-Original-To: patchwork@peony.canonical.com Delivered-To: patchwork@peony.canonical.com Received: from fiordland.canonical.com (fiordland.canonical.com [91.189.94.145]) by peony.canonical.com (Postfix) with ESMTP id 44B3423E21 for ; Thu, 4 Apr 2013 06:59:22 +0000 (UTC) Received: from mail-ve0-f198.google.com (mail-ve0-f198.google.com [209.85.128.198]) by fiordland.canonical.com (Postfix) with ESMTP id DBDE2A18CCA for ; Thu, 4 Apr 2013 06:59:21 +0000 (UTC) Received: by mail-ve0-f198.google.com with SMTP id ox1sf3770229veb.1 for ; Wed, 03 Apr 2013 23:59:21 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=20120113; h=x-received:mime-version:x-beenthere:x-received:received-spf :x-received:x-forwarded-to:x-forwarded-for:delivered-to:x-received :received-spf:x-auditid:from:to:cc:subject:date:message-id:x-mailer :x-brightmail-tracker:x-brightmail-tracker:dlp-filter:x-mtr :x-cfilter-loop:x-gm-message-state:x-original-sender :x-original-authentication-results:precedence:mailing-list:list-id :x-google-group-id:list-post:list-help:list-archive:list-unsubscribe; bh=oFtH6Rd4F4WTWLjxfVzyiCUnVpra0/UaEgD7UHECkuY=; b=B/Vopsxhq+FQ8rLT0ry1MMfyDJlh6dzXvzyTQoH+mqsKXIpJ4ZLjXLrObXD/QvuH/T EGEhF9FgtYlJ0qyOTHCogLivJdg0HIdvdENX30BXwaZwSV/V+lmaD3CMNNPDEnMiQyH4 Gxf4oTHGyENXasb1hEp/W/q9Qcbz+lc5YOjBQCDxxAgmTttpYnqDr55sZ1brzqWwxj8g GOvxeBlpdXk+3RXWo3/SliyjRDnj5hD79dbCxjvE2aRCtOC3x/CnoPneAYyviPSZOuPO 2/cFUt7DmQ7QHO5maXLIavfgB4ETRtOSOiztt8lwh6Lkn2khuWC0bZcqyB2qtrl/2d/C gr3Q== X-Received: by 10.224.157.1 with SMTP id z1mr2751276qaw.8.1365058761388; Wed, 03 Apr 2013 23:59:21 -0700 (PDT) MIME-Version: 1.0 X-BeenThere: patchwork-forward@linaro.org Received: by 10.49.50.196 with SMTP id e4ls1395530qeo.75.gmail; Wed, 03 Apr 2013 23:59:21 -0700 (PDT) X-Received: by 10.220.8.4 with SMTP id f4mr3799726vcf.20.1365058761179; Wed, 03 Apr 2013 23:59:21 -0700 (PDT) Received: from mail-ve0-f173.google.com (mail-ve0-f173.google.com [209.85.128.173]) by mx.google.com with ESMTPS id dl5si7471953ved.8.2013.04.03.23.59.21 (version=TLSv1 cipher=ECDHE-RSA-RC4-SHA bits=128/128); Wed, 03 Apr 2013 23:59:21 -0700 (PDT) Received-SPF: neutral (google.com: 209.85.128.173 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) client-ip=209.85.128.173; Received: by mail-ve0-f173.google.com with SMTP id cy12so2365483veb.18 for ; Wed, 03 Apr 2013 23:59:21 -0700 (PDT) X-Received: by 10.52.93.20 with SMTP id cq20mr3251044vdb.38.1365058761056; Wed, 03 Apr 2013 23:59:21 -0700 (PDT) X-Forwarded-To: patchwork-forward@linaro.org X-Forwarded-For: patch@linaro.org patchwork-forward@linaro.org Delivered-To: patches@linaro.org Received: by 10.58.85.136 with SMTP id h8csp203123vez; Wed, 3 Apr 2013 23:59:20 -0700 (PDT) X-Received: by 10.68.225.201 with SMTP id rm9mr6107125pbc.108.1365058759727; Wed, 03 Apr 2013 23:59:19 -0700 (PDT) Received: from mailout2.samsung.com (mailout2.samsung.com. [203.254.224.25]) by mx.google.com with ESMTP id io9si9699096pbc.48.2013.04.03.23.59.19; Wed, 03 Apr 2013 23:59:19 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of rajeshwari.s@samsung.com designates 203.254.224.25 as permitted sender) client-ip=203.254.224.25; 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 <0MKP006OZY1XHVM0@mailout2.samsung.com> for patches@linaro.org; Thu, 04 Apr 2013 15:59:11 +0900 (KST) Received: from epcpsbgm1.samsung.com ( [172.20.52.124]) by epcpsbgr1.samsung.com (EPCPMTA) with SMTP id 51.81.20872.FB42D515; Thu, 04 Apr 2013 15:59:11 +0900 (KST) X-AuditID: cbfee68d-b7f786d000005188-fa-515d24bfe83b Received: from epmmp1.local.host ( [203.254.227.16]) by epcpsbgm1.samsung.com (EPCPMTA) with SMTP id C4.E6.17838.FB42D515; Thu, 04 Apr 2013 15:59:11 +0900 (KST) Received: from rajeshwari-linux.sisodomain.com ([107.108.215.115]) by mmp1.samsung.com (Oracle Communications Messaging Server 7u4-24.01(7.0.4.24.0) 64bit (built Nov 17 2011)) with ESMTPA id <0MKP00GD4Y2EX410@mmp1.samsung.com>; Thu, 04 Apr 2013 15:59:11 +0900 (KST) From: Rajeshwari Shinde To: u-boot@lists.denx.de Cc: patches@linaro.org, sjg@chromium.org, mk7.kang@samsung.com Subject: [PATCH] EXYNOS: Add API for power reset and shutdown Date: Thu, 04 Apr 2013 12:36:05 +0530 Message-id: <1365059165-23764-1-git-send-email-rajeshwari.s@samsung.com> X-Mailer: git-send-email 1.7.4.4 X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFjrJLMWRmVeSWpSXmKPExsWyRsSkRne/Smygwcn7ihYdR1oYLaYc/sJi 8W3LNkaLt3s72R1YPGY3XGTxuHNtD5vH2Ts7GD36tqxiDGCJ4rJJSc3JLEst0rdL4MqYtG4H S0GTYMWf7dfYGhiX83UxcnBICJhIHLtu0sXICWSKSVy4t54NxBYSWMoo0bfIHSJuItF3dz1L FyMXUHwRo8TO2zeYIZyJTBLrpixkBqliEzCS2HpyGiOILSIgIfGr/yqYzSxgJ7F5TTM7iC0s YCuxbuVPMJtFQFVi7pn5YL28Ah4SM96/YIPYpiBxbOpXVgj7OZvErk26EPUCEt8mH2KBOFpW YtMBZogSSYmDK26wTGAUXMDIsIpRNLUguaA4Kb3IUK84Mbe4NC9dLzk/dxMjMBhP/3vWu4Px 9gHrQ4zJQOMmMkuJJucDgzmvJN7Q2MzIwtTE1NjI3NKMNGElcV61FutAIYH0xJLU7NTUgtSi +KLSnNTiQ4xMHJxSDYxxB6/9ifwuvNf9olRej2rFi2ImnStyDfs/6XRfZVz9VmWG4ja/jdwb rW2D9ob99fP5usZe3jHo2syFJ2dorirzkBB+Vv5yyezwijWmsvu//uYRuHjdMaG9UPmJ3NVd +g90ctWfrXrdam/fvShNd8miC5eK2TlSnjuvV7rm+oWtn+vajHuK1b+UWIozEg21mIuKEwHE vofkXAIAAA== X-Brightmail-Tracker: H4sIAAAAAAAAA+NgFlrJIsWRmVeSWpSXmKPExsVy+t9jAd39KrGBBmffS1t0HGlhtJhy+AuL xbct2xgt3u7tZHdg8ZjdcJHF4861PWweZ+/sYPTo27KKMYAlqoHRJiM1MSW1SCE1Lzk/JTMv 3VbJOzjeOd7UzMBQ19DSwlxJIS8xN9VWycUnQNctMwdoqZJCWWJOKVAoILG4WEnfDtOE0BA3 XQuYxghd35AguB4jAzSQsIYxY9K6HSwFTYIVf7ZfY2tgXM7XxcjJISFgItF3dz0LhC0mceHe erYuRi4OIYFFjBI7b99ghnAmMkmsm7KQGaSKTcBIYuvJaYwgtoiAhMSv/qtgNrOAncTmNc3s ILawgK3EupU/wWwWAVWJuWfmg/XyCnhIzHj/gg1im4LEsalfWScwci9gZFjFKJpakFxQnJSe a6hXnJhbXJqXrpecn7uJERzwz6R2MK5ssDjEKMDBqMTDu9I/JlCINbGsuDL3EKMEB7OSCK87 T2ygEG9KYmVValF+fFFpTmrxIcZkoO0TmaVEk/OB0ZhXEm9obGJuamxqaWJhYmZJmrCSOO+B VutAIYH0xJLU7NTUgtQimC1MHJxSDYx9W+/8M2aeldmnNpNptVeVE/uO9e1RLY8Xfgk+sDAx +/mZSZ+ueory/mqzX+V52G/tk5yTNd51c/Lu6DFvqLN+F7SfaUeIkczZrds9Dz+dxWBgct3o g5np9dcW5Y9nXZW5ELTQieGa4ZmiFhu15xGT905q/Cb6sOr7v6OhL1uSzNf8fsZQ/q9WiaU4 I9FQi7moOBEAFAYFSbwCAAA= DLP-Filter: Pass X-MTR: 20000000000000000@CPGS X-CFilter-Loop: Reflected X-Gm-Message-State: ALoCoQkKerbldk2Q4/SpIcjoJAmAiqJvloiNcs8Tw2RVi3Ip1m4sF1wGpe9sEkvxGfrvc/tH9+L0 X-Original-Sender: rajeshwari.s@samsung.com X-Original-Authentication-Results: mx.google.com; spf=neutral (google.com: 209.85.128.173 is neither permitted nor denied by best guess record for domain of patch+caf_=patchwork-forward=linaro.org@linaro.org) smtp.mail=patch+caf_=patchwork-forward=linaro.org@linaro.org Precedence: list Mailing-list: list patchwork-forward@linaro.org; contact patchwork-forward+owners@linaro.org List-ID: X-Google-Group-Id: 836684582541 List-Post: , List-Help: , List-Archive: List-Unsubscribe: , This patch adds API's to reset and shutdown the power of EXYNOS boards power_shutdown: powers off the board by deasserting PS_HOLD pin. power_reset: this function software resets the Exynos board when called. Signed-off-by: Che-Liang Chiou Signed-off-by: Rajeshwari Shinde --- arch/arm/cpu/armv7/exynos/power.c | 31 ++++++++++++++++++++++++++++++ arch/arm/include/asm/arch-exynos/power.h | 10 +++++++++ 2 files changed, 41 insertions(+), 0 deletions(-) diff --git a/arch/arm/cpu/armv7/exynos/power.c b/arch/arm/cpu/armv7/exynos/power.c index 6375a81..2b65bbe 100644 --- a/arch/arm/cpu/armv7/exynos/power.c +++ b/arch/arm/cpu/armv7/exynos/power.c @@ -113,6 +113,25 @@ void set_ps_hold_ctrl(void) } +void exynos5_power_shutdown(void) +{ + struct exynos5_power *power = + (struct exynos5_power *)samsung_get_base_power(); + + clrbits_le32(&power->ps_hold_control, EXYNOS_PS_HOLD_CONTROL_DATA_HIGH); +} + +void exynos5_power_reset(void) +{ + struct exynos5_power *power = + (struct exynos5_power *)samsung_get_base_power(); + + /* Clear inform1 so there's no change we think we've got a wake reset */ + power->inform1 = 0; + + setbits_le32(&power->swreset, 1); +} + static void exynos5_set_xclkout(void) { struct exynos5_power *power = @@ -140,3 +159,15 @@ void set_hw_thermal_trip(void) setbits_le32(&power->ps_hold_control, POWER_ENABLE_HW_TRIP); } } + +void power_shutdown(void) +{ + if (cpu_is_exynos5()) + exynos5_power_shutdown(); +} + +void power_reset(void) +{ + if (cpu_is_exynos5()) + exynos5_power_reset(); +} diff --git a/arch/arm/include/asm/arch-exynos/power.h b/arch/arm/include/asm/arch-exynos/power.h index 3549667..6844e0f 100644 --- a/arch/arm/include/asm/arch-exynos/power.h +++ b/arch/arm/include/asm/arch-exynos/power.h @@ -888,4 +888,14 @@ void set_ps_hold_ctrl(void); * source as XXTI */ void set_xclkout(void); + +/* + * Power off the system; it should never return. + */ +void power_shutdown(void); + +/* + * Perform a software reset. + */ +void power_reset(void); #endif