From: Roger Quadros <rogerq@ti.com>
To: <dwmw2@infradead.org>, <computersforpeace@gmail.com>
Cc: <tony@atomide.com>, <ezequiel@vanguardiasur.com.ar>,
<javier@dowhile0.org>, <fcooper@ti.com>, <nsekhar@ti.com>,
<linux-mtd@lists.infradead.org>, <linux-omap@vger.kernel.org>,
<devicetree@vger.kernel.org>, <linux-kernel@vger.kernel.org>
Subject: Re: [PATCH v3 00/27] memory: omap-gpmc: mtd: nand: Support GPMC NAND on non-OMAP platforms
Date: Wed, 30 Sep 2015 10:39:04 +0300 [thread overview]
Message-ID: <560B9198.70103@ti.com> (raw)
In-Reply-To: <1442588029-13769-1-git-send-email-rogerq@ti.com>
Brian/David,
On 18/09/15 17:53, Roger Quadros wrote:
> Hi,
>
> We do a couple of things in this series which result in
> cleaner device tree implementation, faster perfomance and
> multi-platform support. As an added bonus we get new GPI/Interrupt pins
> for use in the system.
>
> - Establish a custom interface between NAND and GPMC driver. This is
> needed because all of the NAND registers sit in the GPMC register space.
> Some bits like NAND IRQ are even shared with GPMC.
>
> - Remove NAND IRQ handling from omap-gpmc driver, share the GPMC IRQ
> with the omap2-nand driver and handle NAND IRQ events in the NAND driver.
> This causes performance increase when using prefetch-irq mode.
> 30% increase in read, 17% increase in write in prefetch-irq mode.
>
> - Clean up device tree support so that omap-gpmc IP and the omap2 NAND
> driver can be used on non-OMAP platforms. e.g. Keystone.
>
> - Implement GPIOCHIP + IRQCHIP for the GPMC WAITPINS. SoCs can contain
> 2 to 4 of these and most of them would be unused otherwise. It also
> allows a cleaner implementation of NAND Ready pin status for the NAND driver.
>
> - Implement GPIOlib based NAND ready pin checking for OMAP NAND driver.
>
> This series is available at
> git@github.com:rogerq/linux.git
> in branch
> for-v4.4/gpmc-v3
Could you please ack the patches affecting the omap2 nand driver?
These would be patches 4, 6, 9, 10, 11, 12, 18. Thanks.
cheers,
-roger
>
> Changelog:
> v3:
> -Fixed and tested NAND using legacy boot on omap3-beagle.
> -Support rising and falling edge interrupts on WAITpins.
> -Update DT node of all gpmc users.
>
> Roger Quadros (27):
> ARM: OMAP2+: gpmc: Add platform data
> ARM: OMAP2+: gpmc: Add gpmc timings and settings to platform data
> memory: omap-gpmc: Introduce GPMC to NAND interface
> mtd: nand: omap2: Use gpmc_omap_get_nand_ops() to get NAND registers
> memory: omap-gpmc: Add GPMC-NAND ops to get writebufferempty status
> mtd: nand: omap2: Switch to using GPMC-NAND ops for writebuffer empty
> check
> memory: omap-gpmc: Remove NAND IRQ code
> memory: omap-gpmc: Add IRQ ops for GPMC-NAND interface
> mtd: nand: omap2: manage NAND interrupts
> mtd: nand: omap: Copy platform data parameters to omap_nand_info data
> mtd: nand: omap: Clean up device tree support
> mtd: nand: omap: Update DT binding documentation
> memory: omap-gpmc: Prevent mapping into 1st 16MB
> memory: omap-gpmc: Move device tree binding to correct location
> memory: omap-gpmc: Support general purpose input for WAITPINs
> memory: omap-gpmc: Reserve WAITPIN if needed for WAIT monitoring
> memory: omap-gpmc: Add irqchip support to the gpiochip
> mtd: nand: omap2: Implement NAND ready using gpiolib
> memory: omap-gpmc: Prevent GPMC_STATUS from being accessed via
> gpmc_regs
> ARM: dts: dra7: Fix NAND device nodes.
> ARM: dts: dra7x-evm: Provide NAND ready pin
> ARM: dts: am437x: Fix NAND device nodes
> ARM: dts: am437x-gp-evm: Provide NAND ready pin
> ARM: dts: am335x: Fix NAND device nodes
> ARM: dts: am335x: Provide NAND ready pin
> ARM: dts: dm816x: Fix gpmc and NAND node
> ARM: dts: omap3: Fix gpmc and NAND nodes
>
> Documentation/devicetree/bindings/bus/ti-gpmc.txt | 130 -----
> .../bindings/memory-controllers/omap-gpmc.txt | 130 +++++
> .../devicetree/bindings/mtd/gpmc-nand.txt | 16 +-
> arch/arm/boot/dts/am335x-chilisom.dtsi | 7 +-
> arch/arm/boot/dts/am335x-evm.dts | 7 +-
> arch/arm/boot/dts/am335x-igep0033.dtsi | 7 +-
> arch/arm/boot/dts/am33xx.dtsi | 4 +
> arch/arm/boot/dts/am4372.dtsi | 4 +
> arch/arm/boot/dts/am437x-gp-evm.dts | 8 +-
> arch/arm/boot/dts/am43x-epos-evm.dts | 8 +-
> arch/arm/boot/dts/dm8168-evm.dts | 7 +-
> arch/arm/boot/dts/dm816x.dtsi | 4 +
> arch/arm/boot/dts/dra7-evm.dts | 6 +-
> arch/arm/boot/dts/dra7.dtsi | 4 +
> arch/arm/boot/dts/dra72-evm.dts | 6 +-
> arch/arm/boot/dts/logicpd-torpedo-som.dtsi | 7 +-
> arch/arm/boot/dts/omap3-beagle.dts | 2 +
> arch/arm/boot/dts/omap3-cm-t3x.dtsi | 5 +-
> arch/arm/boot/dts/omap3-devkit8000-common.dtsi | 3 +
> arch/arm/boot/dts/omap3-evm-37xx.dts | 7 +-
> arch/arm/boot/dts/omap3-gta04.dtsi | 3 +
> arch/arm/boot/dts/omap3-igep.dtsi | 5 +-
> arch/arm/boot/dts/omap3-igep0020-common.dtsi | 4 +-
> arch/arm/boot/dts/omap3-igep0030-common.dtsi | 4 +
> arch/arm/boot/dts/omap3-ldp.dts | 9 +-
> arch/arm/boot/dts/omap3-lilly-a83x.dtsi | 5 +-
> arch/arm/boot/dts/omap3-pandora-common.dtsi | 3 +
> arch/arm/boot/dts/omap3-tao3530.dtsi | 5 +-
> arch/arm/boot/dts/omap3.dtsi | 4 +
> arch/arm/boot/dts/omap3430-sdp.dts | 5 +-
> arch/arm/mach-omap2/gpmc-nand.c | 11 +-
> drivers/memory/omap-gpmc.c | 640 ++++++++++++---------
> drivers/mtd/nand/omap2.c | 261 ++++++---
> include/linux/omap-gpmc.h | 183 ++----
> include/linux/platform_data/gpmc-omap.h | 167 ++++++
> include/linux/platform_data/mtd-nand-omap2.h | 12 +-
> 36 files changed, 1045 insertions(+), 648 deletions(-)
> delete mode 100644 Documentation/devicetree/bindings/bus/ti-gpmc.txt
> create mode 100644 Documentation/devicetree/bindings/memory-controllers/omap-gpmc.txt
> create mode 100644 include/linux/platform_data/gpmc-omap.h
>
next prev parent reply other threads:[~2015-09-30 7:39 UTC|newest]
Thread overview: 79+ messages / expand[flat|nested] mbox.gz Atom feed top
2015-09-18 14:53 [PATCH v3 00/27] memory: omap-gpmc: mtd: nand: Support GPMC NAND on non-OMAP platforms Roger Quadros
2015-09-18 14:53 ` [PATCH v3 01/27] ARM: OMAP2+: gpmc: Add platform data Roger Quadros
2015-09-18 14:53 ` [PATCH v3 02/27] ARM: OMAP2+: gpmc: Add gpmc timings and settings to " Roger Quadros
2015-09-18 14:53 ` [PATCH v3 03/27] memory: omap-gpmc: Introduce GPMC to NAND interface Roger Quadros
2015-09-18 14:53 ` [PATCH v3 04/27] mtd: nand: omap2: Use gpmc_omap_get_nand_ops() to get NAND registers Roger Quadros
2015-12-03 5:00 ` Brian Norris
2015-09-18 14:53 ` [PATCH v3 05/27] memory: omap-gpmc: Add GPMC-NAND ops to get writebufferempty status Roger Quadros
2015-09-18 14:53 ` [PATCH v3 06/27] mtd: nand: omap2: Switch to using GPMC-NAND ops for writebuffer empty check Roger Quadros
2015-09-18 14:53 ` [PATCH v3 07/27] memory: omap-gpmc: Remove NAND IRQ code Roger Quadros
2015-09-18 14:53 ` [PATCH v3 08/27] memory: omap-gpmc: Add IRQ ops for GPMC-NAND interface Roger Quadros
2015-09-18 14:53 ` [PATCH v3 09/27] mtd: nand: omap2: manage NAND interrupts Roger Quadros
2015-09-18 14:53 ` [PATCH v3 10/27] mtd: nand: omap: Copy platform data parameters to omap_nand_info data Roger Quadros
2015-09-18 14:53 ` [PATCH v3 11/27] mtd: nand: omap: Clean up device tree support Roger Quadros
2015-10-06 10:35 ` [PATCH v4 " Roger Quadros
2015-12-03 4:29 ` Brian Norris
2015-12-03 5:57 ` Roger Quadros
2015-12-03 6:09 ` Brian Norris
2015-09-18 14:53 ` [PATCH v3 12/27] mtd: nand: omap: Update DT binding documentation Roger Quadros
2015-09-18 14:53 ` [PATCH v3 13/27] memory: omap-gpmc: Prevent mapping into 1st 16MB Roger Quadros
2015-09-18 14:53 ` [PATCH v3 14/27] memory: omap-gpmc: Move device tree binding to correct location Roger Quadros
2015-09-18 14:53 ` [PATCH v3 15/27] memory: omap-gpmc: Support general purpose input for WAITPINs Roger Quadros
2015-09-18 14:53 ` [PATCH v3 16/27] memory: omap-gpmc: Reserve WAITPIN if needed for WAIT monitoring Roger Quadros
2015-09-18 14:53 ` [PATCH v3 17/27] memory: omap-gpmc: Add irqchip support to the gpiochip Roger Quadros
2015-09-18 14:53 ` [PATCH v3 18/27] mtd: nand: omap2: Implement NAND ready using gpiolib Roger Quadros
2015-10-26 20:49 ` Brian Norris
2015-10-27 8:03 ` Roger Quadros
2015-10-27 8:12 ` Boris Brezillon
2015-10-27 8:43 ` Roger Quadros
2015-10-27 8:28 ` Boris Brezillon
2015-12-03 4:45 ` Brian Norris
2015-12-03 8:41 ` Boris Brezillon
2015-09-18 14:53 ` [PATCH v3 19/27] memory: omap-gpmc: Prevent GPMC_STATUS from being accessed via gpmc_regs Roger Quadros
2015-09-18 14:53 ` [PATCH v3 20/27] ARM: dts: dra7: Fix NAND device nodes Roger Quadros
2015-10-14 13:34 ` Franklin S Cooper Jr.
2015-10-14 14:17 ` Roger Quadros
2015-10-14 14:37 ` Franklin S Cooper Jr.
2015-09-18 14:53 ` [PATCH v3 21/27] ARM: dts: dra7x-evm: Provide NAND ready pin Roger Quadros
2015-09-18 14:53 ` [PATCH v3 22/27] ARM: dts: am437x: Fix NAND device nodes Roger Quadros
2015-09-18 14:53 ` [PATCH v3 23/27] ARM: dts: am437x-gp-evm: Provide NAND ready pin Roger Quadros
2015-09-18 14:53 ` [PATCH v3 24/27] ARM: dts: am335x: Fix NAND device nodes Roger Quadros
2015-09-18 14:53 ` [PATCH v3 25/27] ARM: dts: am335x: Provide NAND ready pin Roger Quadros
2015-09-18 14:53 ` [PATCH v3 26/27] ARM: dts: dm816x: Fix gpmc and NAND node Roger Quadros
2015-09-18 14:53 ` [PATCH v3 27/27] ARM: dts: omap3: Fix gpmc and NAND nodes Roger Quadros
2015-10-13 0:43 ` Tony Lindgren
2015-10-13 6:29 ` Roger Quadros
2015-10-13 15:18 ` Tony Lindgren
2015-10-14 7:39 ` Roger Quadros
2015-10-14 8:55 ` [PATCH v4 " Roger Quadros
2015-09-30 7:39 ` Roger Quadros [this message]
2015-09-30 11:00 ` [PATCH v3 00/27] memory: omap-gpmc: mtd: nand: Support GPMC NAND on non-OMAP platforms Roger Quadros
2015-10-06 8:33 ` Tony Lindgren
2015-10-06 9:54 ` Roger Quadros
2015-10-06 10:00 ` Tony Lindgren
2015-10-06 10:05 ` Roger Quadros
2015-10-06 10:28 ` Roger Quadros
2015-10-06 11:01 ` Tony Lindgren
2015-10-06 11:09 ` Roger Quadros
2015-10-16 21:25 ` Tony Lindgren
2015-10-19 7:08 ` Roger Quadros
2015-10-21 8:31 ` Roger Quadros
2015-10-21 15:20 ` Tony Lindgren
2015-10-23 7:09 ` Roger Quadros
2015-11-30 17:26 ` Tony Lindgren
2015-10-26 21:23 ` Brian Norris
2015-10-27 9:37 ` Roger Quadros
2015-11-25 10:42 ` Roger Quadros
2015-11-30 19:54 ` Brian Norris
2015-12-01 14:41 ` Roger Quadros
2015-12-02 3:26 ` Brian Norris
2015-12-02 5:12 ` Roger Quadros
2015-12-02 15:03 ` Tony Lindgren
2015-12-02 18:13 ` Brian Norris
2015-12-02 20:05 ` Tony Lindgren
2015-12-02 18:43 ` Brian Norris
2015-12-03 5:09 ` Brian Norris
2015-12-03 6:08 ` Roger Quadros
2015-12-03 6:22 ` Brian Norris
2015-12-03 9:01 ` Roger Quadros
2015-12-03 15:17 ` Tony Lindgren
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=560B9198.70103@ti.com \
--to=rogerq@ti.com \
--cc=computersforpeace@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=dwmw2@infradead.org \
--cc=ezequiel@vanguardiasur.com.ar \
--cc=fcooper@ti.com \
--cc=javier@dowhile0.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-omap@vger.kernel.org \
--cc=nsekhar@ti.com \
--cc=tony@atomide.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).