From patchwork Wed Apr 20 10:20:44 2016 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yangbo Lu X-Patchwork-Id: 612619 Return-Path: X-Original-To: patchwork-incoming@ozlabs.org Delivered-To: patchwork-incoming@ozlabs.org Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) (using TLSv1.2 with cipher AECDH-AES256-SHA (256/256 bits)) (No client certificate requested) by ozlabs.org (Postfix) with ESMTPS id 3qqdTD20Wgz9t4h for ; Wed, 20 Apr 2016 20:31:12 +1000 (AEST) Received: from lists.ozlabs.org (lists.ozlabs.org [IPv6:2401:3900:2:1::3]) by lists.ozlabs.org (Postfix) with ESMTP id 3qqdTD18KLzDqjr for ; Wed, 20 Apr 2016 20:31:12 +1000 (AEST) X-Original-To: linuxppc-dev@lists.ozlabs.org Delivered-To: linuxppc-dev@lists.ozlabs.org Received: from na01-bn1-obe.outbound.protection.outlook.com (mail-bn1bon0093.outbound.protection.outlook.com [157.56.111.93]) (using TLSv1.2 with cipher ECDHE-RSA-AES256-SHA384 (256/256 bits)) (No client certificate requested) by lists.ozlabs.org (Postfix) with ESMTPS id 3qqdS808kgzDqWl for ; Wed, 20 Apr 2016 20:30:15 +1000 (AEST) Received: from BLUPR03CA010.namprd03.prod.outlook.com (10.255.124.27) by CY1PR0301MB1227.namprd03.prod.outlook.com (10.161.212.149) with Microsoft SMTP Server (TLS) id 15.1.466.19; Wed, 20 Apr 2016 10:30:09 +0000 Received: from BN1AFFO11OLC001.protection.gbl (10.255.124.4) by BLUPR03CA010.outlook.office365.com (10.255.124.27) with Microsoft SMTP Server (TLS) id 15.1.453.26 via Frontend Transport; Wed, 20 Apr 2016 10:30:08 +0000 Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=nxp.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=none action=none header.from=nxp.com; Received-SPF: Fail (protection.outlook.com: domain of nxp.com does not designate 192.88.158.2 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.158.2; helo=az84smr01.freescale.net; Received: from az84smr01.freescale.net (192.88.158.2) by BN1AFFO11OLC001.mail.protection.outlook.com (10.58.53.72) with Microsoft SMTP Server (TLS) id 15.1.472.8 via Frontend Transport; Wed, 20 Apr 2016 10:30:08 +0000 Received: from titan.ap.freescale.net ([10.192.208.233]) by az84smr01.freescale.net (8.14.3/8.14.0) with ESMTP id u3KAU0MM030461; Wed, 20 Apr 2016 03:30:05 -0700 From: Yangbo Lu To: , , Subject: [PATCH 2/2] mmc: sdhci-pltfm: get clock through the common clk APIs Date: Wed, 20 Apr 2016 18:20:44 +0800 Message-ID: <1461147644-18041-2-git-send-email-yangbo.lu@nxp.com> X-Mailer: git-send-email 2.1.0.27.g96db324 In-Reply-To: <1461147644-18041-1-git-send-email-yangbo.lu@nxp.com> References: <1461147644-18041-1-git-send-email-yangbo.lu@nxp.com> X-EOPAttributedMessage: 0 X-Matching-Connectors: 131056218089353465; (91ab9b29-cfa4-454e-5278-08d120cd25b8); () X-Forefront-Antispam-Report: CIP:192.88.158.2; IPV:NLI; CTRY:US; EFV:NLI; SFV:NSPM; SFS:(10009020)(6009001)(2980300002)(1109001)(1110001)(339900001)(199003)(189002)(5008740100001)(106466001)(19580395003)(11100500001)(105606002)(48376002)(6806005)(2906002)(50986999)(104016004)(19580405001)(2201001)(1220700001)(2950100001)(1096002)(5001770100001)(586003)(229853001)(33646002)(92566002)(5003940100001)(87936001)(77096005)(81166005)(76176999)(86362001)(4326007)(189998001)(85426001)(50226001)(50466002)(36756003)(7059030)(2101003)(358055004); DIR:OUT; SFP:1101; SCL:1; SRVR:CY1PR0301MB1227; H:az84smr01.freescale.net; FPR:; SPF:Fail; MLV:sfv; A:1; MX:1; LANG:en; X-Microsoft-Exchange-Diagnostics: 1; BN1AFFO11OLC001; 1:LsQ6YiUE0e1Lx7XC0086TdaVUbsiLrUbfPecfNDkaWRa46GCU0XS/eVroesLCL8phPDofuJgHLg62yV0GX4tQ43M3+eY5xDzQfAXmY5082faV7drbi9WRACUK1wSfhOFiQ1V84YA3ddelZYCivTQfmVsM5BjmCk6qboj7bxCg4jjVq2E+KzcaVlx+jSBmx4NB4mf6f0Z7ZsJge2JCUL2Gu8Yv6gesBTvx8AT6ryLLj3jBg8ZwwkJRMIWZt0lazt3ehPa8ZxUs8sOyei75sdH7dcxd+UsP9NH/1EH9JHT9g1h1YtegieC6fxl+OH+MEnFMlXt+bYTUibuekL07G52FrUdFpzlHKBb+24DTnRdVyLkOqUCpnKDg3uMjSW+NEOpvhIs9ZPaBCW1e+61vVrM+s/RWmYAnP9kmnhfKLi53sfJH0a5Lx3Rvoi0RNfwTJBsl0nai3T7JZg2GXMfQByOtjHjDbaRwRM+dQzpFY24HbBHGYCE7v9yqw8jL+AkT8fZishJ2EY5jR+GggdcsMZfrEjwdt9cP//xGhL7sgXGFD/7UfK9rTkBjqJ2sCkJuWfLcvZKs8qvb5WH3TyK8gdTRcZWmtk5cI+cjqQR6K7OLvoQ7gZcogGOyV1pXeatIbCCXo/56X7enh13cOYV5YerpprcDvQE64Rs3dP2ycJ/hViYTneQ3z7wqfxGp8a6SbMA MIME-Version: 1.0 X-MS-Office365-Filtering-Correlation-Id: 8f703942-2e94-4542-0f9c-08d36906bf47 X-Microsoft-Exchange-Diagnostics: 1; CY1PR0301MB1227; 2:XF+Xl5jfNdLteFk4oQNaRAeA/Ma1LCCEGDx9vgwjWKAWtUI/AP9xANirCZEeXRC+yUrAQaKtbec3eOy5spBiycySAhP/LWn5N3wjQG2bUFMG4ecuzK75EBakR6U0llPtGu7dI9NiGoAd7FZPfw80tcfSeMrI8nbGBFMW/e1DspNuPWWj+VWrqxvNlGa1mX+o; 3:YDRsGxDw6WfUeaj6L5ZNSKI/Aa8nwEmVa3DSLt40jZ7m0jePwN20iSqKCBK6aWw7HOfBOHs67q8YnCtNVg4TnII4w3Vso+nczCl1fgkDyQZRGj2nRLIO6GSvcvCjUSbPhylLP1E59U7yhN5HcSHt+tF28y/8BiOdoEfiSLE6SR8wk95VOWqFZsIEAYoN/R8/Oa4ql2fNVv2CkrdBKFiqlETpzRUHI83o9XGsV6r7dCI=; 25:3XyNFCPxocn/S//wrpnDHML7YDYAb7gBkGx6ZKqaO0O05CILZLv0YfmTUD52QN4Mhj5OkzCfropraCp3UyaPPCNaDBUpbgRbT/L1mseERVefkAggG88gQaRnsnX1AGGuG7+VjhjLNGAM7Vbd0pnlDIOwte17AFJgGX2k2f4qBtQelDoJbTzFfC93DEzPUryrnpYu7vPcD8BfTQx9uNeBjtiGaF4TD8rrcvf4oJwryiN4aKPBtImeO2uQWE68NacEW+KDAHdQsT7K96agWKQEfu4neIFJQUiMqeAgZnY54I4SeU/nqLDzC0dg2RQmlqedxRaqi662mtPPSvUILNU3bg== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1227; X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0; PCL:0; RULEID:(601004)(2401047)(5005006)(8121501046)(13024025)(13023025)(13017025)(13015025)(13018025)(3002001)(10201501046)(6055026); SRVR:CY1PR0301MB1227; BCL:0; PCL:0; RULEID:(400006); SRVR:CY1PR0301MB1227; X-Microsoft-Exchange-Diagnostics: 1; CY1PR0301MB1227; 4:fr1+r5hscrNAfrt1fpELxvTs8lyUg63DGGS3NAf7NRy1apYcA/LVeROC5gFGcZ8yYU7M4zzT5uW1HpeS9MjfL/pFCuB1DXsWkndK4S1chwA9fZAYLC12vr70wYucgrzDJtkKx2/Sd2tnixGmSX/6ik18leh2nW8NqM9cP49ioPNjen48kSeqNvkpIR6+cl3i6OdEEQl2r83PhfaI0fi9Mlf3D1QqO3nTAXyW5f+yjwjsnPKImECIUPun/obDFg7yDxTW9WSPGM2byCjHx86iwzY1njGyuEvWUcv5mCOIfT4oPIYy8tkw58MtkZJd3od4WCCvbIjw7Fz3RRTTgLhZ93pWLgbZpI/Lb4yBKM1tKnX9089ilTVmViU6RmbepevMXmQK8hQrlr73kNey6sK4ZigJzs8UQb9H6r2x8NMfhoCuLEj2pm1oTZ+a0rGKM9PWP1oOTqbptO/jZ9+Kh3iqAelvLf5MK9CFiLIbfcx45dI= X-Forefront-PRVS: 0918748D70 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; CY1PR0301MB1227; 23:+A5xcjfz0x/xgBduvZUDd+mnoLEI2lhN11gSGl9?= =?us-ascii?Q?kLq0T5WuDftv2ntiqLGhgebCnXbGVMuM6XQ3kqesXwT/lCHNHHiqYVZ2/RTY?= =?us-ascii?Q?dwVa36ShXQmw6fKxxBeajU2wzJV8o2GyZF3dgfUu5Ky0VxcSA5GpLO6GTN3P?= =?us-ascii?Q?DdPwy/n7LtJceMdP9+WirXfhgOTRADxfNIanqoeW6yEIPLeheaBg4SNU1voA?= =?us-ascii?Q?1WNQLPuUHiJ42Z9WMsHXHrLa1sH/kL0q32qaB4ZvbGnSgrGNSM9O0t06FEXe?= =?us-ascii?Q?K6ys7YyTJ8yHO7DqkIvftYr+ZOLI13JpxM12YOy8tB8piSJ+93spmA0Q9aBx?= =?us-ascii?Q?yTRAb3YAUb6dVvSlx1EPqskVIqF+ppueHEUytUpGFj+nQjL5BNb/+ZozvTDy?= =?us-ascii?Q?Xn2xNZ1ZbLcoLMP5pd31I4hENREJn602fhFux7x/OwShXVscWor2Kndjv4Pv?= =?us-ascii?Q?KLivwdyJDn1sbfuLfzKOKz5e2eNZyn0onJUvd5wT2cIpTxY12m71QiyKBqF3?= =?us-ascii?Q?bRaOBGfXVBFaqDDt9peRGF8WcTGLehP7cCxjsrl6ve3vDREb6pQH+F1B3u28?= =?us-ascii?Q?NbIVCi90zuwbPOpVONlIzPSC5UcW9OhATRz5mjmL6JrSKQx/N5La33YiAD8x?= =?us-ascii?Q?2EPu1LSIZdtvdLK3BMggKEbaOC3JUfGF8yIUwkRk86gyFVDfV/mWYZU2E2zF?= =?us-ascii?Q?KnjAZPsSBGw/+fy4mwMgPUAXBE6QoGLe3jEN8SjSnk+Lt5/nR5PpGgR7ciia?= =?us-ascii?Q?j59i97PP8m5XZbaSgVEBeSvj5k4lFjt8shz/vg89DKLAPnkdHItUE3PTMZtK?= =?us-ascii?Q?W/hXmfQHfepfAeVX+HGYhy3CyNoRAZ/nwDLnazlYCDxxkOudDun2ON6gIpZI?= =?us-ascii?Q?q7mobTJcSzaH8+99olEr+UOgDulz/aEVkBiFZpVEf9gpipgr/CZ7xGfc55pX?= =?us-ascii?Q?UbmtcsU3QQ93uGGvNk83HI3ua0/ulEtIOI8kc6WSmNFvVepQxMrIZ3jlOPVH?= =?us-ascii?Q?URxFLX+/ANphEgO5B6dhjPJeTkdVdwPnt423JWSGwX3v4iY2XG7/AlNoG1fn?= =?us-ascii?Q?lf0H8i80mbMGbhiErMyZvjtEHW3DKc7OtyX+JG5va4ooLrwuVUA=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1; CY1PR0301MB1227; 5:603nfZeZPHKzXDuGr638hnmLWaMTTqy4J78i62DUvl6oo+QRYu2tAUKJ04b3enhHxC8qsbluvzs5As9lElB5aWZOl8+2WK+rdv+YwOohhjTWHlLBQx0QLYNPpfeoFEUzNObAv4571Ri2b/mwZYqS/SB2Wg+ww3tOpvgsUfEwVOkEQ2i9e7Rg/9l0doON89N6RNOrRvgtWrXRVAj5mqODYw==; 24:VwSMBZcKUuFaM1tb6y9l66l/sFSU1ux7+eP0E+Pxl9A7oIbKmwi0OVeua1O8pk+fXB1HQMqinJxrgDccEx5aISOZIpWOguRXDPq6NC49OQ0=; 7:iwFd038mX6P1yevSG0+vsGTRNC59eSZblYE8Ii865t8IzcXa6BRhGvAnzj/JjfjyozBARtr3N3yN7XxnDKPkOeNzLedyCgXb017k47PvuCg8vcQr0BdwTYGr7bGbM84cAYBZMKnYh6zg0rtSn9Glv1ZAWmO3TSiUs4kTguj6hNghEbSyCg6qGWiUHOJhzRQe1WU0Fo1ZuB5ASy42xEoAUftekWxQ0GSdVX7gS8TXofQ= SpamDiagnosticOutput: 1:23 SpamDiagnosticMetadata: NSPM X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Apr 2016 10:30:08.7013 (UTC) X-MS-Exchange-CrossTenant-Id: 5afe0b00-7697-4969-b663-5eab37d5f47e X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=5afe0b00-7697-4969-b663-5eab37d5f47e; Ip=[192.88.158.2]; Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0301MB1227 X-BeenThere: linuxppc-dev@lists.ozlabs.org X-Mailman-Version: 2.1.20 Precedence: list List-Id: Linux on PowerPC Developers Mail List List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , Cc: Yangbo Lu , ulf.hansson@linaro.org, Rob Herring , scott.wood@nxp.com Errors-To: linuxppc-dev-bounces+patchwork-incoming=ozlabs.org@lists.ozlabs.org Sender: "Linuxppc-dev" Get the sdhc clock through the common clk APIs. If the APIs fail, try to get the clock through 'clock-frequency' property. We could remove the clock fixup in u-boot by adding the common clk APIs support. Signed-off-by: Yangbo Lu --- drivers/mmc/host/sdhci-pltfm.c | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/drivers/mmc/host/sdhci-pltfm.c b/drivers/mmc/host/sdhci-pltfm.c index 072bb27..383fa49 100644 --- a/drivers/mmc/host/sdhci-pltfm.c +++ b/drivers/mmc/host/sdhci-pltfm.c @@ -31,6 +31,7 @@ #include #include #include +#include #ifdef CONFIG_PPC #include #endif @@ -71,6 +72,7 @@ void sdhci_get_of_property(struct platform_device *pdev) struct device_node *np = pdev->dev.of_node; struct sdhci_host *host = platform_get_drvdata(pdev); struct sdhci_pltfm_host *pltfm_host = sdhci_priv(host); + struct clk *sdhci_clk; u32 bus_width; if (of_get_property(np, "sdhci,auto-cmd12", NULL)) @@ -99,7 +101,11 @@ void sdhci_get_of_property(struct platform_device *pdev) of_device_is_compatible(np, "fsl,mpc8536-esdhc")) host->quirks |= SDHCI_QUIRK_BROKEN_TIMEOUT_VAL; - of_property_read_u32(np, "clock-frequency", &pltfm_host->clock); + sdhci_clk = of_clk_get(np, 0); + if (!IS_ERR(sdhci_clk)) + pltfm_host->clock = clk_get_rate(sdhci_clk); + else + of_property_read_u32(np, "clock-frequency", &pltfm_host->clock); if (of_find_property(np, "keep-power-in-suspend", NULL)) host->mmc->pm_caps |= MMC_PM_KEEP_POWER;