RE: [PATCH v2 1/5] spi: spi-mem: Add driver for NXP FlexSPI controller
From: Yogesh Narayan Gaur <hidden>
Date: 2018-09-18 08:28:44
Also in:
linux-arm-kernel, linux-spi, lkml
Hi Frieder,
-----Original Message----- From: Frieder Schrempf [mailto:frieder.schrempf@exceet.de] Sent: Tuesday, September 18, 2018 1:52 PM To: Boris Brezillon <redacted>; Yogesh Narayan Gaur [off-list ref] 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; linux- kernel@vger.kernel.org Subject: Re: [PATCH v2 1/5] spi: spi-mem: Add driver for NXP FlexSPI controller Hi Boris, Yogesh, On 17.09.2018 13:37, Boris Brezillon wrote:quoted
Hi Yogesh, On Mon, 17 Sep 2018 15:18:26 +0530 Yogesh Gaur [off-list ref] wrote:quoted
+ + /* + * R/W functions for big- or little-endian registers: + * The FSPI controller's endianness is independent of + * the CPU core's endianness. So far, although the CPU + * core is little-endian the FSPI controller can use + * big-endian or little-endian. + */ + if (of_property_read_bool(np, "big-endian")) { + f->write = fspi_writel_be; + f->read = fspi_readl_be; + } else { + f->write = fspi_writel; + f->read = fspi_readl; + }Hm, isn't it something you can extract from the compatible string? I'd rather not allow users to set that in their DT if it's not something you can change.This was copied from the QSPI driver, but I think Boris is right. This seems to be a fixed SOC-specific setting and we shouldn't set it in the DT. This applies to QSPI and FSPI alike.
Yes, it can be modified. Instead of reading endianness property from device tree can be moved to the platform structure nxp_fspi_devtype_data which is linked with the compatible string
{ .compatible = "nxp,lx2160a-fspi", .data = (void *)&lx2160a_data, }
Thanks.
Would send the changes in next version.
--
Regards,
Yogesh Gaur.
Regards, Friederquoted
Regards, Boris