From patchwork Tue Mar 5 02:59:16 2019 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Yinbo Zhu X-Patchwork-Id: 10838873 Return-Path: Received: from mail.wl.linuxfoundation.org (pdx-wl-mail.web.codeaurora.org [172.30.200.125]) by pdx-korg-patchwork-2.web.codeaurora.org (Postfix) with ESMTP id 84BF11803 for ; Tue, 5 Mar 2019 02:59:21 +0000 (UTC) Received: from mail.wl.linuxfoundation.org (localhost [127.0.0.1]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id 720AF2B51A for ; Tue, 5 Mar 2019 02:59:21 +0000 (UTC) Received: by mail.wl.linuxfoundation.org (Postfix, from userid 486) id 664A02B601; Tue, 5 Mar 2019 02:59:21 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on pdx-wl-mail.web.codeaurora.org X-Spam-Level: X-Spam-Status: No, score=-8.0 required=2.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,DKIM_VALID_AU,MAILING_LIST_MULTI,RCVD_IN_DNSWL_HI autolearn=ham version=3.3.1 Received: from vger.kernel.org (vger.kernel.org [209.132.180.67]) by mail.wl.linuxfoundation.org (Postfix) with ESMTP id DD9592B51A for ; Tue, 5 Mar 2019 02:59:20 +0000 (UTC) Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1726657AbfCEC7U (ORCPT ); Mon, 4 Mar 2019 21:59:20 -0500 Received: from mail-eopbgr130053.outbound.protection.outlook.com ([40.107.13.53]:63618 "EHLO EUR01-HE1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1726522AbfCEC7U (ORCPT ); Mon, 4 Mar 2019 21:59:20 -0500 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nxp.com; s=selector1; h=From:Date:Subject:Message-ID:Content-Type:MIME-Version:X-MS-Exchange-SenderADCheck; bh=ESiUvGjPNFyrMJUYQEMnMILGAd0pInvq06RuX4rUJVE=; b=CkpGwkolMbEoy13jfkQ9QkJ8hosBJaVuk3nG0m+EAy1ETsbtBtlyO1mjeuuWR13wpdjm5AfjrjWz2ZmDuUNYv3dgFa5pGlUCLUKtCl3HhnzP9JBSFUObJl7eixE2C7KCK5ZbNMsBtLWlFQFJ8xYf+5c7e8ZkYwhj77GzFPDXxio= Received: from VI1PR04MB4158.eurprd04.prod.outlook.com (52.133.15.33) by VI1PR04MB2080.eurprd04.prod.outlook.com (10.166.43.20) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384) id 15.20.1665.16; Tue, 5 Mar 2019 02:59:16 +0000 Received: from VI1PR04MB4158.eurprd04.prod.outlook.com ([fe80::3d6a:1448:117f:5b06]) by VI1PR04MB4158.eurprd04.prod.outlook.com ([fe80::3d6a:1448:117f:5b06%5]) with mapi id 15.20.1665.020; Tue, 5 Mar 2019 02:59:16 +0000 From: Yinbo Zhu To: "linux-mmc@vger.kernel.org" , Adrian Hunter , "ulf.hansson@linaro.org" CC: Yinbo Zhu , "Y.b. Lu" , Xiaobo Xie , Leo Li , Jimmy Zhao Subject: [PATCH v3 3/5] mmc: sdhci-of-esdhc: add erratum A-009204 support Thread-Topic: [PATCH v3 3/5] mmc: sdhci-of-esdhc: add erratum A-009204 support Thread-Index: AQHU0v9rcXDxR6sw4UqWbXyq+1TxXg== Date: Tue, 5 Mar 2019 02:59:16 +0000 Message-ID: <20190305025811.38328-3-yinbo.zhu@nxp.com> References: <20190305025811.38328-1-yinbo.zhu@nxp.com> In-Reply-To: <20190305025811.38328-1-yinbo.zhu@nxp.com> Accept-Language: zh-CN, en-US Content-Language: en-US X-MS-Has-Attach: X-MS-TNEF-Correlator: x-clientproxiedby: HK2PR02CA0208.apcprd02.prod.outlook.com (2603:1096:201:20::20) To VI1PR04MB4158.eurprd04.prod.outlook.com (2603:10a6:803:46::33) authentication-results: spf=none (sender IP is ) smtp.mailfrom=yinbo.zhu@nxp.com; x-ms-exchange-messagesentrepresentingtype: 1 x-mailer: git-send-email 2.17.1 x-originating-ip: [119.31.174.73] x-ms-publictraffictype: Email x-ms-office365-filtering-correlation-id: 1d37a58b-d99d-4317-f09a-08d6a1168dda x-ms-office365-filtering-ht: Tenant x-microsoft-antispam: BCL:0;PCL:0;RULEID:(2390118)(7020095)(4652040)(8989299)(4534185)(4627221)(201703031133081)(201702281549075)(8990200)(5600127)(711020)(4605104)(4618075)(2017052603328)(7153060)(7193020);SRVR:VI1PR04MB2080; x-ms-traffictypediagnostic: VI1PR04MB2080: x-microsoft-exchange-diagnostics: =?iso-8859-1?q?1=3BVI1PR04MB2080=3B23=3AfA?= =?iso-8859-1?q?YbZ1p/6wfvWtE3z2jaAKKrE4WJMuUVo9mKoBHQO51dp6N6D6++GxbqjRgvx/?= =?iso-8859-1?q?n7+APQjaaqO9hs0dLm3hjfCD4inxN3PCnEyKHPyBcyL8MtiffJs69g1w8oJ+?= =?iso-8859-1?q?AI/CJjcwxXuWOEwpTIoEry+bHW2k9paP7lxvFinXRwS5pHDkAjAU7aGRr343?= =?iso-8859-1?q?au1ob6gdRk6SO1Qs/TDAd7pf1+GHaMaF0IDYkssYpA4Js4724Ch+xcOCQ5Aa?= =?iso-8859-1?q?GNY7PqGRoMbmrl8NaYJNprBLl1NGsWmo693J/ZR0etoPFDyja7VipAN+V8Uu?= =?iso-8859-1?q?oD3iIP1qcNHZHsCZDkNgvj9jolxasV6lOebK+kEtwLJtDoGs+kJSaWIpn+vE?= =?iso-8859-1?q?2RUolaKENQ5v3AUDznPHPNx1V3daYxqX1qALWZRVIUdXxklHkgqmB7AueYOp?= =?iso-8859-1?q?n8L5xe+volSDoam7muJwQXjm77yB04WDrqr4iCQWHouv98tsljJU6TOoamSC?= =?iso-8859-1?q?kswH2cV/lWk52IyLkKUJEf4QLMEFpxMZkLjI6KSGelRzu2g6muu7Dd+9WsCX?= =?iso-8859-1?q?0moZBQBitMt/d25SbpNKv27f593Nwos4/x4g2xSU2/UfuZjVR8JyHX80VeC6?= =?iso-8859-1?q?BKHnxnrjncQ72BMdVwQZSCdr2C9ebQEg/2SH5Y9x55EZ7WiRDS7MTSeKFu3b?= =?iso-8859-1?q?8uAYVCfr9CgioXVaa1C/R58Qtj6o36dJjjg4tnDjo+af8XelGNwW7lrbCnsp?= =?iso-8859-1?q?38VhPzFyX/lUBWlvosy7S0A7AuS3myAhGsXhBmQaP3cO/ZfVFRM5S0pn78jp?= =?iso-8859-1?q?TzUuVvfHyVzlOXPAmvHJ5oMZp1XKgO0NJm9mB6Mrdv5ru2SeTBNHvV+EEiVO?= =?iso-8859-1?q?gL7cRarByzu20QP8qLkkKqgxe8/qSt+PKGVYi0M5c568StYNsd81GRN5CbHn?= =?iso-8859-1?q?gSRjJ7VfwPAsnhm5S13TcGgyqvLyWtqn1uslGUX8uj1tRxMV0lejYbwWB4TM?= =?iso-8859-1?q?LON7gcgRxot9jlda5vwyJMLr8YChjCf3YQDtHjmU+I490iSreONFIPexZqI8?= =?iso-8859-1?q?7Yj3YPLx5cAsK8LkL9R17Qsrsgo1MXCoK5+pDYhq3KT2RljR8s2ZMTaAqAhG?= =?iso-8859-1?q?t8JP+Z3uPoixev3HZv/6ky8ieebcTDJMn5VyjTvh7k2hpYRSmX2nVLfU3Bt5?= =?iso-8859-1?q?ybuWjwO5x9EUFFZb8rFLMiNPPaLbZOOQgTXjH2ES1xentewyZ4cRoG3cXUsJ?= =?iso-8859-1?q?BRA8BSu8M3Y40F+5RRTDBngnTtIVL/AlvM5Hb4jnWKGLg98RsGheBAN1DFAP?= =?iso-8859-1?q?/oRvq0Cof9ZH5hQ3c5?= x-microsoft-antispam-prvs: x-forefront-prvs: 0967749BC1 x-forefront-antispam-report: SFV:NSPM;SFS:(10009020)(39860400002)(136003)(346002)(396003)(376002)(366004)(189003)(199004)(105586002)(8676002)(305945005)(106356001)(102836004)(386003)(6506007)(99286004)(97736004)(8936002)(256004)(5660300002)(71190400001)(1076003)(14444005)(478600001)(81166006)(81156014)(7736002)(26005)(186003)(71200400001)(50226002)(6512007)(6486002)(6436002)(6116002)(53936002)(36756003)(68736007)(316002)(44832011)(11346002)(2616005)(446003)(476003)(86362001)(486006)(76176011)(14454004)(25786009)(52116002)(2906002)(66066001)(2501003)(54906003)(4326008)(110136005)(3846002);DIR:OUT;SFP:1101;SCL:1;SRVR:VI1PR04MB2080;H:VI1PR04MB4158.eurprd04.prod.outlook.com;FPR:;SPF:None;LANG:en;PTR:InfoNoRecords;MX:1;A:1; received-spf: None (protection.outlook.com: nxp.com does not designate permitted sender hosts) x-ms-exchange-senderadcheck: 1 x-microsoft-antispam-message-info: jTiWw8NSqjInJf/O44FPxlFb18AAjcc2FuTTqO1Y9YNKWHT6ORbNyVYxcia7Vr4MhyVF1qmafI2GLWm9Oghl8Vb33C6DM0zcsAwIEOQ6fBtXJH7+n7TVe30MGxQYnQnefTJgoP2FoGu6+YIiX+ecKZ1SrXumG+TI9HBKFQvW8SjC8tz5ZXmCWgaUrOu57R6zDC77iLXg4GkffO7H4Y1NsG7fxSVA/DwV8tva76tZUSasHEMtNHjdmNkJeu8JNQ/uXDsejryv7RaIspLyqCW3IowhbByTPW03/soyHrmn83t/i7fegwGDyAkGUgMoQ7eyAyzHUStaZu5dyxvNwdChX+L3cqEHVe3N22cYrTBCT5BIJJI3/ob5gtw4wN7B0GB21XVn5FVO10McKtRIiWfgKDYW5PT9KjV93P5I/8fbmP4= MIME-Version: 1.0 X-OriginatorOrg: nxp.com X-MS-Exchange-CrossTenant-Network-Message-Id: 1d37a58b-d99d-4317-f09a-08d6a1168dda X-MS-Exchange-CrossTenant-originalarrivaltime: 05 Mar 2019 02:59:16.5725 (UTC) X-MS-Exchange-CrossTenant-fromentityheader: Hosted X-MS-Exchange-CrossTenant-id: 686ea1d3-bc2b-4c6f-a92c-d99c5c301635 X-MS-Exchange-CrossTenant-mailboxtype: HOSTED X-MS-Exchange-Transport-CrossTenantHeadersStamped: VI1PR04MB2080 Sender: linux-mmc-owner@vger.kernel.org Precedence: bulk List-ID: X-Mailing-List: linux-mmc@vger.kernel.org X-Virus-Scanned: ClamAV using ClamSMTP From: Yinbo Zhu In the event of that any data error (like, IRQSTAT[DCE]) occurs during an eSDHC data transaction where DMA is used for data transfer to/from the system memory, setting the SYSCTL[RSTD] register may cause a system hang. If software sets the register SYSCTL[RSTD] to 1 for error recovery while DMA transferring is not complete, eSDHC may hang the system bus. This happens because the software register SYSCTL[RSTD] resets the DMA engine without waiting for the completion of pending system transactions. This erratum is to fix this issue. Signed-off-by: Yinbo Zhu Acked-by: Adrian Hunter --- drivers/mmc/host/sdhci-of-esdhc.c | 3 +++ 1 files changed, 3 insertions(+), 0 deletions(-) diff --git a/drivers/mmc/host/sdhci-of-esdhc.c b/drivers/mmc/host/sdhci-of-esdhc.c index 1ac1133..7e0eae8 100644 --- a/drivers/mmc/host/sdhci-of-esdhc.c +++ b/drivers/mmc/host/sdhci-of-esdhc.c @@ -694,6 +694,9 @@ static void esdhc_reset(struct sdhci_host *host, u8 mask) sdhci_writel(host, host->ier, SDHCI_INT_ENABLE); sdhci_writel(host, host->ier, SDHCI_SIGNAL_ENABLE); + if (of_find_compatible_node(NULL, NULL, "fsl,p2020-esdhc")) + mdelay(5); + if (mask & SDHCI_RESET_ALL) { val = sdhci_readl(host, ESDHC_TBCTL); val &= ~ESDHC_TB_EN;