From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752022AbbHRDry (ORCPT ); Mon, 17 Aug 2015 23:47:54 -0400 Received: from mail-by2on0124.outbound.protection.outlook.com ([207.46.100.124]:23520 "EHLO na01-by2-obe.outbound.protection.outlook.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1751387AbbHRDrx (ORCPT ); Mon, 17 Aug 2015 23:47:53 -0400 Authentication-Results: spf=fail (sender IP is 192.88.168.50) smtp.mailfrom=freescale.com; vger.kernel.org; dkim=none (message not signed) header.d=none; From: Han Xu To: CC: , , , , , , , , , , Subject: [PATCH v2 6/6] mtd: nand: gpmi: support NAND on i.MX6UL Date: Mon, 17 Aug 2015 22:25:07 -0500 Message-ID: <1439868307-24985-1-git-send-email-b45815@freescale.com> X-Mailer: git-send-email 1.9.1 X-EOPAttributedMessage: 0 X-Microsoft-Exchange-Diagnostics: 1;BN1BFFO11FD018;1:w0LB5nLZckL8zdltfUQ1uMtrdwKBVhHh/8iyQsy7KDJXKMxbk/20QPsldV5UtlYYm0QpiOgPkVdgOD9NPfC1stb1N9pt11RpaUKUm4eYwhEm4s5e8dtPUNjKETPD+M07bMnvqP3H+UbEhBa6+/w6rRKWrWizBkvctKF0NgZcs6niKe/rl4qlWEpVPrcHndIGXuncgINN0+t6c7OFsejo07uDxLiwnFY8UZR41kkbTd9zoBDfVQ83HMZsKUXVf+DwzbbDpLPAvmVeVK/MX/J1I0p3bjGN5fNMpjMSdUX2GHCX4aGXF/QZ+BLpqJIo19wSYOFqU0p50IFmr4UsAAtdSg16QVQ60xpT87PofU/fZF8HnmXOEDj+n9dZZEZhAi7BXP5VaafF5LjGMYPxIWl+dA== X-Forefront-Antispam-Report: CIP:192.88.168.50;CTRY:US;IPV:NLI;EFV:NLI;SFV:NSPM;SFS:(10019020)(6009001)(2980300002)(3050300001)(339900001)(199003)(189002)(81156007)(64706001)(47776003)(19580405001)(4001540100001)(92566002)(2351001)(229853001)(5001830100001)(5001860100001)(97736004)(189998001)(110136002)(5001960100002)(5003940100001)(106466001)(105606002)(50466002)(33646002)(104016003)(77156002)(50986999)(36756003)(19580395003)(77096005)(46102003)(6806004)(87936001)(48376002)(85426001)(68736005)(50226001)(62966003);DIR:OUT;SFP:1102;SCL:1;SRVR:BL2PR03MB548;H:tx30smr01.am.freescale.net;FPR:;SPF:Fail;PTR:InfoDomainNonexistent;A:1;MX:1;LANG:; MIME-Version: 1.0 Content-Type: text/plain X-Microsoft-Exchange-Diagnostics: 1;BL2PR03MB548;2:1ylx/8Oe5HxM+YlmzUY0A9gcOLVeM/FETO9gBdA+2zRMKuFb84SxsXfvjBJhd/FoxsT4DyWoORfYksmDQtgk60HbqokGaaWzQGE+fS5vw6KdLtcksCSHFQ1DCKpqDfBgX/rAaz18i6WKlfHbRzr3UdHvyDmqNWNfikKcYHLw1HY=;3:x3WpHwWq2bapSoz9ZCMzVKkh38gUmW4cCMir+J6Lao5CPP/08xKWzfFAFIEyWQMMJhxZUQ6Zs/t1xEHLzawzrMMVh555AIaCqugtkHcdcJyTtxqWNjUvzcHwDjM/QKAwaSy6/gvb1BgoodTC6lTDtpPKqRLlzMZMxhCwQcadTn/ZK1x4k6Di5OrxFBDGgxp5Edu1G5tPcMGMBXNY3EdD+ib/92nh/5Rp6burWx9UZNY=;25:ce+lggSMHNgS2hdMD73LkuuTssSUawHgSXJZUwPgy45cdxiSq9QMJB/FcTAlN4UrdKqu9kpo1C7gKx6D0nMks/lfUTsLGrZXW6QW/sNgorEPGrruzoUnQCzS0PJEptSaNH1eTWHtxWiKQXG7KNmhdFTHerNwXZUJdkafaj54ay1bXHktyUpcuOHF5/mB76rXb1eS8+nDhWWGaNu3iK5puCu9uqb0y7P/LpwTuduztj+m9/pTBxWUGIkbU8aPxAxnyA1tdBrLaygH7IHL/B4b1w== X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:;SRVR:BL2PR03MB548; X-Microsoft-Exchange-Diagnostics: 1;BL2PR03MB548;20:bPlKWLFHyjoWRpZ6OvGpBAUZ/lVoGJBk/B5TRHjdtHJQ1TXSGOqp25ycbmqY9oZ+ADn8hritO3zfMFJG278j2PSJS32Xj5k94wFXInZXC1vsDCI8/WhiLMVzf3DPQEB1e/QSc4ey/LY9ArkLgPRoA1VLojIeAopuEe6gg0azxHm65KvjNyaGHtklTP+WdzgHQTMPV08aR5ekPTRLl+uDYVlWStMdqOIWO7pYtp491KrXi6qAYm2Dn1SHAGnQiVqukk1//t2YJ5SE8jgXwZv3zOB/aYqEu+vo/8vR6ym3sUv3nhOJKJKRoUAjOPJBCshH2Bg192aKZO9YF9cyrfRy4JIpXwSSkWP6DvZuz1FyPEE=;4:c9DUVT9hk7oXKCJMz52KQSKz9s4VV0sLQ1koOmuQm/XnOaS37A/6AUy9qHiFj9Dw+1WutVxOASqHWfGE86C3NpzgrqfDENlyhh/yk7ansH/Z/UMJFx1UFeXMPmsJGVqQGm0Iz37IMT7KqLoYCyX5p9cJsW5PzdXy4uoiTck8bFBm3sL5mjRO7MtYZ3EaxVQaLnOy8lPwagTejUJqKxekml30rdnLgNyenUUrQifF5gmFBqZrCdVj10elgifsNuqjlwiVRKOfQWOJv2ro8ts3Kz3Ra4aDtwpIxYK62G8d0thDJfpuaA972gEhuFn2NFwp X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:; X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(601004)(8121501046)(5005006)(3002001);SRVR:BL2PR03MB548;BCL:0;PCL:0;RULEID:;SRVR:BL2PR03MB548; X-Forefront-PRVS: 067270ECAF X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;BL2PR03MB548;23:EUNsIfImhIKHcwUMxSf3rckOWDKwPl8t1ijF7GGHsD?= =?us-ascii?Q?W2ep5e1LM3rbmmHAc+KfaLM6kfWOATxh3zCn9GaMYggq/c8Li5AEVUt5R5Bd?= =?us-ascii?Q?aZ5jyKgG4UjPt8hYqvkDsHNJ2m6QQ3rNnya4QoNC96NPyfHPrlpEEa69ERaf?= =?us-ascii?Q?YYxVRxO67HzOjnp0zffDQW0dn3lt51480CMMpfNzFfdNYqqvfLPCry4Xe8PN?= =?us-ascii?Q?xxhJJmnW7QjPH3Zg9AUeqSumXnZ0Ps5LPXNWd5QOTFQzrTipd//S+03LQrnC?= =?us-ascii?Q?oDWgBZmPo0apQ3kSuFmycJpit/t/geouYUW1IXnN1g84yLp3lqoXwxGBPUuT?= =?us-ascii?Q?5OP/0H5tih9Ud/gBcNpU4hISfPmBKFm3Mvh0gixICxgaDr9bAgnK/iY/hZ8N?= =?us-ascii?Q?hVT+K73++OA8EmhISXzFOpdOYOhfz7A+0StZNnFKnZRA0x4j9UXp0HW3TtP4?= =?us-ascii?Q?bZZLVrFU7ZbpT/Ys3OHDFRp/e4dyBc450lIon9rIUaDYa/zab6wFbWw0NHEc?= =?us-ascii?Q?xDHPZNUDjxYyLGlHm0a3/dbHyyH6T7Da52asSYTLmFz7609TxFrRNMN0MaeP?= =?us-ascii?Q?qKBO8KPkWbZt5PaMsmGROmvc2tZMrFruMyNUpK07e9Zlil0jVLrny31E7Wf4?= =?us-ascii?Q?Jfoz0P4tqNJzC+0mVHErYCh0mrjCdwBd0d7iGcnocNgG4L4D5guEz2YJ7Pzu?= =?us-ascii?Q?BZvMxG151Pka3EF78en8bczS2i/6GltWdpCfYnJZEWHxrJ00xPe56cOZF+ld?= =?us-ascii?Q?kU5ll++V97AkhgP/9xhfXAwIDY7tJoDEAoVjhKiXCrCZ4vkTw7RSAsBCNkKn?= =?us-ascii?Q?9b3U4yg+WFZ0VEbe54cMVtH5jkbMhhD64++A97C2w2FtofYfAyi2AUcUplLP?= =?us-ascii?Q?PX6k+L8tP8ryru6ZgUixKxbRb0ZEonfIa2ciBscnuCp4eg3SBLBhmdDDP/cl?= =?us-ascii?Q?LMO7tTboQhh7DXSTsvMuXfYw7JT6CuTRmqZoEL0c2y+EuNQMACFOeMZhH7/t?= =?us-ascii?Q?7piL3aWxRVS+nZcgFnPjg0Zx74zX3lUw3PHHrQ/30YVroD5o+Wr1d+OhvUv4?= =?us-ascii?Q?s211nFGobaWLca3/36KDAHVQT+?= X-Microsoft-Exchange-Diagnostics: 1;BL2PR03MB548;5:McRQ1OKhRB1Ww75uOw3T8uKLJQZ3uwBjlSbdSDA0k8Tnfv/swkzhLAgPNQq0fbCfFKLY1AhSEjYd+4FF3OrRMOVIkGmMoZF2MIXC4mf1Wr859FM65iwRZkcztQ/Vf4JPtMGD+umc5hZYrkoC2w6Fmw==;24:/UkJx8WRJH4q98S0Qbl2DY6yp9VyjQklIRNhWU4yLadWFQ5LkujsdW3XpNfanUhRdEPQ26VN40DDohfQrjWlnFHKCfi0n7NG0JLALWKULek=;20:Yw0zCfyItsIGHV8q7xrjUqx/9KwBbf4+heUgZ5Yu4w3XzEAbMyiyKH1igO2p+a85JQZIykeTGTZLPC4Yj8jVtw== X-OriginatorOrg: freescale.com X-MS-Exchange-CrossTenant-OriginalArrivalTime: 18 Aug 2015 03:33:36.6954 (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: BL2PR03MB548 Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org support GPMI NAND on i.MX6UL Signed-off-by: Han Xu --- drivers/mtd/nand/gpmi-nand/gpmi-nand.c | 9 +++++++++ drivers/mtd/nand/gpmi-nand/gpmi-nand.h | 6 ++++-- 2 files changed, 13 insertions(+), 2 deletions(-) diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c index 362cf4c..adadac2 100644 --- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.c +++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.c @@ -89,6 +89,12 @@ static const struct gpmi_devdata gpmi_devdata_imx7d = { .max_chain_delay = 12, }; +static const struct gpmi_devdata gpmi_devdata_imx6ul = { + .type = IS_MX6UL, + .bch_max_ecc_strength = 40, + .max_chain_delay = 12, +}; + static irqreturn_t bch_irq(int irq, void *cookie) { struct gpmi_nand_data *this = cookie; @@ -2016,6 +2022,9 @@ static const struct of_device_id gpmi_nand_id_table[] = { .compatible = "fsl,imx6sx-gpmi-nand", .data = &gpmi_devdata_imx6sx, }, { + .compatible = "fsl,imx6ul-gpmi-nand", + .data = (void *)&gpmi_devdata_imx6ul, + }, { .compatible = "fsl,imx7d-gpmi-nand", .data = (void *)&gpmi_devdata_imx7d, } diff --git a/drivers/mtd/nand/gpmi-nand/gpmi-nand.h b/drivers/mtd/nand/gpmi-nand/gpmi-nand.h index 36ffeda..8428637 100644 --- a/drivers/mtd/nand/gpmi-nand/gpmi-nand.h +++ b/drivers/mtd/nand/gpmi-nand/gpmi-nand.h @@ -125,7 +125,8 @@ enum gpmi_type { IS_MX6Q, IS_MX6QP, IS_MX6SX, - IS_MX7D + IS_MX7D, + IS_MX6UL }; struct gpmi_devdata { @@ -310,8 +311,9 @@ void gpmi_copy_bits(u8 *dst, size_t dst_bit_off, #define GPMI_IS_MX6QP(x) ((x)->devdata->type == IS_MX6QP) #define GPMI_IS_MX6SX(x) ((x)->devdata->type == IS_MX6SX) #define GPMI_IS_MX7D(x) ((x)->devdata->type == IS_MX7D) +#define GPMI_IS_MX6UL(x) ((x)->devdata->type == IS_MX6UL) #define GPMI_IS_MX6(x) (GPMI_IS_MX6Q(x) || GPMI_IS_MX6QP(x)\ - || GPMI_IS_MX6SX(x)) + || GPMI_IS_MX6SX(x) || GPMI_IS_MX6UL(x)) #define GPMI_IS_MX7(x) (GPMI_IS_MX7D(x)) #endif -- 1.9.1