All of lore.kernel.org
 help / color / mirror / Atom feed
* [U-Boot] mtd: spi-nor: new NXP FlexSPI driver location & framework to use ?
@ 2018-05-11  5:38 Prabhakar Kushwaha
  2018-05-11  6:00 ` Jagan Teki
  0 siblings, 1 reply; 14+ messages in thread
From: Prabhakar Kushwaha @ 2018-05-11  5:38 UTC (permalink / raw)
  To: u-boot

Dear Jagan,

NXP is coming up with new FlexSPI controller. It is similar to existing QSPI with enhanced feature-set. 
We have the driver ready as per existing framework i.e. driver/spi.

From recend discussion, we go to know about framework change. Migration of qspi drivers in u-boot-spi/drivers/mtd/spi-nor/
git://git.denx.de/u-boot-spi.git branch mtd-spinor-working.

We are in dilemma for sending FlexSPI driver upstream. 
Do we follow existing framework i.e. driver/spi   or new proposed framework i.e. u-boot-spi/drivers/mtd/spi-nor/

Also, do we have any timeline of u-boot-spi/drivers/mtd/spi-nor/ to become default.
 
We have sent RFC version in Linux upstream for review.  Please refer below

Regards,
Prabhakar

-----Original Message-----
From: linux-mtd [mailto:linux-mtd-bounces at lists.infradead.org] On Behalf Of Yogesh Gaur
Sent: Wednesday, April 4, 2018 3:36 PM
To: linux-mtd at lists.infradead.org
Cc: boris.brezillon at free-electrons.com; Yogesh Narayan Gaur <yogeshnarayan.gaur@nxp.com>; marek.vasut at gmail.com; frieder.schrempf at exceet.de; Suresh Gupta <suresh.gupta@nxp.com>; cyrille.pitchen at wedev4u.fr; Han Xu <han.xu@nxp.com>; computersforpeace at gmail.com; festevam at gmail.com
Subject: [RFC PATCH 0/4] mtd: spi-nor: Add NXP FlexSPI driver

Add NXP FlexSPI driver

NXP uses FlexSPI controller.
The FlexSPI(Flex Serial Peripheral controller) acts as an interface to external serial flash devices, maximum 4, each with upto 8 bidirectional data lines.

(1) The FlexSPI controller is driven by the LUT(Look-up Table) registers.
 The LUT registers are a look-up-table for sequences of instructions.
 A valid sequence consists of four LUT registers.

(2) The definition of the LUT register shows below:
 ---------------------------------------------------
 | INSTR1 | PAD1 | OPRND1 | INSTR0 | PAD0 | OPRND0 |
 ---------------------------------------------------

 There are several types of INSTRx, such as:
 CMD     : the SPI NOR command.
 ADDR    : the address for the SPI NOR command.
 DUMMY   : the dummy cycles needed by the SPI NOR command.
 ....

 There are several types of PADx, such as:
 PAD1    : use single I/O line.
 PAD2    : use dual I/O lines.
 PAD4    : use quad I/O lines.
 PAD8    : use octal I/O lines.
 ....

(3) LUTs are being created at run-time based on the commands passed from  the spi-nor framework.

(4) Mode [single, dual, quad or octal] bit information derived from device  tree by parsing spi-rx-bus-width and spi-tx-bus-width property.

(5) Tested this driver with the mtd_debug utility on NXP LX2160  emulator platform.

This series added below patches:
- Added entry for mt35xu512aba NOR flash in spi_nor_ids table
- Add flags for Octal I/O data transfer in spi/spi.h
- Add binding file for NXP FlexSPI driver
- Add NXP FlexSPI driver in mtd interface

Yogesh Gaur (4):
  mtd: spi-nor: Add entry for mt35xu512aba flash
  spi: add flags for octal I/O data transfer
  dt-bindings: Add binding file for NXP FlexSPI driver
  mtd: spi-nor: Add NXP FlexSPI driver

 .../devicetree/bindings/mtd/nxp-flexspi.txt        |   40 +
 MAINTAINERS                                        |    7 +
 drivers/mtd/spi-nor/Kconfig                        |    7 +
 drivers/mtd/spi-nor/Makefile                       |    1 +
 drivers/mtd/spi-nor/nxp-flexspi.c                  | 1508 ++++++++++++++++++++
 drivers/mtd/spi-nor/spi-nor.c                      |    7 +-
 include/linux/mtd/cfi.h                            |    1 +
 include/linux/mtd/spi-nor.h                        |    1 +
 include/linux/spi/spi.h                            |    2 +
 9 files changed, 1573 insertions(+), 1 deletion(-)  create mode 100644 Documentation/devicetree/bindings/mtd/nxp-flexspi.txt
 create mode 100644 drivers/mtd/spi-nor/nxp-flexspi.c

--
1.9.1


______________________________________________________
Linux MTD discussion mailing list
https://emea01.safelinks.protection.outlook.com/?url=http%3A%2F%2Flists.infradead.org%2Fmailman%2Flistinfo%2Flinux-mtd%2F&data=02%7C01%7Cprabhakar.kushwaha%40nxp.com%7Cb557330f496845b8dfca08d59a13f8fb%7C686ea1d3bc2b4c6fa92cd99c5c301635%7C0%7C0%7C636584332936008995&sdata=4WB9Fl8nOebX6WirthlEtXC306vjv6Is0ovJc1wHIWU%3D&reserved=0

^ permalink raw reply	[flat|nested] 14+ messages in thread

end of thread, other threads:[~2018-05-24  3:11 UTC | newest]

Thread overview: 14+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2018-05-11  5:38 [U-Boot] mtd: spi-nor: new NXP FlexSPI driver location & framework to use ? Prabhakar Kushwaha
2018-05-11  6:00 ` Jagan Teki
2018-05-11 11:37   ` Prabhakar Kushwaha
2018-05-12  5:50   ` Boris Brezillon
2018-05-14  9:12   ` Ashish Kumar
2018-05-14  9:47     ` Jagan Teki
2018-05-14 13:24   ` Prabhakar Kushwaha
2018-05-17 11:19     ` Prabhakar Kushwaha
2018-05-18  4:54       ` Jagan Teki
2018-05-18  5:01         ` Prabhakar Kushwaha
2018-05-18  6:24           ` Jagan Teki
2018-05-18 10:16             ` Prabhakar Kushwaha
2018-05-21 15:05               ` Jagan Teki
2018-05-24  3:11                 ` Prabhakar Kushwaha

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.