Re: [PATCH v3 3/4] spi: fspi: add support for imx8ulp

Frank Li
2024-09-05T15:04:14Z

On Thu, Sep 05, 2024 at 05:43:37PM +0800, haibo.chen@nxp.com wrote:
> From: Haibo Chen <haibo.chen@nxp.com>
>
> The flexspi on imx8ulp only has 16 LUTs, different with others which
> have up to 32 LUTs.
>
> Add a separate compatible string and nxp_fspi_devtype_data to support
> flexspi on imx8ulp.
>
> Fixes: ef89fd56bdfc ("arm64: dts: imx8ulp: add flexspi node")
> Cc: stable@kernel.org
> Signed-off-by: Haibo Chen <haibo.chen@nxp.com>

Reviewed-by: Frank Li <Frank.Li@nxp.com>

> ---
> drivers/spi/spi-nxp-fspi.c | 10 ++++++++++
> 1 file changed, 10 insertions(+)
>
> diff --git a/drivers/spi/spi-nxp-fspi.c b/drivers/spi/spi-nxp-fspi.c
> index f42c14d80289..69e427b1903b 100644
> --- a/drivers/spi/spi-nxp-fspi.c
> +++ b/drivers/spi/spi-nxp-fspi.c
> @@ -371,6 +371,15 @@ static struct nxp_fspi_devtype_data imx8dxl_data = {
> .little_endian = true, /* little-endian */
> };
>
> +static struct nxp_fspi_devtype_data imx8ulp_data = {
> + .rxfifo = SZ_512, /* (64 * 64 bits) */
> + .txfifo = SZ_1K, /* (128 * 64 bits) */
> + .ahb_buf_size = SZ_2K, /* (256 * 64 bits) */
> + .quirks = 0,
> + .lut_num = 16,
> + .little_endian = true, /* little-endian */
> +};
> +
> struct nxp_fspi {
> void __iomem *iobase;
> void __iomem *ahb_addr;
> @@ -1295,6 +1304,7 @@ static const struct of_device_id nxp_fspi_dt_ids[] = {
> { .compatible = "nxp,imx8mp-fspi", .data = (void *)&imx8mm_data, },
> { .compatible = "nxp,imx8qxp-fspi", .data = (void *)&imx8qxp_data, },
> { .compatible = "nxp,imx8dxl-fspi", .data = (void *)&imx8dxl_data, },
> + { .compatible = "nxp,imx8ulp-fspi", .data = (void *)&imx8ulp_data, },
> { /* sentinel */ }
> };
> MODULE_DEVICE_TABLE(of, nxp_fspi_dt_ids);
> --
> 2.34.1
>