From patchwork Mon Jul 20 09:40:22 2015 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Peng Fan X-Patchwork-Id: 497621 X-Patchwork-Delegate: scottwood@freescale.com Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from theia.denx.de (theia.denx.de [85.214.87.163]) by ozlabs.org (Postfix) with ESMTP id C0B57140DBC for ; Mon, 20 Jul 2015 19:41:12 +1000 (AEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 74EBF4B67D; Mon, 20 Jul 2015 11:41:04 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id Mqmzvz1g9Axx; Mon, 20 Jul 2015 11:41:04 +0200 (CEST) Received: from theia.denx.de (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 873B34B67F; Mon, 20 Jul 2015 11:40:55 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by theia.denx.de (Postfix) with ESMTP id 4744A4B616 for ; Mon, 20 Jul 2015 11:40:49 +0200 (CEST) Received: from theia.denx.de ([127.0.0.1]) by localhost (theia.denx.de [127.0.0.1]) (amavisd-new, port 10024) with ESMTP id TxP-faa0rgtV for ; Mon, 20 Jul 2015 11:40:49 +0200 (CEST) X-policyd-weight: NOT_IN_SBL_XBL_SPAMHAUS=-1.5 NOT_IN_SPAMCOP=-1.5 NOT_IN_BL_NJABL=-1.5 (only DNSBL check requested) Received: from na01-bl2-obe.outbound.protection.outlook.com (mail-bl2on0138.outbound.protection.outlook.com [65.55.169.138]) by theia.denx.de (Postfix) with ESMTPS id C74F04B615 for ; Mon, 20 Jul 2015 11:40:45 +0200 (CEST) Received: from CH1PR03CA001.namprd03.prod.outlook.com (10.255.156.146) by BN3PR03MB1477.namprd03.prod.outlook.com (10.163.35.140) with Microsoft SMTP Server (TLS) id 15.1.213.14; Mon, 20 Jul 2015 09:40:42 +0000 Received: from BY2FFO11FD026.protection.gbl (10.255.156.132) by CH1PR03CA001.outlook.office365.com (10.255.156.146) with Microsoft SMTP Server (TLS) id 15.1.207.19 via Frontend Transport; Mon, 20 Jul 2015 09:40:42 +0000 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=freescale.com; freescale.mail.onmicrosoft.com; dkim=none (message not signed) header.d=none; Received-SPF: Fail (protection.outlook.com: domain of freescale.com does not designate 192.88.168.50 as permitted sender) receiver=protection.outlook.com; client-ip=192.88.168.50; helo=tx30smr01.am.freescale.net; Received: from tx30smr01.am.freescale.net (192.88.168.50) by BY2FFO11FD026.mail.protection.outlook.com (10.1.15.215) with Microsoft SMTP Server (TLS) id 15.1.213.8 via Frontend Transport; Mon, 20 Jul 2015 09:40:42 +0000 Received: from linux-jyl1.ap.freescale.net (b51431-11.ap.freescale.net [10.193.102.86]) by tx30smr01.am.freescale.net (8.14.3/8.14.0) with ESMTP id t6K9eOpm028065; Mon, 20 Jul 2015 02:40:40 -0700 From: Peng Fan To: , Date: Mon, 20 Jul 2015 17:40:22 +0800 Message-ID: <1437385222-23921-3-git-send-email-Peng.Fan@freescale.com> X-Mailer: git-send-email 1.8.4 In-Reply-To: <1437385222-23921-1-git-send-email-Peng.Fan@freescale.com> References: <1437385222-23921-1-git-send-email-Peng.Fan@freescale.com> X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1; BY2FFO11FD026; 1:8PVQYM7lg8qaGQOviFl2gFsQvUnSp8dzPhC+pjtXlh9CEup31V+s0Di7j98tH+L2rglJ84gi4ekkKspFh4T8nowR9hrqVIMUqDTMuVZhlRAx8t3WiTxshVt0mOnxMPJyD3RQAuhjmBmxx8ovJLx5vqcK2Jktb45zvOTITiQXgPO7S6va/PNRUGq+usiESXIKZoqBULKANQiJYuiXUVHGH+n58pSvykd7ItNhQYYWCfE1gTKGO/frzG8I7AkXrkrOyjeLcBn7LjsOMXlHd2CNbUp7putp91VZqREyvTCykoQOoqxgly1TVIJilUR/JkC+/gvM1z+0LGwa/HP2WIZvtqMCxoK5ILFKStGeqJ6SUT8oS1WqIRbf6pxXJ4Z6pJb8DBKZeWVdfBx5uDRFnCRZuuFBQf8DgYNI5hw4CfE/ZUI1StTA9kJ42VMUv3fieYIv X-Forefront-Antispam-Report: CIP:192.88.168.50; CTRY:US; IPV:NLI; EFV:NLI; SFV:NSPM; SFS:(10019020)(6009001)(2980300002)(339900001)(199003)(189002)(86362001)(104016003)(85426001)(62966003)(189998001)(76176999)(50226001)(92566002)(5003940100001)(77156002)(6806004)(107886002)(5001960100002)(106466001)(19580405001)(19580395003)(105606002)(50986999)(77096005)(46102003)(229853001)(87936001)(36756003)(5001920100001)(48376002)(5001770100001)(47776003)(2950100001)(50466002)(2101003)(4001430100001); DIR:OUT; SFP:1102; SCL:1; SRVR:BN3PR03MB1477; H:tx30smr01.am.freescale.net; FPR:; SPF:Fail; MLV:sfv; A:1; MX:1; LANG:en; MIME-Version: 1.0 X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB1477; 2:EFj74WI+PtnJ7coT0yTldymxnh76yHj8Fdc477vG9jAAbDmVE9CIi6U6PgpNYhIy; 3:hC81ov4YiR6X5ghA4Ro0A9i5G6ZeqKRwWe38zkOSUIB8ywMh/94a4R4AppbaL/ur1iRap4bcPN5EYhs87K/UWQFNTkluBdwCKJkG5hTgQSIM8xjXW1uEPQryR1uq2pz19YQQqhsOQfHrZLw8E4pzlMPnEqc9lw7DXjWZTsuMn6LhUk/g2haRSGdGfUlhFpeEtvqY0G/H2NrcrvHKCEHENaD5Y7qYfytcmFhaTqPVKwo=; 25:FwQA1TT9c61OaAgcompwD6tG2N+MrChW/bLIVokZdfaFZkLxyDNyJmmxVtuM+cm0HNUDKyytYg1JGqpWIPtgPqitWvN6pji8YrPxsCiZ+PJpcBJA9FsERk+JSH2Aw8TGgnYz30YbFCQvwNFw3ux/k/5/IBsWk5+f2dYRhIoluS9k3FV+5OuXIjBYgpKOcJqteHbnU7oOdV+iQH4vzf8aEha2pfAAOBPFhoyTQU1dTsdCyTewcM65ybTeV/+39n/K; 20:nehxyggLF08yRUr9sxysBeoeBUrX1ME34k1B9pJ17rVk3i4aA2JZ5FDGFcmvji7akYIQE7weHaCL+YecZ1mJ4YJtFzlRO+TSYMuumDeFtRs5QX2auHlZjZ3wrk8sQ/mOvvNXwRUUt78H8KBHzuQm9p+tp/JiUPRthE4y6yeKbKBfeuNSjbeyNyiH00s01LAB4HuNb9/aO1r9uB7r3EmzU0U/0r178wxpeJqhD2CsvV6rVndanlWBh1fE4yC/Grmx2SYlMfOaGdxZlUD5H/XiFBfqGitgFnAqj+82xIgXdJRJydYnb/mhVqrY3I/tMbh0b6mYHvckdZYK4JwTnX/sxDlMUN4PWowzZajuzkGyXzU= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BN3PR03MB1477; BN3PR03MB1477: X-MS-Exchange-Organization-RulesExecuted 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:BN3PR03MB1477; BCL:0; PCL:0; RULEID:; SRVR:BN3PR03MB1477; X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB1477; 4:iGS1xICvIpLYBFTzCAydQIWIAAHQBnr+f+dujbRYOxPJ20KxDQPBUjQ0Jzhd/wuzYRE2MT2h33OS0aMudm37O62szfZt5oHqTn/oak+OAJ1gYd0a+Pj3AffWPHW0p2H7SrFl+GA4FY0J7epUqw5rGkQbJDoPiNwanxPSS8us0V07UzlgQEycxCr7iVIex+t4lfQDTWM1KwL9ppcpgKZfqbqePdzk2ALyaNeGMr/dUyhmzQwjHNmwNGS63wKGfO+QAdDdUssuSUuU+ZS5KupYZvxilvbz8jOcnQ/L7QS6vwU= X-Forefront-PRVS: 0643BDA83C X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1; BN3PR03MB1477; 23:r0L3p3t3h5paxEWfFc8fHjh6HEryPuL2BR6ROQNXw?= =?us-ascii?Q?AOQoEqBsiuKbXKUFb6cl08q3EnJ8Z00SSV6I3WaR1sLMwuaVFt8ihUqSA0j5?= =?us-ascii?Q?RgJHw5+hG6u4Fhd3dh0PqNCytqZJKxpJ0GAr+lN0oPbrX3u1BpfGbxOkMQkH?= =?us-ascii?Q?SV2hJ972Ijt9ESBQciUqH/RM62mjyHtvMJSX2e3OuoTO+XXSTb/OzsKGvVMS?= =?us-ascii?Q?WLz/Vw+rAA9CbcIH2Eu1OXKoWiKQlyI8MKXUrSrDWXsc1r6JxckkMl75Tqm7?= =?us-ascii?Q?O+sw5fYodu4nGburhxlppuGeoQ/6Vc2N8KYxru8zdMw/VCABwnPqPPRiaW5b?= =?us-ascii?Q?waSnVPEHWsU0dD1sA6TZp/XtZ3JnxiFBnS1v58Zu6TUZb1I+47W340XT/V1t?= =?us-ascii?Q?xNNMLXDo8GqC3iGIuDjJyEKUlcs6s+KugIR+qcgWIAJPzuuVj6/TWWnW9LHa?= =?us-ascii?Q?LsrAGlE+I2TOM4Ju0F7E4w2e+e9JtcOh2R730Gix5Xj0dqHcxsngyFiSw7Et?= =?us-ascii?Q?HwNAiXs0K0Yt4FSdMPyU+aPDbO6rXFS74pJLgfuC5KyPzEH2baRuPUKFXJ0z?= =?us-ascii?Q?CKjdTZFJQ8QE29D96ZRPeJTy54vFRDqOOM+KBrXVND85g1Q1ulLXyJoDzihS?= =?us-ascii?Q?IjM9yaboIli1IF1QPWHQGQZwHLWqnPjtJ5HILelgfe4PReuuyM8pm6Lz7XwG?= =?us-ascii?Q?jrZQHHPW0cKVPHfjxe92pIQbLcSer/i5P1Oqbtt7BKI2quJhClPcDI1kHjfI?= =?us-ascii?Q?MCCxBVIS4xMKpvjWtHUQuYnQJGt+/iq6eRiSX0/WVEzR/1UQN19cPmcQTmWF?= =?us-ascii?Q?8KHCRlSnFr5h5uurKovPJrGMo6tKjJxL2Smy7bLTBo91QD/EH/1mkPji0ssi?= =?us-ascii?Q?ac0k3irmCQFfDlmcVsb/fuvBFkExAKmwSySnP/gukAb3NYjxZQRGGCqyJBPA?= =?us-ascii?Q?J8aWF+ElWZL+NRLUNfi9bisZhYYiH4o/wxChNZh0kQxJWiQ6nBg/O0Wc9GCw?= =?us-ascii?Q?WA=3D?= X-Microsoft-Exchange-Diagnostics: 1; BN3PR03MB1477; 5:AiJU8h5QCAvH2HF5HN78lzMhs2P6KT1XrWC2AwDqzE/+ORHFwqkbo1t3HSvmOvOgpkaMcQiJNIafkn4ySRG86jBVidgxcWL8AkUAONCZO47xfN4F25U7qXJNOZN1pNGph74NEkNjuqT7Efj8T/6icg==; 24:LI/GakhsHkXCGnfe0sT9D4l8+K0wje/tWK2hqhrkbMN0TTAXSZtfcRXTPiNB+XX7PRp6vlsoYvDPiRmIvhiqFTeH77fjVv+ImHFxB2DsOeQ=; 20:Vs73VMSNPj1QC2k4WsTIAG7WUbibBsf53H96OzM2sZTXC+UbQg/3bia8DVDzti+fTrHir04H1jXM7DJx9/fBUg== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 20 Jul 2015 09:40:42.5781 (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.168.50]; Helo=[tx30smr01.am.freescale.net] X-MS-Exchange-CrossTenant-FromEntityHeader: HybridOnPrem X-MS-Exchange-Transport-CrossTenantHeadersStamped: BN3PR03MB1477 Cc: marex@denx.de, u-boot@lists.denx.de Subject: [U-Boot] [PATCH 3/3] mtd: nand: mxs invalidate dcache before DMA read X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.15 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" Follow linux dma follow: Before DMA read, be sure to invalidate the cache over the address range of DMA buffer to prevent cache coherency problems. After DMA read, invalidate dcache again. Signed-off-by: Peng Fan Acked-by: Marek Vasut --- drivers/mtd/nand/mxs_nand.c | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/drivers/mtd/nand/mxs_nand.c b/drivers/mtd/nand/mxs_nand.c index 97011b2..f15cf36 100644 --- a/drivers/mtd/nand/mxs_nand.c +++ b/drivers/mtd/nand/mxs_nand.c @@ -469,6 +469,9 @@ static void mxs_nand_read_buf(struct mtd_info *mtd, uint8_t *buf, int length) mxs_dma_desc_append(channel, d); + /* Invalidate caches */ + mxs_nand_inval_data_buf(nand_info); + /* Execute the DMA chain. */ ret = mxs_dma_go(channel); if (ret) { @@ -635,6 +638,9 @@ static int mxs_nand_ecc_read_page(struct mtd_info *mtd, struct nand_chip *nand, mxs_dma_desc_append(channel, d); + /* Invalidate caches */ + mxs_nand_inval_data_buf(nand_info); + /* Execute the DMA chain. */ ret = mxs_dma_go(channel); if (ret) {