From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753947AbcHRJ11 (ORCPT ); Thu, 18 Aug 2016 05:27:27 -0400 Received: from mail-sn1nam01on0096.outbound.protection.outlook.com ([104.47.32.96]:64488 "EHLO NAM01-SN1-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752435AbcHRJ1M (ORCPT ); Thu, 18 Aug 2016 05:27:12 -0400 X-Greylist: delayed 3625 seconds by postgrey-1.27 at vger.kernel.org; Thu, 18 Aug 2016 05:26:27 EDT Authentication-Results: spf=neutral (sender IP is 192.88.168.50) smtp.mailfrom=freescale.com; nxp.com; dkim=none (message not signed) header.d=none;nxp.com; dmarc=none action=none header.from=freescale.com;nxp.com; dkim=none (message not signed) header.d=none; From: Yunhui Cui To: , , , CC: , , , , Yunhui Cui Subject: [PATCH v3 3/9] mtd: spi-nor: fsl-quadspi: add fast-read mode support Date: Thu, 18 Aug 2016 15:37:58 +0800 Message-ID: <1471505884-33996-3-git-send-email-B56489@freescale.com> X-Mailer: git-send-email 2.1.0.27.g96db324 In-Reply-To: <1471505884-33996-1-git-send-email-B56489@freescale.com> References: <1471505884-33996-1-git-send-email-B56489@freescale.com> X-EOPAttributedMessage: 0 X-MS-Office365-Filtering-HT: Tenant X-Forefront-Antispam-Report: CIP:192.88.168.50;IPV:NLI;CTRY:US;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(7916002)(2980300002)(189002)(199003)(105606002)(47776003)(5003940100001)(229853001)(81156014)(81166006)(575784001)(50986999)(8676002)(106466001)(19580405001)(2201001)(76176999)(97736004)(87936001)(5001770100001)(2950100001)(50466002)(77096005)(48376002)(19580395003)(92566002)(8936002)(4326007)(586003)(189998001)(2906002)(68736007)(50226002)(356003)(7846002)(626004)(8666005)(305945005)(36756003)(11100500001)(104016004)(7059030);DIR:OUT;SFP:1102;SCL:1;SRVR:BY2PR0301MB1973;H:tx30smr01.am.freescale.net;FPR:;SPF:Neutral;PTR:InfoDomainNonexistent;MX:1;A:1;LANG:en; X-Microsoft-Exchange-Diagnostics: 1;BL2FFO11FD014;1:q1LTiG4RBXd3x2Jb/VbFFAZ+X0KFDBPe8JfB9GtTCB0REG0TrXMxI1BswPC+lB6sYRbN7RKred2ACB3A6U5fcZ0JWyjGYgVhZw2gycRfL98Q6sGCxgSm6lKOj/6IbT7T4yHTgowza9AqRb5SAa/bqh1If/XK/5u5/lZ9EebORglzO7cXj54ZdgEbFgzkOjJbqci14dUfVE5AVj0OnxnbdIeMT0kUrIk4ZmdrZUf5AQkwQSpMiQsTOWIKuwsWb/yNa0SzvIJv4dfSt/cCWrCSYUnsPpf5icDR2iPQjj6agEWVZi6/YdIHOx3GWNC91dkFXwZBnkD4QQYRlmVqyErxzV9GuJWifmFP/ehg3P3SjZxntbbZyxQplqNSzRmco9yqt+Htw4qmfu3gpXrXIqYpSPSQXNlJD1rK/y2kQve29uYD9FcTBe9xEA+h6ejkSAOepqEp01V5fklk+57miv9V03VGHd2mEAnIG+l+Gs/T02aUWv3hMunyxFqkWfDNTqXk3SCXtNr2Tp9raVHX3lfvUO6VWlaAxQgptYAioTxze8WGOnf55lfecWV/jSLUxwTb MIME-Version: 1.0 Content-Type: text/plain X-MS-Office365-Filtering-Correlation-Id: 889f7f8f-19ae-4147-bb98-08d3c73c378d X-Microsoft-Exchange-Diagnostics: 1;BY2PR0301MB1973;2:skgzcWhq53vMLZ8LIVx2WkNbpAa3atgG3dkKD3WovigjKdVyuf/DwJzOLnvzBAWTGOc4MBz1r17+ra8thI3w6eMiS61EOhvFBF+A31PEWtLJpcYCAiT32Ps7lxJUfZ9Ciz8v8G4YI109C1gVhlcf0lPKVJ8BGYHVcmywJlZDp5Iw8YUShka9yxm+L+f5OKJm;3:+kNXLsn8KyiIhSyctX628U79lj6DElZZ9iIBdI+cOoUvR0LOWSWKuqTgNhK4SNOCPF0l5vi0UAPsgukS9fEoqdzSp7imyqCnbIalez/S5C49ZBw5+OVBWoZ+3DhWd2o1liOgVEyyXbQ9GnQgTFGyWSRt6+Ir34OR9msRiJuqqHxsGZXQcp0YAAlNv8b9X+LCZ5+Vn3jcKjBTl/U+4Ir5+VlsAeUSb+HWZSxDR1gs8sg=;25:OsMaaSWrmbq90qnw1VTOFNe7qZHuo1wizFN32//bckhToq5pl/STzDKXNfTMVXII7HMcLMfJAX0Y4h76GsVCd+lcmchPfeXYAVBIQm/QnPUFoVYQt67FmlcxUqsMuj//Eiwy9DQykjKjDjzMgCIAKWv0R4TCipOWb/wKpDHWK/CP9b7AgfMpog4OahusB3x0+fJj4ZEBeCiNWokUMhB2vdLBGsHBh0lzfbBii/5mbKTRenlwBrCoBluebt7fLrEqXvzErjXL0srgZveKej/dfprmLDia2OFZ8EdxxWjXvAhAzvyh9OZ1HzaARWP33cGs4fYBZx6Km+wgOISxCWNzpMSoJ/M48yuTzDiHzZ3CU/rvWNWNJkuSFk/8Se1jOKmw+TEn8ELBX9Qn4bUajc8PQac1sp0rlm2bxDS0zcq5PLo= X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0301MB1973; X-LD-Processed: 710a03f5-10f6-4d38-9ff4-a80b81da590d,ExtAddr X-Microsoft-Exchange-Diagnostics: 1;BY2PR0301MB1973;31:x9OKffPPqy6Ne8564VHc4G6ApMW3ZpPkDbkbwY/4t8MCJagIqgx4NPde+CUM9JLf2Cd6sNf0UxLya7ylHqeENsqG7jbSQ2EEfB/SgbuI/m/sgqS+V56yWUpsiaFe0xxrzjZUHPZOZs3K5nVXqlleF0CyNdUNf4DMBbMGe/rqw9yi4AMj9OErJzI4GMB1BTFlaLq4SShZki+eTqBGxdeC+u85hPwHRpI2gFnDvvSqDdE=;20:QWJBZOYKSum9QIjyHPH6K7QUMAHe7EuwPHt2NC6fIVB+NbbUWuzV0nDK9MKXVNMFbiSNMhrpiLsu+z4Mx+h07MYupQ1IyKe+cs7rQ3/rgrA4vb8EMlQHB8cCFwW8/p95ARGqwovQZOGvtpDqtqozF6ltDsiDjE4xFhYb/YKmz0UJG9PT0j5qqSc5rP0cfezCKX+61lWtTqXoca0aagECp/A0/6lvCsgybeT8r3ixhPmSmE21OWuFJboiXYhTmgTQGObZ8Z10Gx8J3HFb1yfooAjdyaosUVe0WKlX9pYH7XqhC0sSYR6Pks/4VFvVerIYnYcwfmJZKr2EHyEfCDjvXRVdLlI3uLW3yBAXAE0NcagexmGGz9656/KUx+mfn2//n9qk6Pw0IvKkXkDL5HshCPz6Ui5JkXnRvhY9xgG7NGvWPNbIp7wTOarAv6PVqsNeUUzPfz/VunKwu60vH55wCG9zO+0I3ek8MenHMMTGTjZchPQfvbkXYhjZq4d/qgDhT9+ZCkcQpmHhDnGCrab7RHPqz6t2UEguYEYV8McqG75afgeAUoRLTeKuBvFpxPxVKNUDmjXT7+tocMts5qWNKTu/PO5PwfBrkTBABxhL81A= X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(185117386973197); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040176)(601004)(2401047)(8121501046)(5005006)(13018025)(13015025)(13023025)(13017025)(13024025)(3002001)(10201501046)(6055026);SRVR:BY2PR0301MB1973;BCL:0;PCL:0;RULEID:;SRVR:BY2PR0301MB1973; X-Microsoft-Exchange-Diagnostics: 1;BY2PR0301MB1973;4:afFx6sHwbaIMukBmSqeh8SbypXOJZZy8pbyLpTl7ndXrnQTE5qeFkmv+E3CjtK36xPIvCsYR2G52bHbtccl372S6ujQt130p2LPJhGZcxxTLuabzHO2/9dzl1XEdhmzmgiGTNRgILQrhwPJ8TKVGguTVLyKLYgMi+cGay7Pi3EYWoECrUk5Nz6tnukJFd9jSdxCuzzBZWvHCDYE+sggyiU6KYw2sqn9kBJ8x7QAGTOE6HoD0kLXnZwhuiwOUcmSwxDtpypYV7h15nGFIfQBJ7sf11jpsQW9ri/5DmPswzoBdxqA8xSz/cjjKsxl63ODEWYxRy8zeLTmGAPJDGJOsQxziaxxsof1VRTKODtd6vnWl7hjjxpmvzu63YSgZD2r5m4mHibLtErHFqvtqARoF2PUzhO6atgZpQKOOnryfvyH/m9WUJSU3g4Nl7JEfdgFlH9f4zspgaZzqYscdSRkBZ523tm89ijSC+8PJbM5EeWXgOR/AqizQU7b1B1miYW3Pu9YYPYRxEOWp0o2kmxBF1JW++aWdmAFe5De60hG2yWs= X-Forefront-PRVS: 0038DE95A2 X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BY2PR0301MB1973;23:juCZhkAT0Cm82aLatWyIKCUQ3tXpOPXZEpJkjUa?= =?us-ascii?Q?eFEmM87b3dpOf3xAze759amS1l496cvuUr+tShk1ypjsAx79IQU0eNNZihR2?= =?us-ascii?Q?JmigpekH086wWnwPK+0MG/bBEnLeUGMaEL6VndHZMXQatn9p4JVFULIM2xrx?= =?us-ascii?Q?8tP1v51RUTQpGm4t1fdBKIdPD3rIA4MRoi7lm2KJsIYOM26iy/l/+lkyG+uR?= =?us-ascii?Q?jBPD6Lxyus7sGxYfewpWFVnLMV1sAvZvSw4Qii3LsPHSiVm1V5g7SpKJ6B38?= =?us-ascii?Q?Q+ZvVUWTXpfcVcW51m2hve78sEJnxIJbBEa/bP8LwDOnQVUlKoxjZpK0bTYQ?= =?us-ascii?Q?hZW5AIMZjzYj6xa/KuKK6VaY0EdPHaA+vvpm22eYCxx5LjLVMjwqPvsAqgyt?= =?us-ascii?Q?NpfPrH5dscMwZdphQhtf2ept8TjV7+TF5pqg4JDCwSxCbhjtwx65NT8FIEnx?= =?us-ascii?Q?4lDrCSnXoJuLDQTQsjIM6xMK9WvQ2pwM/tVAQF7X2BIAzWmDq80fzlw7yDvz?= =?us-ascii?Q?2IfO1WlY8ROtm1kdzu6Jg5gB8GDKfstFklADDzfe0Qz7CZJJ32UmXC9yuIIV?= =?us-ascii?Q?Z58VG2Bfjsv6mIe8rcS7vDEkZfUkHioArOXN39jBNXyx2/eSGRJkdklOap1l?= =?us-ascii?Q?cVaZMg35Q2mAcID1lb+o+o1KlxAvvYJ5ydMOSSz5ZD8lOR1lBVXG0v6zHZAb?= =?us-ascii?Q?0+lrrbEtx8FUY2FS4F1aO9IBHfDcLX4wZTqTPxTRWzOMkBTt9bogaCWiCqjK?= =?us-ascii?Q?UUNctXYuCJkjhUZkRdZF+QBaIyqqLeQ1Pgy6GKbgq+L9NPvA8lPEiBbI8iQ+?= =?us-ascii?Q?ngTkOnbnO/BWow8bj/0WbzU345THoJR5G7UTkh8kokVJrniOsC0uVIxRRHVW?= =?us-ascii?Q?r1uEkmStIeLxpMSo6dCOHG+PhVq/r0JbfRoPDgDPemtFv3KnMK2WSBCLhEVw?= =?us-ascii?Q?bFmz1F0YjvyCm0DPtDz9R1DuZBd+6whY89yTTmPwwwREo1duEJ4EKQHaxUGw?= =?us-ascii?Q?I5oqVilSGiuInJ2pUOjxWNC39Qal7G7W/zW34yNYcYas68/avGvPI+rrCQKD?= =?us-ascii?Q?SJT4kTTU=3D?= X-Microsoft-Exchange-Diagnostics: 1;BY2PR0301MB1973;6:3ZUzK1/jRgnkEURWcP7wLqhxoXknKNupQ2vIqYPpVECocVZ0L2PzlWx/+OurjEoDaiBXI21Yo/K5ge3ObhLWxqyRh91C5bg5gK4qUjStkqIQRqcL4g0z57GFNV2g9mYBZ6VHWD8t7O+A/TPK87S227dptfFGg2CK8uGMu9txy8ZibdIG3aWRvbKIAFdo3RTL0sn2e5BR1eYTgj0g/u+iudd+S+DGsjr8f/jcNJq43gUCuF0IfFa5amfhfaDvxAVZOT7BXNasKYoiRxUTJedasOoPZd1csKbHKd7FVfjGGobH4zp3toNkVOYanBdGy9OfkyzJhQYKRyi1qtmizwkeeg==;5:L/5bKNIdXZKiwHjUCRksdBafX2o1c/fMTpAlD0tmaGo0wYQXqngNpIDEPaNsp9BFbx0pZq1uGu3Yx8lLWqLVunqaJYIJauig7P1V3PG+sSOpdSrI7kVZZMAZxvRUPnLbtMc4vu6CqaLvhd0z7/ncRA==;24:CZuaW1uwQcQEouOm+wLzsetGgzTFN2Tk1m1UNM8lqamXI5ZkIrmSjdc8P3mwt0ywKWiUjda35fJytz+p7cVRES0QTe3lMbltwn9lF9CSCCQ=;7:rP4E5kQ9AcAjAcT83bZ/5J+RJdtK5OWw5lwzY5DwglcHry+t+TwBsm6z69JZ4BaRMK2BNGmozHBwwLr4ynmbnh4RBNvPGEGdWCtD9B2xlmOGAGA2+CRLPC5wmjpCHJ6i9sckq3UAWjE5HP8tNo3s4xBgYidp+CL7kXPSLaWucqFKgKW8sd8QTEvC4404l6TAvmm3FGwE5Ta/vkaMuOskGyzhZS+nWlAy7n1cQmT4Y2SGLmhpElEKR5jUZYyPMV4I SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Aug 2016 07:49:43.1500 (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: BY2PR0301MB1973 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org From: Yunhui Cui The qspi driver add generic fast-read mode for different flash venders. There are some different board flash work on different mode, such fast-read, quad-mode. Signed-off-by: Yunhui Cui --- drivers/mtd/spi-nor/fsl-quadspi.c | 21 ++++++++++++++++----- 1 file changed, 16 insertions(+), 5 deletions(-) diff --git a/drivers/mtd/spi-nor/fsl-quadspi.c b/drivers/mtd/spi-nor/fsl-quadspi.c index 21c77e8..b0a74b8 100644 --- a/drivers/mtd/spi-nor/fsl-quadspi.c +++ b/drivers/mtd/spi-nor/fsl-quadspi.c @@ -389,11 +389,21 @@ static void fsl_qspi_init_lut(struct fsl_qspi *q) /* Read */ lut_base = SEQID_READ * 4; - qspi_writel(q, LUT0(CMD, PAD1, read_op) | LUT1(ADDR, PAD1, addrlen), - base + QUADSPI_LUT(lut_base)); - qspi_writel(q, LUT0(DUMMY, PAD1, read_dm) | - LUT1(FSL_READ, PAD4, rxfifo), - base + QUADSPI_LUT(lut_base + 1)); + if (nor->flash_read == SPI_NOR_FAST) { + qspi_writel(q, LUT0(CMD, PAD1, read_op) | + LUT1(ADDR, PAD1, addrlen), + base + QUADSPI_LUT(lut_base)); + qspi_writel(q, LUT0(DUMMY, PAD1, read_dm) | + LUT1(FSL_READ, PAD1, rxfifo), + base + QUADSPI_LUT(lut_base + 1)); + } else if (nor->flash_read == SPI_NOR_QUAD) { + qspi_writel(q, LUT0(CMD, PAD1, read_op) | + LUT1(ADDR, PAD1, addrlen), + base + QUADSPI_LUT(lut_base)); + qspi_writel(q, LUT0(DUMMY, PAD1, read_dm) | + LUT1(FSL_READ, PAD4, rxfifo), + base + QUADSPI_LUT(lut_base + 1)); + } /* Write enable */ lut_base = SEQID_WREN * 4; @@ -468,6 +478,7 @@ static int fsl_qspi_get_seqid(struct fsl_qspi *q, u8 cmd) { switch (cmd) { case SPINOR_OP_READ_1_1_4: + case SPINOR_OP_READ_FAST: return SEQID_READ; case SPINOR_OP_WREN: return SEQID_WREN; -- 2.1.0.27.g96db324