Is there any support for MTD QSPI in Linux?
4.1.13 version of kernel doesn't allow to use MTD partitions.
I read the kernel driver and found this list on latest kernel version:
./drivers/mtd/spi-nor/fsl-quadspi.c Linux < 5.1
or
./drivers/spi/spi-fsl-qspi.c Linux > 5.1
static const struct of_device_id fsl_qspi_dt_ids[] = {
{ .compatible = "fsl,vf610-qspi", .data = (void *)&vybrid_data, },
{ .compatible = "fsl,imx6sx-qspi", .data = (void *)&imx6sx_data, },
{ .compatible = "fsl,imx7d-qspi", .data = (void *)&imx7d_data, },
{ .compatible = "fsl,imx6ul-qspi", .data = (void *)&imx6ul_data, },
{ .compatible = "fsl,ls1021a-qspi", .data = (void *)&ls1021a_data, },
{ .compatible = "fsl,ls2080a-qspi", .data = (void *)&ls2080a_data, },
{ /* sentinel */ }
};
Does this mean that fsl-ls1043 is not supported?
Thanks,
Pablo
See the Chapter 30 of the LS1043a Reference Manual:
https://www.nxp.com/webapp/Download?colCode=LS1043ARM
This document shows that LS1043a supports QSPI.
Use the following command for kernel menu under LSDK-1903:
flex-builder -c linux:custom -a arm64 -m ls1043ardb
or
flex-builder -c linux:custom -a arm64 -m ls1043aqds
Use the following sequence for enabling QSPI in this kernel menu:
Device Drivers --->
<*> Memory Technology Device (MTD) support --->
<*> SPI-NOR device support --->
<*> Freescale Quad SPI controller
The LS1043A QuardSPI controller is the same as LS1021a QuardSPI controller.
Have a great day,
Pavel Chubakov
-------------------------------------------------------------------------------
Note:
- If this post answers your question, please click the "Mark Correct" button. Thank you!
- We are following threads for 7 weeks after the last post, later replies are ignored
Please open a new thread and refer to the closed one, if you have a related question at a later point in time.
-------------------------------------------------------------------------------
Also, I found that adding a map like file linux/ts5500_flash.c at master · torvalds/linux · GitHub
makes the MTD work as expected