RE: [PATCH v6 3/9] spi: Add a driver for the Freescale/NXP QuadSPI controller

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 




> -----Original Message-----
> From: Schrempf Frieder <frieder.schrempf@xxxxxxxxxx>
> Sent: Thursday, November 29, 2018 5:54 AM
> To: Yogesh Narayan Gaur <yogeshnarayan.gaur@xxxxxxx>; linux-
> mtd@xxxxxxxxxxxxxxxxxxx; boris.brezillon@xxxxxxxxxxx; linux-
> spi@xxxxxxxxxxxxxxx; Marek Vasut <marek.vasut@xxxxxxxxx>; Mark Brown
> <broonie@xxxxxxxxxx>; Han Xu <han.xu@xxxxxxx>
> Cc: dwmw2@xxxxxxxxxxxxx; computersforpeace@xxxxxxxxx;
> richard@xxxxxx; miquel.raynal@xxxxxxxxxxx; David Wolfe
> <david.wolfe@xxxxxxx>; Fabio Estevam <fabio.estevam@xxxxxxx>;
> Prabhakar Kushwaha <prabhakar.kushwaha@xxxxxxx>;
> shawnguo@xxxxxxxxxx; linux-kernel@xxxxxxxxxxxxxxx
> Subject: Re: [PATCH v6 3/9] spi: Add a driver for the Freescale/NXP QuadSPI
> controller
> 
> Hi Yogesh,
> 
> On 29.11.18 12:38, Yogesh Narayan Gaur wrote:
> > Hi Frieder,
> >
> >> -----Original Message-----
> >> From: Schrempf Frieder [mailto:frieder.schrempf@xxxxxxxxxx]
> >> Sent: Wednesday, November 28, 2018 1:58 PM
> >> To: linux-mtd@xxxxxxxxxxxxxxxxxxx; boris.brezillon@xxxxxxxxxxx;
> >> linux- spi@xxxxxxxxxxxxxxx; Marek Vasut <marek.vasut@xxxxxxxxx>;
> Mark
> >> Brown <broonie@xxxxxxxxxx>; Han Xu <han.xu@xxxxxxx>
> >> Cc: dwmw2@xxxxxxxxxxxxx; computersforpeace@xxxxxxxxx;
> richard@xxxxxx;
> >> miquel.raynal@xxxxxxxxxxx; David Wolfe <david.wolfe@xxxxxxx>; Fabio
> >> Estevam <fabio.estevam@xxxxxxx>; Prabhakar Kushwaha
> >> <prabhakar.kushwaha@xxxxxxx>; Yogesh Narayan Gaur
> >> <yogeshnarayan.gaur@xxxxxxx>; shawnguo@xxxxxxxxxx; linux-
> >> kernel@xxxxxxxxxxxxxxx
> >> Subject: Re: [PATCH v6 3/9] spi: Add a driver for the Freescale/NXP
> >> QuadSPI controller
> >>
> >> On 27.11.18 11:24, Schrempf Frieder wrote:
> >>> This driver is derived from the SPI NOR driver at
> >>> mtd/spi-nor/fsl-quadspi.c. It uses the new SPI memory interface of
> >>> the SPI framework to issue flash memory operations to up to four
> >>> connected flash chips (2 buses with 2 CS each).
> >>>
> >>> The controller does not support generic SPI messages.
> >>>
> >>> This patch also disables the build of the "old" driver and reuses
> >>> its Kconfig option CONFIG_SPI_FSL_QUADSPI to replace it.
> >>>
> >>> Signed-off-by: Frieder Schrempf <frieder.schrempf@xxxxxxxxxx>
> >>> ---
> >>>    drivers/mtd/spi-nor/Kconfig  |   9 -
> >>>    drivers/mtd/spi-nor/Makefile |   1 -
> >>>    drivers/spi/Kconfig          |  11 +
> >>>    drivers/spi/Makefile         |   1 +
> >>>    drivers/spi/spi-fsl-qspi.c   | 967
> >> ++++++++++++++++++++++++++++++++++++++
> >>>    5 files changed, 979 insertions(+), 10 deletions(-)
> >>>
> >>> diff --git a/drivers/mtd/spi-nor/Kconfig
> >>> b/drivers/mtd/spi-nor/Kconfig index 6cc9c92..d1ca307 100644
> >>> --- a/drivers/mtd/spi-nor/Kconfig
> >>> +++ b/drivers/mtd/spi-nor/Kconfig
> >>> @@ -59,15 +59,6 @@ config SPI_CADENCE_QUADSPI
> >>>    	  device with a Cadence QSPI controller and want to access the
> >>>    	  Flash as an MTD device.
> >>>
> >>> -config SPI_FSL_QUADSPI
> >>> -	tristate "Freescale Quad SPI controller"
> >>> -	depends on ARCH_MXC || SOC_LS1021A || ARCH_LAYERSCAPE ||
> >> COMPILE_TEST
> >>> -	depends on HAS_IOMEM
> >>> -	help
> >>> -	  This enables support for the Quad SPI controller in master mode.
> >>> -	  This controller does not support generic SPI. It only supports
> >>> -	  SPI NOR.
> >>> -
> >>>    config SPI_HISI_SFC
> >>>    	tristate "Hisilicon SPI-NOR Flash Controller(SFC)"
> >>>    	depends on ARCH_HISI || COMPILE_TEST diff --git
> >>> a/drivers/mtd/spi-nor/Makefile b/drivers/mtd/spi-nor/Makefile index
> >>> f4c61d2..3f160c2e3 100644
> >>> --- a/drivers/mtd/spi-nor/Makefile
> >>> +++ b/drivers/mtd/spi-nor/Makefile
> >>> @@ -3,7 +3,6 @@ obj-$(CONFIG_MTD_SPI_NOR)	+= spi-nor.o
> >>>    obj-$(CONFIG_SPI_ASPEED_SMC)	+= aspeed-smc.o
> >>>    obj-$(CONFIG_SPI_ATMEL_QUADSPI)	+= atmel-quadspi.o
> >>>    obj-$(CONFIG_SPI_CADENCE_QUADSPI)	+= cadence-quadspi.o
> >>> -obj-$(CONFIG_SPI_FSL_QUADSPI)	+= fsl-quadspi.o
> >>>    obj-$(CONFIG_SPI_HISI_SFC)	+= hisi-sfc.o
> >>>    obj-$(CONFIG_MTD_MT81xx_NOR)    += mtk-quadspi.o
> >>>    obj-$(CONFIG_SPI_NXP_SPIFI)	+= nxp-spifi.o
> >>> diff --git a/drivers/spi/Kconfig b/drivers/spi/Kconfig index
> >>> 7d3a5c9..8c84186 100644
> >>> --- a/drivers/spi/Kconfig
> >>> +++ b/drivers/spi/Kconfig
> >>> @@ -259,6 +259,17 @@ config SPI_FSL_LPSPI
> >>>    	help
> >>>    	  This enables Freescale i.MX LPSPI controllers in master mode.
> >>>
> >>> +config SPI_FSL_QUADSPI
> >>> +	tristate "Freescale QSPI controller"
> >>> +	depends on ARCH_MXC || SOC_LS1021A || ARCH_LAYERSCAPE ||
> >> COMPILE_TEST
> >>> +	depends on HAS_IOMEM
> >>> +	help
> >>> +	  This enables support for the Quad SPI controller in master mode.
> >>> +	  Up to four flash chips can be connected on two buses with two
> >>> +	  chipselects each.
> >>> +	  This controller does not support generic SPI messages. It only
> >>> +	  supports the high-level SPI memory interface.
> >>> +
> > [...]
> >>> +static void fsl_qspi_select_mem(struct fsl_qspi *q, struct
> >>> +spi_device *spi) {
> >>> +	unsigned long rate = spi->max_speed_hz;
> >>> +	int ret, i;
> >>> +	u32 map_addr;
> >>
> >> Forgot to drop some unused vars here. I will remove them in the next
> >> version.
> >>
> >
> > Yes, below are the build warnings messages coming for this version of the
> patch.
> >
> > 	drivers/spi/spi-fsl-qspi.c: In function ‘fsl_qspi_select_mem’:
> > 	drivers/spi/spi-fsl-qspi.c:500:6: warning: unused variable ‘map_addr’
> [-Wunused-variable]
> > 	  u32 map_addr;
> > 	      ^
> > 	drivers/spi/spi-fsl-qspi.c:499:11: warning: unused variable ‘i’ [-
> Wunused-variable]
> > 	  int ret, i;
> >
> >>> +
> >>> +	if (q->selected == spi->chip_select)
> > [...]
> >
> > Verified this patch series on LayerScape-2.x architecture boards.
> > LS1088ardb, is having two connected flash slave devices on CS0 and CS1.
> >
> > Verified with simple Read/Write/Erase operations along with JFFS2
> mounting and booting from flash MTD partition for both slave devices.
> 
> Thank you for testing! Does this mean I can add your Tested-by tag?
> If you have done a review of any of the patches in this set, please also add a
> Reviewed-by tag.

Hi Schrempf, I am reviewing and testing on some i.MX platforms, please hold on for a while for the result.

> 
> Thanks,
> Frieder




[Index of Archives]     [Linux Kernel]     [Linux ARM (vger)]     [Linux ARM MSM]     [Linux Omap]     [Linux Arm]     [Linux Tegra]     [Fedora ARM]     [Linux for Samsung SOC]     [eCos]     [Linux Fastboot]     [Gcc Help]     [Git]     [DCCP]     [IETF Announce]     [Security]     [Linux MIPS]     [Yosemite Campsites]

  Powered by Linux