[PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR
Huang Shijie
b32955 at freescale.com
Thu Jan 16 21:02:28 EST 2014
On Thu, Jan 16, 2014 at 03:09:13PM +0530, Jagan Teki wrote:
> >>> After this patch, the layer is like:
> >>> MTD
> >>> ------------------------
> >>> spi-nor
> >>> ------------------------
> >>> m25p80
> >>> ------------------------
> >>> spi bus driver
> >>> ------------------------
> >>> SPI NOR chip
>
> Just for looking on your new framework, is that above link correct.
> I guess it should be MTD -- m25p80 -- spi-nor -- spi bus driver -- SPI NOR chip
I do not think so.
The spi-nor layer does not contact with the spi bus driver directly.
> >> 3) Can you explain your framework precisely take an example of like
> >> spi_controller_A with spi_flash_A
> >> and qspi_controller_B and qspi_flash_B - how will this new framework
> >> operates.
> >>
> > The framework is just cloned from the m25p80.c, and extract the common code,
> > and provides more
> > hooks such as
> >
> > @prepare/unpreare: used to do some work before or after the
> > read/write/erase/lock/unlock.
> > @read_xfer/write_xfer: We can use these two hooks to code all
> > the following hooks if the driver tries to implement them
> > by itself.
> > @read_reg: used to read the registers, such as read status register,
> > read configure register.
> > @write_reg: used to write the registers, such as write enable,
> > erase sector.
> > @read_id: read out the ID info.
> > @wait_till_ready: wait till the NOR becomes ready.
> > @read: read out the data from the NOR.
> > @write: write data to the NOR.
> > @erase: erase a sector of the NOR.
> >
>
> My basic question is like I have a qspi spi controller in my SOC and I
> designed two boards B1 and B2
okay.
> 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.
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.
thanks
Huang Shijie
More information about the linux-arm-kernel
mailing list