From patchwork Tue Nov 21 17:38:10 2017 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Masahiro Yamada X-Patchwork-Id: 119371 Delivered-To: patch@linaro.org Received: by 10.140.22.164 with SMTP id 33csp5565870qgn; Tue, 21 Nov 2017 09:38:54 -0800 (PST) X-Google-Smtp-Source: AGs4zMYgKq54VXt9WKWNeCJzHqpUYpADLdRPNgdh1a2l8ZXJ5K//e6Y/x/dzOHa1BT1M5VFWTyEh X-Received: by 10.80.173.170 with SMTP id a39mr21229797edd.49.1511285934519; Tue, 21 Nov 2017 09:38:54 -0800 (PST) ARC-Seal: i=1; a=rsa-sha256; t=1511285934; cv=none; d=google.com; s=arc-20160816; b=sIVUbluntpPmC00k8w/bLxgfcRIBDwFYJ4wTBjrXAzrkGo5f2UdVPK4Ugw87aDdqIK zJutjucBZtmmH5/W9oJQnd5COibVvM9e2neztiInheagVONd4LD/uVKsNBIvP4a2AmQc YMvw3Ev63wHlLiI+Ojd580aIX8EGlbg1tDheE4evZR7YV8ICHFBC3zU32kUxXeLQJ8YO 42qIvRWL5o9xhF4SkBTtLPrqNF3/xHPud7wgjM6zQfcQAyGb46pQ6sZv62CvKqZmcgBE cBnTL6MYf8g9yqO7MAURPb+LCKcmAq/wlHSgMXMsDWSSH/rFr3mnTJOiZvlcMkALSAJR cLxQ== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=sender:errors-to:content-transfer-encoding:mime-version :list-subscribe:list-help:list-post:list-archive:list-unsubscribe :list-id:precedence:subject:cc:message-id:date:to:from :dkim-signature:dkim-filter:arc-authentication-results; bh=ruNu6A8TRYn+TRJspBSepKOAamoonsY2cgfy7X22u+U=; b=CcJWKXtMqoXD/OPOFIYnHCgXzeYd/XZpdnA0hfyf0u5i16AixzwKW0GugaDJ1SLj5c lec6xyFgExeHSCJNeZKft+AkN6WhvdsFO1Gn7IqVN5hOrdcWFY4qT7JJMob/YAhAVH1J dKoj8sSma8IW5wp66vklgbrwNw+Lse+ozLKAz9jJsc8HWlybZ4MqNErXoY1waK9B1BkV C+pDsGo+WGEq5CapIdTlxa2fN6dqlFZOQ5/hCXcMklRScQEMepZhQaXVUGNG6Uv8oOx0 +LG/6l6LECiqtRSBaEubKkRdD6+vDXxi3jDssLQBOHUllhLtSdMNNDwDHi0b7eOjHGwh GBZA== ARC-Authentication-Results: i=1; mx.google.com; dkim=neutral (body hash did not verify) header.i=@nifty.com header.s=dec2015msa header.b=L9UnfELI; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Return-Path: Received: from lists.denx.de (dione.denx.de. [81.169.180.215]) by mx.google.com with ESMTP id y35si718645edb.54.2017.11.21.09.38.54; Tue, 21 Nov 2017 09:38:54 -0800 (PST) Received-SPF: pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) client-ip=81.169.180.215; Authentication-Results: mx.google.com; dkim=neutral (body hash did not verify) header.i=@nifty.com header.s=dec2015msa header.b=L9UnfELI; spf=pass (google.com: best guess record for domain of u-boot-bounces@lists.denx.de designates 81.169.180.215 as permitted sender) smtp.mailfrom=u-boot-bounces@lists.denx.de Received: by lists.denx.de (Postfix, from userid 105) id 14A9EC21C29; Tue, 21 Nov 2017 17:38:51 +0000 (UTC) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on lists.denx.de X-Spam-Level: X-Spam-Status: No, score=0.0 required=5.0 tests=T_DKIM_INVALID autolearn=unavailable autolearn_force=no version=3.4.0 Received: from lists.denx.de (localhost [IPv6:::1]) by lists.denx.de (Postfix) with ESMTP id 94DADC21D95; Tue, 21 Nov 2017 17:38:49 +0000 (UTC) Received: by lists.denx.de (Postfix, from userid 105) id 035EAC21D95; Tue, 21 Nov 2017 17:38:47 +0000 (UTC) Received: from conuserg-07.nifty.com (conuserg-07.nifty.com [210.131.2.74]) by lists.denx.de (Postfix) with ESMTPS id BE6B6C21C29 for ; Tue, 21 Nov 2017 17:38:46 +0000 (UTC) Received: from grover.sesame (FL1-125-199-20-195.osk.mesh.ad.jp [125.199.20.195]) (authenticated) by conuserg-07.nifty.com with ESMTP id vALHcbto001225; Wed, 22 Nov 2017 02:38:38 +0900 DKIM-Filter: OpenDKIM Filter v2.10.3 conuserg-07.nifty.com vALHcbto001225 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=nifty.com; s=dec2015msa; t=1511285918; bh=q+WylLJ8Y18Gm2RMO3bZtoNnn40H2+X8L4YrFBbmdZg=; h=From:To:Cc:Subject:Date:From; b=L9UnfELIXSsNo+DiDFofpbdqztV2QxlXpUop8IXAtwxcxiuvRF8bBtVfx+GIR2cv0 Y9RUpt330TRjVB9oJDj2I0fgQy+lVVBJbg8p23xQj1d8uysoiLK6OoWZClXWqLzLHh 6dLOpECMnd31MmeZD9nq+5o/WkiKBvAiYAPFvMpXhpS5pXnvKLSlKG73TaLes8gW4x Xd/bOjRfGOaPS9gRKZpv1COZEm6JqvP4Eij2slnU656bMWDw0XnaNraLXUUiM4IwsV xP+NqOfEGyZHBrw73s/X0OQ8ptns1a85yo5b3GWDHY+WY1aX0orpZVFUOBtjqq1r6o ElzpBNDz7ggdA== X-Nifty-SrcIP: [125.199.20.195] From: Masahiro Yamada To: u-boot@lists.denx.de Date: Wed, 22 Nov 2017 02:38:10 +0900 Message-Id: <1511285912-12452-1-git-send-email-yamada.masahiro@socionext.com> X-Mailer: git-send-email 2.7.4 Cc: Scott Wood Subject: [U-Boot] [PATCH 00/22] mtd: nand: imports NAND core updates from Linux 4.15-rc1 and sync Denali driver X-BeenThere: u-boot@lists.denx.de X-Mailman-Version: 2.1.18 Precedence: list List-Id: U-Boot discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , MIME-Version: 1.0 Errors-To: u-boot-bounces@lists.denx.de Sender: "U-Boot" My motivation is to complete syncing the Denali driver with Linux. However, the last sync of NAND core was Linux 4.6 so a lots of parts are missing in U-Boot. I imported the following: - NAND_ECC_MAXIMIZE flag - nand_data_interface - sync nand_timings - NAND_ECC_CUSTOM_PAGE_ACCESS - mtd_ooblayout_xxx() - chip->buf_align - helpers to match ECC requirement - NAND_ROW_ADDR_3 The blind syncing often broke drivers. Forcible syncing often broke drivers in the past. This time, I imported necessary commits one by one. I put the corresponding commit ID in Linux. And, it should be easy to review that the existing drivers are not affected. Lastly, I updated the Denali driver. I tested it on my boards and worked for me. It is nicely synced with Linux. Boris Brezillon (9): mtd: nand: Add an option to maximize the ECC strength mtd: nand: automate NAND timings selection mtd: nand: Fix data interface configuration logic mtd: nand: Add a few more timings to nand_sdr_timings mtd: add mtd_ooblayout_xxx() helper functions mtd: nand: Drop unused cached programming support mtd: nand: Drop the ->errstat() hook mtd: nand: Wait for PAGEPROG to finish in drivers setting NAND_ECC_CUSTOM_PAGE_ACCESS mtd: nand: Pass the CS line to ->setup_data_interface() Marc Gonzalez (1): mtd: nand: Support controllers with custom page Masahiro Yamada (7): bitops: collect BIT macros to include/linux/bitops.h mtd: nand: add onfi_* stubs in case ONFI_DETECTION is disabled mtd: nand: allow drivers to request minimum alignment for passed buffer mtd: nand: add generic helpers to check, match, maximize ECC settings mtd: nand: add a shorthand to generate nand_ecc_caps structure mtd: nand: introduce NAND_ROW_ADDR_3 flag mtd: nand: denali: sync with Linux 4.15-rc1 Sascha Hauer (5): mtd: nand: remove unnecessary 'extern' from function declarations mtd: nand: Create a NAND reset function mtd: nand: Introduce nand_data_interface mtd: nand: convert ONFI mode into data interface mtd: nand: Expose data interface for ONFI mode 0 arch/arm/include/asm/arch-sunxi/dram_sunxi_dw.h | 3 +- arch/arm/mach-kirkwood/include/mach/gpio.h | 4 - drivers/gpio/kw_gpio.c | 2 +- drivers/mtd/mtdcore.c | 360 ++++ drivers/mtd/nand/Kconfig | 11 - drivers/mtd/nand/davinci_nand.c | 10 +- drivers/mtd/nand/denali.c | 2028 ++++++++++++----------- drivers/mtd/nand/denali.h | 473 ++---- drivers/mtd/nand/denali_dt.c | 17 +- drivers/mtd/nand/denali_spl.c | 14 +- drivers/mtd/nand/nand_base.c | 530 +++++- drivers/mtd/nand/nand_timings.c | 494 +++--- include/linux/bitops.h | 7 + include/linux/mtd/mtd.h | 57 + include/linux/mtd/nand.h | 314 +++- include/usb/lin_gadget_compat.h | 4 +- 16 files changed, 2685 insertions(+), 1643 deletions(-)