Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1754834AbbHDDee (ORCPT ); Mon, 3 Aug 2015 23:34:34 -0400 Received: from mail-by2on0133.outbound.protection.outlook.com ([207.46.100.133]:47104 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752915AbbHDDec (ORCPT ); Mon, 3 Aug 2015 23:34:32 -0400 X-Greylist: delayed 54945 seconds by postgrey-1.27 at vger.kernel.org; Mon, 03 Aug 2015 23:34:31 EDT Authentication-Results: spf=fail (sender IP is 192.88.158.2) smtp.mailfrom=freescale.com; vger.kernel.org; dkim=none (message not signed) header.d=none; Date: Tue, 4 Aug 2015 11:25:15 +0800 From: Dong Aisheng To: Haibo Chen CC: , , , , , , , , , , , , , , , Subject: Re: [PATCH v3 1/6] mmc: sdhci-esdhc-imx: add imx7d support and support HS400 Message-ID: <20150804032513.GD24870@shlinux1.ap.freescale.net> References: <1438160637-28061-1-git-send-email-haibo.chen@freescale.com> <1438160637-28061-2-git-send-email-haibo.chen@freescale.com> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Disposition: inline In-Reply-To: <1438160637-28061-2-git-send-email-haibo.chen@freescale.com> User-Agent: Mutt/1.5.20 (2009-06-14) X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD009;1:jWfvqIbZis1h7Gfg0QRLuKgW3qEJxT7QVHKqP7+a8j7T5fo4ye6lg/o4dOARMcKoYi6KLjKaUsEjRqFS8RokJeB5xGVSdleCqlxnTdHlReTD2tZTBjfl2g1n2vZabcu31t+z9Y7njSXCvoTeqBAj0zFikn/LwnxSdOookaJR6LID5uX8N5BzzkzPIfzM1F1TjVYqgUB8+rSd6HfQMVTwVplTBb93ecJ1738sL1XRBvdJxpp0lf1MpeYNWWg9gwGB2s7xtgRggmRgT4pZDkHIi6nxNi4mRArVsHhi5HCpPurSO6R93FC3IsRobA3+bnHNv4HxNfAYb7gLDUIF/Dhl5g== X-Forefront-Antispam-Report: CIP:192.88.158.2;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(339900001)(199003)(24454002)(189002)(19580395003)(85426001)(62966003)(64706001)(47776003)(77156002)(83506001)(5003600100002)(19580405001)(189998001)(87936001)(69596002)(6806004)(230783001)(97756001)(4001450100002)(33656002)(46102003)(50466002)(76176999)(104016003)(23726002)(86362001)(54356999)(50986999)(106466001)(105606002)(4001540100001)(68736005)(92566002)(97736004)(110136002)(77096005)(5001960100002)(4001350100001)(2950100001)(81156007)(46406003)(5001860100001)(5001830100001);DIR:OUT;SFP:1102;SCL:1;SRVR:CY1PR0301MB1307;H:az84smr01.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1307;2:YnbCsFGw9Wt6nuOBiyoXd88+BH3X9v20Rp72T2xUrJA/ethrqyZLZ4qbkJkJyMQ7zFA2jf8FeHOJDbTklbeXWABNZ0K5j6V7sxFp+o/U5XEjIQW8hXF6q/+YiwZMnS0DwmRKo+haKQxlZesredWdrX8wxToYhnld1NbAl4cbzW8=;3:g8B60jUURxveG6fyPLJ+UXhhbwxPtswgFYKxGbPDQFuQxbgKBrLXnm14jCozdtdZHMghdeXvK99fNGGxrP7rsh5Cx8w8B4V2unNsgrjP7hEHSd4NoKoau89t8Fqcey0CP7s4HSrV4ntBtk8UEsnoDUO6otAHMTjU18B6e7R1CcZTe47N6W+1FSUwbCbgMkpugCVrME/LnOp3AhVHTpJroB2oUZ03ARRp7B6zapSulVU=;25:msyjml89+FzeEp0+mGBBjumuGqR/L3RGKFpyg10XJnHHMN7KhpCKK6zZW2ugcbJxqil48rVJBqKDtfcWtLRVWFkunh4klmoA3mjfVFglkgO/+/z/Y2fPYBgGIcQGMW49xSXQoqQbs76PSlJPZ1CjVoGRgcGqaWk4TDkA7z3khw0eSW6FtX4NbdlmQnBS7/3xQXoZEr1GpEIMvHCFhkJvq017wPQZBRXL1b4Naj36fl1hSFIsLSQdFnBCta150TWG9anRk8NK0xeb4iSQZNfXyA== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1307; X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1307;20:l92TUpK4LgHRcn1w+mDT9/BpEIw8DGIzRrzOTW+9h/y+6mh3D9uYpkEXbXWUur8y6t4Jv1pkheszSrXu/tpA1E3X7k3OvpJI/wMR5Alq65TswbZ4si6XXu6LHFGJ5kCo3VrF19kyXUT+39K09rFgOBEl8XXyyoEF01chF1Ucx2RtCyvGiMRIfw9dXTn5xbhmoBe5EHfVFqOlmRk0LmJ0GRsK15IqBaXoy46o7UrF8fjxS8vtR1uBi2TSTS/Zx0pbIW9QqZiBrKVXdPIS2nzcU1tCT7dBUWKnkwVup5d/vH7Z0hrf5/xg8VdJlY3Ez6iWFETGohDQDyojM1DpEa9qpCZwl87XeQedtnJ4OdsKjQ0=;4:pXUf9QGXcpWoSJIzX3x1vNU9CrON7kV5dAD2dtp8CBI3WQXQOp4rCD7eR5phXBN22JzPlbvZi8IftE8K0L5i9yW0K+2fQYUSHnvCyyozQovrWWpwBF5ZwUcsyHVu4D8SL4osKdtkPA5EzCkaWj7koPWGxC384hT3NK3GT3Cj+2Wy+Hwl3HZ2H/ymMV1bcWO7Kc6q8AZ4nEZdvs94I5LMpH6cgvLoef+PonWqd33XqEUEyo1BZ2uQMfzANB775YjQf8ZksrPxKcushrpGyMkwOmmvjJftIBbO5qWo8Rmt8uA= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(5005006)(3002001);SRVR:CY1PR0301MB1307;BCL:0;PCL:0;RULEID:;SRVR:CY1PR0301MB1307; X-Forefront-PRVS: 0658BAF71F X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;CY1PR0301MB1307;23:VU/vvUHjpjoSPggrBQ9MYl4d6IbOVw7r4Ip3LOJ?= =?us-ascii?Q?DS64Ty5e3iHVHEY2ocarqYcpGj+cGzg5OxIROMCqCeDHv335xjO5nMhxMJ3n?= =?us-ascii?Q?9LKmXxIRsbwcaK5UIkF7gZdCb70AI2+VA4NXvYM7hFQv8r4DCzbKAzJDNQiI?= =?us-ascii?Q?PWqDHA2J2WNA/fMrUdaxbFO3ZaOejzvJbwkB7MFO4bI9DU0hpfsTFMmWXnEv?= =?us-ascii?Q?9Vo3pnBurFBZb/NaM2SkOQuMWwDUUGDX0rCEAaWyKVhUe2eHk0rmx0WHN+WS?= =?us-ascii?Q?wS2bd+GTmsxpoG0juthBagLtdqrvRCWJq1gx446bynOsMOzUV2lHVn1pFP5v?= =?us-ascii?Q?XKqVnewsHqxc++KCiOKMdBPSHvyPCxSrl8f1kf2twTWblKUaG8kxOser8RIM?= =?us-ascii?Q?Lys16YyF/1lQCnVIaRyL8dY7KrU/u1N/sdB+3cJBnpEPLORgUIaEOSHqDoZF?= =?us-ascii?Q?2YqNFGRgolNsohPKruCe5XlLc7+TIRdEMpbIZFy0vMLgVYto4qZxx0kYbk9d?= =?us-ascii?Q?BGMHYxHDl9QG5uEtcDl/TmHGoglVNwN0MV2Eme2TdjbuywGEbRYUAdzVw6xY?= =?us-ascii?Q?ty4OJOIkHgokLVWSjxUeTz0q4vqknQl+1GwEbkgascMNzsijRsYJc0tXFo9j?= =?us-ascii?Q?FIDuq9CpuukBaLZGrGkLHRrvZ/FlA6G0mtLnHgPNZsidaXA01S+hn9lp2LVL?= =?us-ascii?Q?7re5r045d41F7OMT8fJv41N5IoUaHOtfpt4CyiaGJ++3BzlN7+Ru5U+Ab9IP?= =?us-ascii?Q?yOMEmeDd0+uCH8ntx5s5pKZeI2Nq1zddOnLz4zWWyihOyDDd2QyVr6EwcIKB?= =?us-ascii?Q?mOxuDNsaT6cE5LtgdPdEzorec6gQsqWs1ZIFdhqC4zLf8ov33ggpVBSHpo8d?= =?us-ascii?Q?lDCVPYahtYbcUcdE87uu8uwInvh+QuPAfFwjZsG8/P5+f0eKd4EwnNYRYObc?= =?us-ascii?Q?WMKbSdpvgrkdBAD1G/noS+fhI8y58jRQc8yc8eEzGC5tNLYMjTbdyXdSOQGL?= =?us-ascii?Q?wZV0Ug3Ib8KyZosK0ctTX3R4HKhLyNO3GuC77CU0jYHHflI6+swUoAa4WSyX?= =?us-ascii?Q?au3P1IIoj0SOQbPXhnIKPcqsVIa5q3EZcIKjJeOyJAqOl1YclhD5BYPLJpzf?= =?us-ascii?Q?hnD0fguQ0Ins/tnOASI1hGfE53EH8Ayymr6DeSkKpzVu4DvbgX9YMuv8lszZ?= =?us-ascii?Q?oqsmibQNF8OZxQZzXTkJYZtFX0PB+UcqReB3UzHB+FVHlCXg6LaS87uCRqw?= =?us-ascii?Q?=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;CY1PR0301MB1307;5:MdN5HtyfR4a11mYtYlrO+lNckkDNzk3dZDEmftEx7ixjND7lPmfXvovnq9Bi3Pmor5XyMZZAInuWyvkfa8Tc24Lt9pysPeLn0rdEoCwqwt/XDus2h4JQ/pHgWqfQIDwnGZ8MOrgHgagesxInQP4QeQ==;24:7e32KRFNSb1t4UCSM++9mKPYfbGOladV6S1hmTDdR+oUHTxzzO83sb4eyvXafx5rL2ji+cPJhrij2OyfPlLJ9IgN+/bFu24WFKqlz/dPmoU=;20:8rSdYkw39BSmSybBKq8bwNtAIVKO5Xpsbjy98S4YpbB8eVxWQQMxtB9fkBQadctp6CpBzLJV/P1mX/Zsv1mauA== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 04 Aug 2015 03:34:27.6262 (UTC) X-MS-Exchange-CrossTenant-Id: 710a03f5-10f6-4d38-9ff4-a80b81da590d X-MS-Exchange-CrossTenant-OriginalAttributedTenantConnectingIp: TenantId=710a03f5-10f6-4d38-9ff4-a80b81da590d;Ip=[192.88.158.2];Helo=[az84smr01.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: CY1PR0301MB1307 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 2490 Lines: 68 On Wed, Jul 29, 2015 at 05:03:52PM +0800, Haibo Chen wrote: > The imx7d usdhc is derived from imx6sx, the difference is that > imx7d support HS400. > > So introduce a new compatible string for imx7d and add HS400 > support for imx7d usdhc. > > Signed-off-by: Haibo Chen > --- > drivers/mmc/host/sdhci-esdhc-imx.c | 66 ++++++++++++++++++++++++++++++++++++++ > 1 file changed, 66 insertions(+) > > diff --git a/drivers/mmc/host/sdhci-esdhc-imx.c b/drivers/mmc/host/sdhci-esdhc-imx.c > index c6b9f64..b441eed 100644 > --- a/drivers/mmc/host/sdhci-esdhc-imx.c > +++ b/drivers/mmc/host/sdhci-esdhc-imx.c > @@ -44,6 +44,7 @@ > #define ESDHC_MIX_CTRL_EXE_TUNE (1 << 22) > #define ESDHC_MIX_CTRL_SMPCLK_SEL (1 << 23) > #define ESDHC_MIX_CTRL_FBCLK_SEL (1 << 25) > +#define ESDHC_MIX_CTRL_HS400_EN (1 << 26) > /* Bits 3 and 6 are not SDHCI standard definitions */ > #define ESDHC_MIX_CTRL_SDHCI_MASK 0xb7 > /* Tuning bits */ > @@ -60,6 +61,16 @@ > #define ESDHC_TUNE_CTRL_MIN 0 > #define ESDHC_TUNE_CTRL_MAX ((1 << 7) - 1) > > +/* strobe dll register */ > +#define ESDHC_STROBE_DLL_CTRL 0x70 > +#define ESDHC_STROBE_DLL_CTRL_ENABLE (1 << 0) > +#define ESDHC_STROBE_DLL_CTRL_RESET (1 << 1) > +#define ESDHC_STROBE_DLL_CTRL_SLV_DLY_TARGET_SHIFT 3 > + > +#define ESDHC_STROBE_DLL_STATUS 0x74 > +#define ESDHC_STROBE_DLL_STS_REF_LOCK (1 << 1) > +#define ESDHC_STROBE_DLL_STS_SLV_LOCK 0x1 > + > #define ESDHC_TUNING_CTRL 0xcc > #define ESDHC_STD_TUNING_EN (1 << 24) > /* NOTE: the minimum valid tuning start tap for mx6sl is 1 */ > @@ -120,6 +131,8 @@ > #define ESDHC_FLAG_ERR004536 BIT(7) > /* The IP supports HS200 mode */ > #define ESDHC_FLAG_HS200 BIT(8) > +/* The IP supports HS400 mode */ > +#define ESDHC_FLAG_SUP_HS400 BIT(9) > > struct esdhc_soc_data { > u32 flags; > @@ -156,6 +169,12 @@ static struct esdhc_soc_data usdhc_imx6sx_data = { > | ESDHC_FLAG_HAVE_CAP1 | ESDHC_FLAG_HS200, > }; > > +static struct esdhc_soc_data usdhc_imx7d_data = { > + .flags = ESDHC_FLAG_USDHC | ESDHC_FLAG_STD_TUNING > + | ESDHC_FLAG_HAVE_CAP1 | ESDHC_FLAG_HS200 > + | ESDHC_FLAG_SUP_HS400, Better to use ESDHC_FLAG_HS400 to keep align with exist ESDHC_FLAG_HS200. Regards Dong Aisheng -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/