From patchwork Thu Jan 4 09:40:38 2018 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Siva Durga Prasad Paladugu X-Patchwork-Id: 855510 X-Patchwork-Delegate: monstr@monstr.eu Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Authentication-Results: ozlabs.org; spf=none (mailfrom) smtp.mailfrom=lists.denx.de (client-ip=81.169.180.215; helo=lists.denx.de; envelope-from=u-boot-bounces@lists.denx.de; receiver=) Authentication-Results: ozlabs.org; dkim=fail reason="signature verification failed" (1024-bit key; unprotected) header.d=xilinx.onmicrosoft.com header.i=@xilinx.onmicrosoft.com header.b="MW7Wk1Qs"; dkim-atps=neutral Received: from lists.denx.de (dione.denx.de [81.169.180.215]) by ozlabs.org (Postfix) with ESMTP id 3zC2qG6mPhz9s72 for ; Thu, 4 Jan 2018 20:40:58 +1100 (AEDT) Received: by lists.denx.de (Postfix, from userid 105) id 955C6C21DC5; Thu, 4 Jan 2018 09:40:54 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=-0.0 required=5.0 tests=BAD_ENC_HEADER, RCVD_IN_MSPIKE_H3,RCVD_IN_MSPIKE_WL,SPF_HELO_PASS,T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id A4AA1C21C2B; Thu, 4 Jan 2018 09:40:51 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id B4B2DC21C8F; Thu, 4 Jan 2018 09:40:50 +0000 (UTC) Received: from NAM01-BY2-obe.outbound.protection.outlook.com (mail-by2nam01on0085.outbound.protection.outlook.com [104.47.34.85]) by lists.denx.de (Postfix) with ESMTPS id CAEA6C21C29 for ; Thu, 4 Jan 2018 09:40:49 +0000 (UTC) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=xilinx.onmicrosoft.com; s=selector1-xilinx-com; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version; bh=QcoOUTEi3PKvFIDQ97qRWufNUMEkuHbHcjBxqtc2dVg=; b=MW7Wk1Qs64VcWrmSoV0XMKg9iwXKPpjx83GgahTC6LkGFMgZTjTngoa2PvVLDEXPXB0TU/rSr4XfO3tYlq3YRp2AAjTVVqtO9goFSnIRXVFL7xxJ53kzk2W0M9WKLgm1FbypQESQxO198M/PHUyMAcXMZl6GUvk0vN3WfN2kHiI= Received: from SN4PR0201CA0035.namprd02.prod.outlook.com (10.162.76.21) by DM5PR02MB3388.namprd02.prod.outlook.com (10.164.153.11) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P256) id 15.20.366.8; Thu, 4 Jan 2018 09:40:46 +0000 Received: from CY1NAM02FT030.eop-nam02.prod.protection.outlook.com (2a01:111:f400:7e45::200) by SN4PR0201CA0035.outlook.office365.com (2603:10b6:803:2e::21) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384) id 15.20.386.5 via Frontend Transport; Thu, 4 Jan 2018 09:40:46 +0000 Authentication-Results: spf=pass (sender IP is 149.199.60.83) smtp.mailfrom=xilinx.com; samsung.com; dkim=none (message not signed) header.d=none;samsung.com; dmarc=bestguesspass action=none header.from=xilinx.com; Received-SPF: Pass (protection.outlook.com: domain of xilinx.com designates 149.199.60.83 as permitted sender) receiver=protection.outlook.com; client-ip=149.199.60.83; helo=xsj-pvapsmtpgw01; Received: from xsj-pvapsmtpgw01 (149.199.60.83) by CY1NAM02FT030.mail.protection.outlook.com (10.152.75.163) with Microsoft SMTP Server (version=TLS1_0, cipher=TLS_RSA_WITH_AES_256_CBC_SHA) id 15.20.345.12 via Frontend Transport; Thu, 4 Jan 2018 09:40:45 +0000 Received: from unknown-38-66.xilinx.com ([149.199.38.66] helo=xsj-pvapsmtp01) by xsj-pvapsmtpgw01 with esmtp (Exim 4.63) (envelope-from ) id 1eX20x-00067u-W0; Thu, 04 Jan 2018 01:40:43 -0800 Received: from [127.0.0.1] (helo=localhost) by xsj-pvapsmtp01 with smtp (Exim 4.63) (envelope-from ) id 1eX20x-0004m3-Te; Thu, 04 Jan 2018 01:40:43 -0800 Received: from xsj-pvapsmtp01 (smtp2.xilinx.com [149.199.38.66]) by xsj-smtp-dlp1.xlnx.xilinx.com (8.13.8/8.13.1) with ESMTP id w049eccL031084; Thu, 4 Jan 2018 01:40:38 -0800 Received: from [172.23.37.99] (helo=xhdsivadur40.xilinx.com) by xsj-pvapsmtp01 with esmtp (Exim 4.63) (envelope-from ) id 1eX20s-0004in-1L; Thu, 04 Jan 2018 01:40:38 -0800 From: Siva Durga Prasad Paladugu To: Date: Thu, 4 Jan 2018 15:10:38 +0530 Message-ID: <1515058844-16007-2-git-send-email-sivadur@xilinx.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1515058844-16007-1-git-send-email-sivadur@xilinx.com> References: <1515058844-16007-1-git-send-email-sivadur@xilinx.com> X-RCIS-Action: ALLOW X-TM-AS-Product-Ver: IMSS-7.1.0.1224-8.2.0.1013-23572.006 X-TM-AS-User-Approved-Sender: Yes;Yes X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:149.199.60.83; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(376002)(39860400002)(39380400002)(396003)(346002)(2980300002)(438002)(189003)(199004)(50226002)(51416003)(63266004)(7696005)(81166006)(2351001)(6916009)(106466001)(305945005)(2950100002)(4326008)(77096006)(8936002)(5660300001)(48376002)(478600001)(36756003)(9786002)(50466002)(356003)(2906002)(106002)(54906003)(316002)(36386004)(76176011)(47776003)(16586007)(81156014)(8676002)(59450400001)(107886003)(154233001)(107986001); DIR:OUT; SFP:1101; SCL:1; SRVR:DM5PR02MB3388; H:xsj-pvapsmtpgw01; FPR:; SPF:Pass; PTR:unknown-60-83.xilinx.com; MX:1; A:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; CY1NAM02FT030; 1:kcIQHFquE4ATOiE3QSSh+lCyAeUwQNtGAo9uJk25+o2xgJyl0r3wy4FgTKhqP2CyW0/rwlVTYY0GY/76pRKA+cswhQbkr3e4PFPAIEfy4+OWpnA2R9bTA8CRYStxuPkz MIME-Version: 1.0 X-MS-PublicTrafficType: Email X-MS-Office365-Filtering-Correlation-Id: 478c466b-dae4-4f1f-a9bf-08d553573aec X-Microsoft-Antispam: UriScan:; BCL:0; PCL:0; RULEID:(4534020)(4602075)(4627115)(201703031133081)(201702281549075)(5600026)(4604075)(4608076)(2017052603307)(7153060); SRVR:DM5PR02MB3388; X-Microsoft-Exchange-Diagnostics: 1; DM5PR02MB3388; 3:H+SR9jyuFcfmHMtE8K76n5d8GlPCk7Ssd4uWsm9yg/yCFKPJk0tbpg5d1Zw85OSYFbZp58eI/zZiOprPUNknd/4ChNjWKMaredML+mCsgG7zSxzJ4fQtmljR32oesXal+fXovCD//as/2IBHQ5T1CXp5cHZ5ExqQ4ja2qboNlAgI9bOlJ5o3y56Gv8EIXdfTBTlYtZc+goeIoS4D6dL5SwD2s/HKnvYW+uD2Wege8perpGYQJ8mUlT4ZaKUFie95tkRe3y4FuB3N1GrSkl66mCSjDc5nQxANZntrZiiPXdF3s1X4otluOJjGjIRppyUCl/ZDkE5szCNsSmZb/qjMrWNIML/MhYsartq8yoCuLS8=; 25:UN58ECbB7MByS+Aj8UveoxMvfyePDvKC6/JxjQqM2MBBm8sUW2VZwQWI2qtX8rjZX7GunIqGosUqPhaWCgWoxqeLaEhmcdRTQmih/DajbDuvwT4uhh7Nmc2UBMNvdswtdDCAYfVEhtjDtSWYG866CHUFKl+Mrkjp8hSIEUYkIpOyh4weo8B93uwPJIm+mixcrOASFjxVP9ymZpCQa0RxstT3F3KJ6yi4U9MAPqndqR569iOxIxuUaaER3te/YkbHWnvIKqhV3n02BIRKO09Yny9DHURY3g/mdi/A0mycB8RD5VzUOt01MtTwrqDuv2up4g/ZMKRsLN7fRW3n7ig5eA== X-MS-TrafficTypeDiagnostic: DM5PR02MB3388: X-Microsoft-Exchange-Diagnostics: 1; DM5PR02MB3388; 31:SpoeWgfDndx+3Li14tAcW+cQPLQdTcJ/AR995W4F3GC/lQynNBFt83GQWFC3i3dFQnRAIe+d5Dj3IdVSA6OwSWtZD6XdKbWAdejOxxQsnHcKdfmKt6zLcDwjCbTMYeANm4d8WFJkMvMR+bjBCRZVokF8auw8bWE4gG7vm4DEilaeUzKqeRTA0u0aDMeFbhxQkNaHn5ndJmKAWFIdxRvtGp+v5VC2E6/xfYc4NhExIm0=; 20:gXjRqcFyklUcQ/Hwi5oBDJmLnl8/PJFBKrtjnlOCikSor+MkzanVpM1D9lqsOZCXjstlefkxnZUnCq/MsfSvvJbzkNhHtup5UGarSnfp42XsaF4AztZp7BCbpcrAJid4Z/i7iVVa7P3hDVipeqRGeNAKy5Tl5F2fNCHs9UQUWUvv9qFtydvMefKbIcCEMRQ1FCEKxZ2YPYCJIFbMFNjxQ9Per5hSiwd63pI2qAe+bBsvmdghjEgKg9QG2tFYVf4Cc+qh1kKH/IX59bLVQX5LsHpSpQPIpINhmL3FPX6leca9VlHhRqCifKpLcPoLP38Icgmj0+a4SmZX2EXmufR2/B3BA5mMi1IgaLUoGWSatf1rneb44DOEXKQJS7m9fEIXBQwaP8avbtR36IuA4H/B2m/GVL/+fc223Z5ZMJaKWNs9w55eNz9kYqg56vL1BfMlg6K57VQbtzRCuibQZtz3yV7sQ1Xsg+nt5o5iKAsRK0jeXf5P2i3jcaUTJMBWlwAM X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(192813158149592); X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(6040470)(2401047)(5005006)(8121501046)(3002001)(10201501046)(93006095)(93004095)(3231023)(944501075)(6055026)(6041268)(201703131423095)(201702281528075)(20161123555045)(201703061421075)(201703061406153)(20161123558120)(20161123560045)(20161123562045)(20161123564045)(6072148)(201708071742011); SRVR:DM5PR02MB3388; BCL:0; PCL:0; RULEID:(100000803101)(100110400095); SRVR:DM5PR02MB3388; X-Microsoft-Exchange-Diagnostics: 1; DM5PR02MB3388; 4:ZT6G1IJzoZPkYB3YZn6xTF01AA9nJh2Yv6eqvs5jZDZY4B50BK1yPVJLGba2Gb6US40i4T2EsiNmqq/4d7T8UXd11ZhChCYtFRDIYoAbRjXYHoeCGGxqUvA2Zfe/Ps/ED/h4VrZyVwZWDUb+nuXKs+j4nUE0SX7Nz8L2SKQJRo7OP8r5xKBwFQNVuxM2ncapc3YVnEnEWamynw2QTZGZjs34KUJPeaI1xSSBMOCjZSl6jvJP3++rTuGHUkHstPIggOnoUxRJBU/tNu7m0PYr14E8zUy+OYvoxNH/iwDBW3S89exSqGeUB/99I3IcNTgU X-Forefront-PRVS: 054231DC40 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; DM5PR02MB3388; 23:88o0YC6lB50TPLqsR+nrMVCjhN5+k7SZZsn2PXgoc?= IdduFN6uomzOsMmN+W0sTGcelJjo4k4KFr0bR4KkjaX0sR1tM36PCk09LqsuvUS5E2WQiJ9qxpaq4vT54HiVlYblVeq4P0/M7R0PgxrVtxYGarGrtgA/bJxf9JYc5t9aQ+S9FtlFut/mj9ycjAXbE6HNcWqdIRKpRQnmqVNqb0LhO8K4qiIDXdjI5qm2WDAd8wzh4G0zxmwF7YUAPHgIzJx2uG05WYBdfoJdxb/NhsucJibtIJOeDw1r2Z2/eiPWZnAjlMldWv1TfTOujBGU449Xx8KB91Rp1yKlHyGHSi/yycenjEYlozlmv/CovoIC9SOVfpBOO1jVv+oSiSMh6N/6MxaXfDW9jDQz2/HZ6D51wnbLXCgDbGAJkCqXBPtV/oJzdDa8qo20sPTyr8mS4n87GJc4X0Tzfn3IRio0aY1BmPMAw5Nvqzmp/hnoDYroBQwyAoSLlZ2Di3E6Yk4y6QiInqBSd85eRd7MtS11A/JaeAb0jJ64FJWEGnp5S5KPDmORVDBadWu1e6nvcyfIIgGBp35SAvnOSFrEpfj6lxr64QVp0VYM8B1pv3KDO9hRUkw7f/BdYTd9L03F41S4+qgh/6u5Ybf4Sr2WWROVb87CXAzOOGJv1cYUqX+pYhTBn4sW+ibPKMAgmc3JwGHvVrto6XjemRL9ENWcSLZftUJoPMAx4Jf/PtJM2dSE8KOq4nkrz/bJMAnshJSMFAvy4lFV/pWJvB8dVE6S3sqMsjFgZ8GTcheKHMH9jG9CEUHvFx8abFXyKD8o9deZfITHXghtxnjr11SAz0M9pNEGjLJoJ7w6bRksyUgaXVLSCe5RMQtXVbUATO7BBXwWd66N9nep6i7onFWOcZ8MPOi+/gfaVFqDHh6Jq/dPC/rNCxTrGsxGHHXgY3+BEAVL+MwZImx+9JPzOavUB6uS5Tze5p78Ixbal5S61IT2JFb02OO8w2dhjJ7dERUJr6muZVxZOw9U1sceU96Ay5R21tD7cCRwg== X-Microsoft-Exchange-Diagnostics: 1; DM5PR02MB3388; 6:0aevFWs611rWWheA4Lh70r69U14z1AyKNC1jnoGeUmsTSVPDSez6woyBe1iQg0x+uY5I0fUwK0JupROv6LlFaUYNqXUAP98Zl5uHG06wKDDCuwTT8FzN/7GxIPo0M2Uy5DJmKlDvwE5zStLpy7f3N/vgR4/uTJHfROuGKEblXr3TANcb9k03RCAA67xkoUmxcLrSIscZWLoJuKDFOGJmKqJVMD2LDMfpZixerRLTlVD53jIk4OZAD52kBvnQhIBgpXKR9F0R1gKF8d4BF+nAd7VY+zvb9LlnzSCTjI/lXt7j8M9a43hHuaepmaRtdMVkrVlR+UaScBUk72rGRCTtdHXUzLhqSmHDoX7vMBTGrMc=; 5:E6yHWo5wmlYzjz3+fZo7WVihSdlNt9ZDgozXGwr/GGY/REix2zuozpXPEnpQw62LuskPMYtaZ7pFteSXL1j2xc6HRw3Dg4Eb2StW6CgLERULKyimN3FdXd8YipIpxp/bCaZZDGr8bPpzOmzDhaOpOzSgd4Rkuxko72WzmzIn+C4=; 24:GaHoyRraFvz9y8Ucy6L8n5y+6DMAblQBQxLPmty/dxyjJVsYbGgbGI8XwHjejVWPOwoLNZW/f1lAIK4TafAkCuBvGAwT5x4eN+MCHvAS4CY=; 7:uQB6Z6opQ8/E8lcEbEQg01trsFQacYcM4DqPzXbC/o+QQSdPIm0oyhPQDj9yopme+FK3LZQbkCrKnypoOFJJHhZC+xUfCyXqn8kOejQ33LomwuDg98z+bq5xKTVsZw0apXc8j3W8lLG27zef/g2be0QnP5NiLQVzSjKX5iRVBZtjprsmbM+T3WFRNM5QDsyqeAeRoABI50a9y7Lh31ZufnQxGAXgKms7etqId/CoLL7eofvpHLK+Df5DA+h5DvWb SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: xilinx.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Jan 2018 09:40:45.0516 (UTC) X-MS-Exchange-CrossTenant-Network-Message-Id: 478c466b-dae4-4f1f-a9bf-08d553573aec X-MS-Exchange-CrossTenant-Id: 657af505-d5df-48d0-8300-c31994686c5c X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=657af505-d5df-48d0-8300-c31994686c5c; Ip=[149.199.60.83]; Helo=[xsj-pvapsmtpgw01] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: DM5PR02MB3388 Cc: Siva Durga Prasad Paladugu Subject: [U-Boot] [PATCH v2 1/7] mmc: sdhci: Add support for disabling clock X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" This patch adds support to disable clock if clk_disable was set and then enable or set clock if the clock was changed or clock was disabled when clock needs to be enabled. Signed-off-by: Siva Durga Prasad Paladugu --- drivers/mmc/sdhci.c | 7 ++++++- include/sdhci.h | 1 + 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/sdhci.c b/drivers/mmc/sdhci.c index e2ddf5d..2bd721f 100644 --- a/drivers/mmc/sdhci.c +++ b/drivers/mmc/sdhci.c @@ -437,8 +437,13 @@ static int sdhci_set_ios(struct mmc *mmc) if (host->ops && host->ops->set_control_reg) host->ops->set_control_reg(host); - if (mmc->clock != host->clock) + if ((mmc->clock != host->clock || host->clk_disabled) && + !mmc->clk_disable) sdhci_set_clock(mmc, mmc->clock); + if (mmc->clk_disable) { + sdhci_set_clock(mmc, 0); + host->clk_disabled = true; + } /* Set bus width */ ctrl = sdhci_readb(host, SDHCI_HOST_CONTROL); diff --git a/include/sdhci.h b/include/sdhci.h index 7e84012..4fc4140 100644 --- a/include/sdhci.h +++ b/include/sdhci.h @@ -259,6 +259,7 @@ struct sdhci_host { uint voltages; struct mmc_config cfg; + bool clk_disabled; }; #ifdef CONFIG_MMC_SDHCI_IO_ACCESSORS