From: sourav <sourav.poddar@ti.com>
To: Jagan Teki <jagannadh.teki@gmail.com>
Cc: angus.clark@st.com, Brian Norris <computersforpeace@gmail.com>,
b44548@freescale.com, Mark Brown <broonie@linaro.org>,
Lee Jones <lee.jones@linaro.org>,
linux-doc@vger.kernel.org, b18965@freescale.com,
linux-spi@vger.kernel.org, Huang Shijie <b32955@freescale.com>,
devicetree@vger.kernel.org, linux-mtd@lists.infradead.org,
"Gupta, Pekon" <pekon@ti.com>, Shawn Guo <shawn.guo@linaro.org>,
David Woodhouse <dwmw2@infradead.org>,
"linux-arm-kernel@lists.infradead.org"
<linux-arm-kernel@lists.infradead.org>
Subject: Re: [PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR
Date: Fri, 17 Jan 2014 12:47:32 +0530 [thread overview]
Message-ID: <52D8D90C.80009@ti.com> (raw)
In-Reply-To: <CAD6G_RR7vgmHGFj4GqwCYLQQO6tbsZAeCzVBivbcxnCGSwgiWQ@mail.gmail.com>
On Friday 17 January 2014 12:36 PM, Jagan Teki wrote:
> On Fri, Jan 17, 2014 at 7:32 AM, Huang Shijie<b32955@freescale.com> wrote:
>> 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.
> Yes - now I understand the flow from seeing the code.
> With your new framework
> 1. not an exact spi-nor
> have one controller driver at drivers/spi/* will register to spi core.
> have m25p80.c will scan the flash details from
> drivers/mtd/spi-nor/spi-nor.c and
> m25p80 will register the MTD core and for transfer calls m25p80
> will calls spi core.
> 2. spi-nor style
> have one controller driver at drivers/mtd/spi-nor/fsl-quadspi.c
> will register MTD core
> and scan the flash details from drivers/mtd/spi-nor/spi-nor.c and
> for transfer will calls
> through direct writel and readl with cmd+data fashion.
>
> Correct me If my understanding was wrong.
>>>>> 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.
> Means we have two separate controller drivers for same controller one
> with spi-nor and
> another with spi is it?
>
> Do you think this is a good idea, I understand you have a complete and
> well guided new
> spi-nor framework.
>
I dont think its a good idea to support a single controller with two
drivers for two different usecase.
WARNING: multiple messages have this Message-ID (diff)
From: sourav.poddar@ti.com (sourav)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR
Date: Fri, 17 Jan 2014 12:47:32 +0530 [thread overview]
Message-ID: <52D8D90C.80009@ti.com> (raw)
In-Reply-To: <CAD6G_RR7vgmHGFj4GqwCYLQQO6tbsZAeCzVBivbcxnCGSwgiWQ@mail.gmail.com>
On Friday 17 January 2014 12:36 PM, Jagan Teki wrote:
> On Fri, Jan 17, 2014 at 7:32 AM, Huang Shijie<b32955@freescale.com> wrote:
>> 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.
> Yes - now I understand the flow from seeing the code.
> With your new framework
> 1. not an exact spi-nor
> have one controller driver at drivers/spi/* will register to spi core.
> have m25p80.c will scan the flash details from
> drivers/mtd/spi-nor/spi-nor.c and
> m25p80 will register the MTD core and for transfer calls m25p80
> will calls spi core.
> 2. spi-nor style
> have one controller driver at drivers/mtd/spi-nor/fsl-quadspi.c
> will register MTD core
> and scan the flash details from drivers/mtd/spi-nor/spi-nor.c and
> for transfer will calls
> through direct writel and readl with cmd+data fashion.
>
> Correct me If my understanding was wrong.
>>>>> 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.
> Means we have two separate controller drivers for same controller one
> with spi-nor and
> another with spi is it?
>
> Do you think this is a good idea, I understand you have a complete and
> well guided new
> spi-nor framework.
>
I dont think its a good idea to support a single controller with two
drivers for two different usecase.
next prev parent reply other threads:[~2014-01-17 7:17 UTC|newest]
Thread overview: 77+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-25 5:50 [PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` [PATCH v4 1/7] mtd: spi-nor: copy the SPI NOR commands to a new header file Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` [PATCH v4 2/7] mtd: spi-nor: add the basic data structures Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` [PATCH v4 3/7] mtd: spi-nor: add the framework for SPI NOR Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` [PATCH v4 4/7] mtd: m25p80: use the SPI nor framework Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` [PATCH v4 5/7] mtd: spi-nor: add a helper to find the spi_device_id Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` [PATCH v4 6/7] Documentation: add the binding file for Freescale QuadSPI driver Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` [PATCH v4 7/7] mtd: spi-nor: Add " Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2013-12-25 5:50 ` Huang Shijie
2014-01-15 19:15 ` [PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR Jagan Teki
2014-01-15 19:15 ` Jagan Teki
2014-01-15 19:15 ` Jagan Teki
2014-01-16 9:11 ` Huang Shijie
2014-01-16 9:11 ` Huang Shijie
2014-01-16 9:11 ` Huang Shijie
2014-01-16 9:11 ` Huang Shijie
2014-01-16 9:39 ` Jagan Teki
2014-01-16 9:39 ` Jagan Teki
2014-01-16 9:39 ` Jagan Teki
2014-01-17 2:02 ` Huang Shijie
2014-01-17 2:02 ` Huang Shijie
2014-01-17 2:02 ` Huang Shijie
2014-01-17 2:02 ` Huang Shijie
2014-01-17 7:06 ` Jagan Teki
2014-01-17 7:06 ` Jagan Teki
2014-01-17 7:06 ` Jagan Teki
2014-01-17 6:54 ` Huang Shijie
2014-01-17 6:54 ` Huang Shijie
2014-01-17 6:54 ` Huang Shijie
2014-01-17 6:54 ` Huang Shijie
2014-01-17 8:39 ` Jagan Teki
2014-01-17 8:39 ` Jagan Teki
2014-01-17 8:39 ` Jagan Teki
2014-01-17 17:06 ` Jagan Teki
2014-01-17 17:06 ` Jagan Teki
2014-01-17 17:06 ` Jagan Teki
2014-01-17 17:40 ` Gupta, Pekon
2014-01-17 17:40 ` Gupta, Pekon
2014-01-17 17:40 ` Gupta, Pekon
2014-01-19 2:44 ` Huang Shijie
2014-01-19 2:44 ` Huang Shijie
2014-01-19 2:44 ` Huang Shijie
2014-01-19 2:28 ` Huang Shijie
2014-01-19 2:28 ` Huang Shijie
2014-01-19 2:28 ` Huang Shijie
2014-01-19 10:09 ` Jagan Teki
2014-01-19 10:09 ` Jagan Teki
2014-01-19 10:09 ` Jagan Teki
2014-01-21 2:29 ` Huang Shijie
2014-01-21 2:29 ` Huang Shijie
2014-01-21 2:29 ` Huang Shijie
2014-01-21 2:29 ` Huang Shijie
2014-01-17 7:17 ` sourav [this message]
2014-01-17 7:17 ` sourav
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=52D8D90C.80009@ti.com \
--to=sourav.poddar@ti.com \
--cc=angus.clark@st.com \
--cc=b18965@freescale.com \
--cc=b32955@freescale.com \
--cc=b44548@freescale.com \
--cc=broonie@linaro.org \
--cc=computersforpeace@gmail.com \
--cc=devicetree@vger.kernel.org \
--cc=dwmw2@infradead.org \
--cc=jagannadh.teki@gmail.com \
--cc=lee.jones@linaro.org \
--cc=linux-arm-kernel@lists.infradead.org \
--cc=linux-doc@vger.kernel.org \
--cc=linux-mtd@lists.infradead.org \
--cc=linux-spi@vger.kernel.org \
--cc=pekon@ti.com \
--cc=shawn.guo@linaro.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.