Received: by 2002:ac0:a5a6:0:0:0:0:0 with SMTP id m35-v6csp2505707imm; Tue, 4 Sep 2018 05:44:52 -0700 (PDT) X-Google-Smtp-Source: ANB0VdY8RVuKfvapJFkgWMrpOHndYMbi4Vk9kGdm9xk32sbAcGcgcYsF8mmSlkr7In4Zi8edxBiT X-Received: by 2002:a17:902:b115:: with SMTP id q21-v6mr33779473plr.333.1536065092216; Tue, 04 Sep 2018 05:44:52 -0700 (PDT) ARC-Seal: i=1; a=rsa-sha256; t=1536065092; cv=none; d=google.com; s=arc-20160816; b=Qc2lFTCg+6dXc0RAgdjGnb4BAWxb1EgTaXWJSQnEOZC73vVAExWSYagpoTORJONDcT NtmzH39GSwHCyMrmkpC7KTJExJvR3ivSMu/mJCoot6QowhD0V2boSn+6vP2LyiXyIBZT i9VnhYZBPv8eBQMbgR6F3nwxhIjhKmDYkwAHDqin/CE9MZjnw33vGFkjPbESXrpHynKV TMmQ19u09ahO425Db3/BGHEWWWPuQj9gi/aPmlYw5NW4B8Nj+skxvehVazkSA6XwlQQ5 PsOAita6JAAGNSUlg1porZcbpZavYF/5uC6Ek734+N0SmJuseT0DEgNeUYD9d3aVJ8J8 9htw== ARC-Message-Signature: i=1; a=rsa-sha256; c=relaxed/relaxed; d=google.com; s=arc-20160816; h=list-id:precedence:sender:content-transfer-encoding:mime-version :references:in-reply-to:message-id:subject:cc:to:from:date :arc-authentication-results; bh=4YJlVImv0VZlAOFIuRLFbtb62NF6KHpfXTyaKeBdk6Y=; b=zUG9hILwUSsXejuTL0dK4jDVgp2IStW9YQZ6tWkijoXLBl/UO0GE7ZWvN1BTa+N2OM uIM2dmWR6Ik3VfUUtB9bamB28h1lZBUIViDymRbIm1PcKkUXypZonI5SWuqlnDnZteLz sJGI3d5wpxmWEzerXYF36OS2o/Eqm7bW5qhc/VwG7gHb5KGR0/7hNc7tgZvC9RFgjOIa S/VH/kcXXdqmNBM9p1WG0z8Lr/iBGA+7jLbgnxBPt6Hsycpm4ynohh/3saGxgJmb547a NgF8aRxlx+QqPECxZGg1Vtomwl2ACXr6ftEY/G9UKxIC+7BNfsu8NeUE4+GJE0JrzqXp lSnQ== ARC-Authentication-Results: i=1; mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Return-Path: Received: from vger.kernel.org (vger.kernel.org. [209.132.180.67]) by mx.google.com with ESMTP id z33-v6si21919470plb.323.2018.09.04.05.44.36; Tue, 04 Sep 2018 05:44:52 -0700 (PDT) Received-SPF: pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) client-ip=209.132.180.67; Authentication-Results: mx.google.com; spf=pass (google.com: best guess record for domain of linux-kernel-owner@vger.kernel.org designates 209.132.180.67 as permitted sender) smtp.mailfrom=linux-kernel-owner@vger.kernel.org Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1727093AbeIDRIa (ORCPT + 99 others); Tue, 4 Sep 2018 13:08:30 -0400 Received: from mail.bootlin.com ([62.4.15.54]:38902 "EHLO mail.bootlin.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1726157AbeIDRI3 (ORCPT ); Tue, 4 Sep 2018 13:08:29 -0400 Received: by mail.bootlin.com (Postfix, from userid 110) id AD62D207B4; Tue, 4 Sep 2018 14:43:30 +0200 (CEST) X-Spam-Checker-Version: SpamAssassin 3.4.0 (2014-02-07) on mail.bootlin.com X-Spam-Level: X-Spam-Status: No, score=-1.0 required=5.0 tests=ALL_TRUSTED,SHORTCIRCUIT, URIBL_BLOCKED shortcircuit=ham autolearn=disabled version=3.4.0 Received: from bbrezillon (AAubervilliers-681-1-92-107.w90-88.abo.wanadoo.fr [90.88.33.107]) by mail.bootlin.com (Postfix) with ESMTPSA id 4BD0C204AE; Tue, 4 Sep 2018 14:43:30 +0200 (CEST) Date: Tue, 4 Sep 2018 14:43:29 +0200 From: Boris Brezillon To: Yogesh Gaur Cc: linux-mtd@lists.infradead.org, marek.vasut@gmail.com, linux-spi@vger.kernel.org, devicetree@vger.kernel.org, robh@kernel.org, mark.rutland@arm.com, shawnguo@kernel.org, linux-arm-kernel@lists.infradead.org, computersforpeace@gmail.com, frieder.schrempf@exceet.de, linux-kernel@vger.kernel.org Subject: Re: [PATCH 0/7] spi: spi-mem: Add a driver for NXP FlexSPI controller Message-ID: <20180904144329.35cf27de@bbrezillon> In-Reply-To: <1535711404-29528-1-git-send-email-yogeshnarayan.gaur@nxp.com> References: <1535711404-29528-1-git-send-email-yogeshnarayan.gaur@nxp.com> X-Mailer: Claws Mail 3.15.0-dirty (GTK+ 2.24.31; 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 Precedence: bulk List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Hi Yogesh, On Fri, 31 Aug 2018 15:59:57 +0530 Yogesh Gaur wrote: > - Add a driver for NXP FlexSPI host controller > > FlexSPI is a flexsible SPI host controller [1], Chapter 30 page 1475, > which supports two SPI channels and up to 4 external devices. > Each channel supports Single/Dual/Quad/Octal mode data transfer (1/2/4/8 bidirectional data lines) > i.e. FlexSPI acts as an interface to external devices, maximum 4, each with up to 8 > bidirectional data lines. > > FlexSPI controller is similar to the existing Freescale/NXP QuadSPI > controller with advanced features. > > - Tested this driver with mtd_debug(Erase/Write/Read) utility and JFFS2 > filesystem mounting and booting on NXP LX2160ARDB[2] and LX2160AQDS targets. > LX2160ARDB is having two NOR slave device connected on single bus A > i.e. A0 and A1 (CS0 and CS1). > LX2160AQDS is having two NOR slave device connected on separate buses > one flash on A0 and second on B1 i.e. (CS0 and CS3). > Verified this driver on following SPI NOR flashes: > Micron, mt35xu512aba[3], [Read - 1 bit mode] > Cypress, s25fl512s, [Read - 1/2/4 bit mode] > > Patch 1 adds variable size in spi_device struct, to save the > size of connected slave device. > Patch 2 adds flags for octal I/O data transfer. > Support for octal flash commands and other framework changes would going to be done in different > patch set. > Patch 3 adds a driver for the NXP FlexSPI controller, driver is based on > new spi-mem framework. Can we please omit octa mode support for now and focus on single/dual/quad SPI support? That is, drop patch 2, and do not set the OCTAL flags in patch 3. Regards, Boris > Patch 4 add binding file for this driver. > Patch 5 add device node property for FlexSPI driver for lx2160 SoC. > Patch 6 enables the config option. > Patch 7 add MAINTAINERS file. > > [1] https://www.nxp.com/docs/en/reference-manual/IMXRT1050RM.pdf > [2] https://patchwork.kernel.org/project/linux-arm-kernel/list/?series=9721 > [3] https://patchwork.ozlabs.org/project/linux-mtd/list/?series=63445 > > This series adds below patches: > Yogesh Gaur (7): > spi: add slave device size in spi_device struct > spi: add flags for octal I/O data transfer > spi: spi-mem: Add a driver for NXP FlexSPI controller > dt-bindings: spi: add binding file for NXP FlexSPI driver > arm64: dts: lx2160a: add fspi node property > arm64: defconfig: enable NXP FlexSPI driver > MAINTAINERS: add maintainers for the NXP FlexSPI driver > > .../devicetree/bindings/spi/spi-nxp-fspi.txt | 42 + > MAINTAINERS | 6 + > arch/arm64/boot/dts/freescale/fsl-lx2160a-rdb.dts | 21 + > arch/arm64/boot/dts/freescale/fsl-lx2160a.dtsi | 12 + > arch/arm64/configs/defconfig | 1 + > drivers/mtd/devices/m25p80.c | 6 + > drivers/mtd/spi-nor/spi-nor.c | 2 + > drivers/spi/Kconfig | 10 + > drivers/spi/Makefile | 1 + > drivers/spi/spi-nxp-fspi.c | 1242 ++++++++++++++++++++ > include/linux/spi/spi.h | 4 + > 11 files changed, 1347 insertions(+) > create mode 100644 Documentation/devicetree/bindings/spi/spi-nxp-fspi.txt > create mode 100644 drivers/spi/spi-nxp-fspi.c >