Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S932860AbdC2UGV (ORCPT ); Wed, 29 Mar 2017 16:06:21 -0400 Received: from mail.free-electrons.com ([62.4.15.54]:50065 "EHLO mail.free-electrons.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S932787AbdC2UFj (ORCPT ); Wed, 29 Mar 2017 16:05:39 -0400 Date: Wed, 29 Mar 2017 22:05:22 +0200 From: Boris Brezillon To: Boris Brezillon , Richard Weinberger , linux-mtd@lists.infradead.org, Nicolas Ferre , Alexandre Belloni , Haavard Skinnemoen , Hans-Christian Egtvedt , linux-kernel@vger.kernel.org, Wenyou Yang , Josh Wu Cc: Mark Rutland , devicetree@vger.kernel.org, Pawel Moll , Ian Campbell , Masahiro Yamada , Marek Vasut , Andy Shevchenko , Rob Herring , Kumar Gala , Cyrille Pitchen , Brian Norris , David Woodhouse , linux-arm-kernel@lists.infradead.org Subject: Re: [PATCH v3 0/3] mtd: nand: Rework/cleanup the Atmel NAND driver Message-ID: <20170329220522.5398179a@bbrezillon> In-Reply-To: <1489651362-17077-1-git-send-email-boris.brezillon@free-electrons.com> References: <1489651362-17077-1-git-send-email-boris.brezillon@free-electrons.com> X-Mailer: Claws Mail 3.13.2 (GTK+ 2.24.30; x86_64-pc-linux-gnu) MIME-Version: 1.0 Content-Type: text/plain; charset=US-ASCII Content-Transfer-Encoding: 7bit Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 3616 Lines: 79 On Thu, 16 Mar 2017 09:02:39 +0100 Boris Brezillon wrote: > This is a complete rewrite of the driver whose main purpose is to > support the new DT representation where the NAND controller node is now > really visible in the DT and appears under the EBI bus. With this new > representation, we can add other devices under the EBI bus without > risking pinmuxing conflicts (the NAND controller is under the EBI > bus logic and as such, share some of its pins with other devices > connected on this bus). > > Even though the goal of this rework was not necessarily to add new > features, the new driver has been designed with this in mind. With a > clearer separation between the different blocks and different IP > revisions, adding new functionalities should be easier (we already > have plans to support SMC timing configuration so that we no longer > have to rely on the configuration done by the bootloader/bootstrap). > > Also note that we no longer have a custom ->cmdfunc() implementation, > which means we can now benefit from new features added in the core > implementation for free (support for new NAND operations for example). > > The last thing that we gain with this rework is support for multi-chips > and multi-dies chips, thanks to the clean NAND controller <-> NAND > devices representation. > > This new driver has been tested on several platforms (at91sam9261, > at91sam9g45, at91sam9x5, sama5d3 and sama5d4) to make sure it did not > introduce regressions, and it's worth mentioning that old bindings are > still supported (which partly explain the positive diffstat). Applied the whole series. > > Regards, > > Boris > > Changes since v2: > - add error messages when the NFC reports an error > - drop AVR32 compat code > - add acks > - minor coding style fixes > > Changes since v1: > - change function/structure prefixes (asked by Nicolas) > - drop applied patches > - use new GPIO helpers > - set ->chip_delay to 40 as done in the old driver (reported by Nicolas) > - rework read_page to improve perfs > - add a better commit message to patch 2 > > Boris Brezillon (3): > mtd: nand: Cleanup/rework the atmel_nand driver > mtd: nand: atmel: Document the new DT bindings > mtd: nand: Remove unused chip->write_page() hook > > .../devicetree/bindings/mtd/atmel-nand.txt | 107 +- > MAINTAINERS | 2 +- > drivers/mtd/nand/Kconfig | 6 +- > drivers/mtd/nand/Makefile | 2 +- > drivers/mtd/nand/atmel/Makefile | 4 + > drivers/mtd/nand/atmel/nand-controller.c | 2198 +++++++++++++++++ > drivers/mtd/nand/atmel/pmecc.c | 1020 ++++++++ > drivers/mtd/nand/atmel/pmecc.h | 73 + > drivers/mtd/nand/atmel_nand.c | 2479 -------------------- > drivers/mtd/nand/atmel_nand_ecc.h | 163 -- > drivers/mtd/nand/atmel_nand_nfc.h | 103 - > drivers/mtd/nand/nand_base.c | 12 +- > include/linux/mtd/nand.h | 4 - > 13 files changed, 3411 insertions(+), 2762 deletions(-) > create mode 100644 drivers/mtd/nand/atmel/Makefile > create mode 100644 drivers/mtd/nand/atmel/nand-controller.c > create mode 100644 drivers/mtd/nand/atmel/pmecc.c > create mode 100644 drivers/mtd/nand/atmel/pmecc.h > delete mode 100644 drivers/mtd/nand/atmel_nand.c > delete mode 100644 drivers/mtd/nand/atmel_nand_ecc.h > delete mode 100644 drivers/mtd/nand/atmel_nand_nfc.h >