mtd: spi-nor: add a new framework for SPI NOR
Get series with b4
b4 am [email protected]Versions newest first · linked by author and title
- v4 Latest0 of 7 patches 0 repliesNew
- v21 of 4 patches 0 repliesSuperseded
Patches in v4 No applies recorded yet
None of the 7 patches the cover letter announces are in this archive.
Reviews trailers per patch
No Reviewed-by, Acked-by or Tested-by trailers for v4 yet.
Cover letter [PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR
? 2014?01?17? 16:39, Jagan Teki ??:
Quoted 19 lines · Huang Shijie
Quoted 18 lines · Jagan Teki
Quoted 7 lines
Quoted 7 lines
Quoted 2 lines
My basic question is like I have a qspi spi controller in my SOC and I designed two boards B1 and B2
okay.
Quoted 3 lines
B1 with quad spi controller connected with non-flash as a slave and B2 with quad spi controller connected
with quad flash as a slave.Quoted 6 lines
Quoted 3 lines
You can use the framework for B2. But for B1, you should not use the framework, since this framework is just for the SPI-NOR. If you do not connected with a NOR, i think it's better to code another driver for your controller.
Means we have two separate controller drivers for same controller one with spi-nor and
another with spi is it?Take
drivers/spi/spi-imx.cfor example, if you connect a NOR to it, you only need to add a NOR device node in the device tree. In the probe, it will call them25p80.cto probe the NOR device.
Quoted 6 lines
Quoted 3 lines
But if we connect other device to it. you should set another device node for it.
I am not sure if your controller driver can works as the
spi-imx.cMy question here was - this new framework suggest to write a two different controller
drivers one is for non spi-nor and spi-nor models? do you agree that?
If your controller can either connects to a NOR, or can connects to other devices, it means your controller is a _BUS_.
You just need to write the bus driver for your controller, such as the spi-imx.c and drivers/bus/imx-weim.c do.
Since you have connect a device to your controller. you also need to write a driver for your device, such as the m25p80.c is for your spi nor device.
Just think about that how do you code your driver for SPI NOR _without_ this framework:
do your driver need to call the m25p80.c? if you do call the m25p80.c, you actually write your so-called "two drivers" :)
This framework does not change any logic for the current kernel, except adding a layer. With the new layer, we can code the
driver for the controllers which is a SPI-NOR controller, not a SPI bus controller.
Quoted 5 lines
And also one important note from your design was spi-nor mode is completely bypassing
Linux spi core is that the good idea?
yes. I think it's a good idea.
As Mark even pointed, the freescale's Quadspi controller is not a SPI controller, it is a SPI-NOR controller, it does _not_ need the LINUX SPI core.
thanks
Huang Shijie