From: Sourav Poddar <sourav.poddar@ti.com>
To: Huang Shijie <b32955@freescale.com>
Cc: marex@denx.de, angus.clark@st.com, shawn.guo@linaro.org,
b44548@freescale.com, broonie@linaro.org, dwmw2@infradead.org,
linux-doc@vger.kernel.org, b18965@freescale.com,
linux-spi@vger.kernel.org, linux-mtd@lists.infradead.org,
pekon@ti.com, computersforpeace@gmail.com, lee.jones@linaro.org,
linux-arm-kernel@lists.infradead.org
Subject: Re: [PATCH v3 3/7] mtd: spi-nor: add the framework for SPI NOR
Date: Tue, 17 Dec 2013 10:49:51 +0530 [thread overview]
Message-ID: <52AFDEF7.2080604@ti.com> (raw)
In-Reply-To: <20131217025646.GD12575@shlinux2.ap.freescale.net>
On Tuesday 17 December 2013 08:26 AM, Huang Shijie wrote:
> On Tue, Dec 17, 2013 at 12:11:58AM +0530, Sourav Poddar wrote:
>>> +static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
>>> + size_t *retlen, u_char *buf)
>>> +{
>>> + struct spi_nor *nor = mtd_to_spi_nor(mtd);
>>> + int ret;
>>> +
>>> + dev_dbg(nor->dev, "from 0x%08x, len %zd\n", (u32)from, len);
>>> +
>>> + ret = spi_nor_lock_and_prep(nor, SPI_NOR_OPS_READ);
>>> + if (ret)
>>> + return ret;
>>> +
>>> + /* Wait till previous write/erase is done. */
>>> + ret = wait_till_ready(nor);
>>> + if (ret)
>>> + goto read_err;
>>> +
>> Can you shift "wait_till_ready" above spi_nor_lock_and_prep?
>> One usecase for asking for above change is that I am planning to
>> use this _prep api for switching to memory mapped mode for read and once
>> I am switched to mmap mode, read_sr calls in wait_till_ready will not
>> work for me.
>>
> you can implement your own wait_till_ready here.
I think no point doing this, since it does the same function for me.
> Only we have grabbed the lock, then we can do the transactions with the NOR.
>
> We can not call the wait_till_ready before we grab the lock, it is wrong.
>
>
> If you really can not implement your own wait_till_ready, the final solution
> is removing the wait_till_ready in this function, and add the wait_till_ready
> in the nor->read() hook.
>
Yes, this can be done. So, that if you want to do memcpy do it before this
condition is hit.
> thanks
> Huang Shijie
>
>
WARNING: multiple messages have this Message-ID (diff)
From: Sourav Poddar <sourav.poddar-l0cyMroinI0@public.gmane.org>
To: Huang Shijie <b32955-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
Cc: <dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>,
<computersforpeace-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
<angus.clark-qxv4g6HH51o@public.gmane.org>,
<lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
<marex-ynQEQJNshbs@public.gmane.org>,
<pekon-l0cyMroinI0@public.gmane.org>,
<broonie-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
<linux-mtd-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
<linux-spi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>,
<linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org>,
<b44548-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
<b18965-KZfg59tc24xl57MIdRCFDg@public.gmane.org>,
<shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>
Subject: Re: [PATCH v3 3/7] mtd: spi-nor: add the framework for SPI NOR
Date: Tue, 17 Dec 2013 10:49:51 +0530 [thread overview]
Message-ID: <52AFDEF7.2080604@ti.com> (raw)
In-Reply-To: <20131217025646.GD12575-Fb7DQEYuewWctlrPMvKcciBecyulp+rMXqFh9Ls21Oc@public.gmane.org>
On Tuesday 17 December 2013 08:26 AM, Huang Shijie wrote:
> On Tue, Dec 17, 2013 at 12:11:58AM +0530, Sourav Poddar wrote:
>>> +static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
>>> + size_t *retlen, u_char *buf)
>>> +{
>>> + struct spi_nor *nor = mtd_to_spi_nor(mtd);
>>> + int ret;
>>> +
>>> + dev_dbg(nor->dev, "from 0x%08x, len %zd\n", (u32)from, len);
>>> +
>>> + ret = spi_nor_lock_and_prep(nor, SPI_NOR_OPS_READ);
>>> + if (ret)
>>> + return ret;
>>> +
>>> + /* Wait till previous write/erase is done. */
>>> + ret = wait_till_ready(nor);
>>> + if (ret)
>>> + goto read_err;
>>> +
>> Can you shift "wait_till_ready" above spi_nor_lock_and_prep?
>> One usecase for asking for above change is that I am planning to
>> use this _prep api for switching to memory mapped mode for read and once
>> I am switched to mmap mode, read_sr calls in wait_till_ready will not
>> work for me.
>>
> you can implement your own wait_till_ready here.
I think no point doing this, since it does the same function for me.
> Only we have grabbed the lock, then we can do the transactions with the NOR.
>
> We can not call the wait_till_ready before we grab the lock, it is wrong.
>
>
> If you really can not implement your own wait_till_ready, the final solution
> is removing the wait_till_ready in this function, and add the wait_till_ready
> in the nor->read() hook.
>
Yes, this can be done. So, that if you want to do memcpy do it before this
condition is hit.
> thanks
> Huang Shijie
>
>
--
To unsubscribe from this list: send the line "unsubscribe linux-spi" in
the body of a message to majordomo-u79uwXL29TY76Z2rM5mHXA@public.gmane.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
WARNING: multiple messages have this Message-ID (diff)
From: sourav.poddar@ti.com (Sourav Poddar)
To: linux-arm-kernel@lists.infradead.org
Subject: [PATCH v3 3/7] mtd: spi-nor: add the framework for SPI NOR
Date: Tue, 17 Dec 2013 10:49:51 +0530 [thread overview]
Message-ID: <52AFDEF7.2080604@ti.com> (raw)
In-Reply-To: <20131217025646.GD12575@shlinux2.ap.freescale.net>
On Tuesday 17 December 2013 08:26 AM, Huang Shijie wrote:
> On Tue, Dec 17, 2013 at 12:11:58AM +0530, Sourav Poddar wrote:
>>> +static int spi_nor_read(struct mtd_info *mtd, loff_t from, size_t len,
>>> + size_t *retlen, u_char *buf)
>>> +{
>>> + struct spi_nor *nor = mtd_to_spi_nor(mtd);
>>> + int ret;
>>> +
>>> + dev_dbg(nor->dev, "from 0x%08x, len %zd\n", (u32)from, len);
>>> +
>>> + ret = spi_nor_lock_and_prep(nor, SPI_NOR_OPS_READ);
>>> + if (ret)
>>> + return ret;
>>> +
>>> + /* Wait till previous write/erase is done. */
>>> + ret = wait_till_ready(nor);
>>> + if (ret)
>>> + goto read_err;
>>> +
>> Can you shift "wait_till_ready" above spi_nor_lock_and_prep?
>> One usecase for asking for above change is that I am planning to
>> use this _prep api for switching to memory mapped mode for read and once
>> I am switched to mmap mode, read_sr calls in wait_till_ready will not
>> work for me.
>>
> you can implement your own wait_till_ready here.
I think no point doing this, since it does the same function for me.
> Only we have grabbed the lock, then we can do the transactions with the NOR.
>
> We can not call the wait_till_ready before we grab the lock, it is wrong.
>
>
> If you really can not implement your own wait_till_ready, the final solution
> is removing the wait_till_ready in this function, and add the wait_till_ready
> in the nor->read() hook.
>
Yes, this can be done. So, that if you want to do memcpy do it before this
condition is hit.
> thanks
> Huang Shijie
>
>
next prev parent reply other threads:[~2013-12-17 5:19 UTC|newest]
Thread overview: 109+ messages / expand[flat|nested] mbox.gz Atom feed top
2013-12-16 8:58 [PATCH v3 0/7] mtd: spi-nor: add a new framework for SPI NOR Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` [PATCH v3 1/7] mtd: spi-nor: copy the SPI NOR commands to a new header file Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-17 13:01 ` Marek Vasut
2013-12-17 13:01 ` Marek Vasut
2013-12-17 13:01 ` Marek Vasut
2013-12-17 14:12 ` Huang Shijie
2013-12-17 14:12 ` Huang Shijie
2013-12-17 14:12 ` Huang Shijie
2013-12-16 8:58 ` [PATCH v3 2/7] mtd: spi-nor: add the basic data structures Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-17 13:05 ` Marek Vasut
2013-12-17 13:05 ` Marek Vasut
2013-12-17 13:05 ` Marek Vasut
2013-12-17 13:49 ` Huang Shijie
2013-12-17 13:49 ` Huang Shijie
2013-12-17 13:49 ` Huang Shijie
2013-12-17 15:16 ` Marek Vasut
2013-12-17 15:16 ` Marek Vasut
2013-12-17 15:16 ` Marek Vasut
2013-12-17 16:00 ` Huang Shijie
2013-12-17 16:00 ` Huang Shijie
2013-12-17 16:00 ` Huang Shijie
2013-12-16 8:58 ` [PATCH v3 3/7] mtd: spi-nor: add the framework for SPI NOR Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 18:41 ` Sourav Poddar
2013-12-16 18:41 ` Sourav Poddar
2013-12-16 18:41 ` Sourav Poddar
2013-12-17 2:56 ` Huang Shijie
2013-12-17 2:56 ` Huang Shijie
2013-12-17 2:56 ` Huang Shijie
2013-12-17 5:19 ` Sourav Poddar [this message]
2013-12-17 5:19 ` Sourav Poddar
2013-12-17 5:19 ` Sourav Poddar
2013-12-17 5:20 ` Huang Shijie
2013-12-17 5:20 ` Huang Shijie
2013-12-17 5:20 ` Huang Shijie
2013-12-17 13:07 ` Marek Vasut
2013-12-17 13:07 ` Marek Vasut
2013-12-17 13:07 ` Marek Vasut
2013-12-16 8:58 ` [PATCH v3 4/7] mtd: m25p80: use the SPI nor framework Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` [PATCH v3 5/7] mtd: spi-nor: add a helper to find the spi_device_id Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` [PATCH v3 6/7] Documentation: add the binding file for Quadspi driver Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-17 13:10 ` Marek Vasut
2013-12-17 13:10 ` Marek Vasut
2013-12-17 13:10 ` Marek Vasut
2013-12-17 13:36 ` thomas.langer
2013-12-17 13:36 ` thomas.langer at lantiq.com
2013-12-17 13:36 ` thomas.langer-th3ZBGNqt+7QT0dZR+AlfA
2013-12-17 15:10 ` Marek Vasut
2013-12-17 15:10 ` Marek Vasut
2013-12-17 15:10 ` Marek Vasut
2013-12-18 15:30 ` Gerhard Sittig
2013-12-18 15:30 ` Gerhard Sittig
2013-12-18 15:30 ` Gerhard Sittig
2013-12-18 16:03 ` Huang Shijie
2013-12-18 16:03 ` Huang Shijie
2013-12-18 16:03 ` Huang Shijie
2013-12-18 18:21 ` Gerhard Sittig
2013-12-18 18:21 ` Gerhard Sittig
2013-12-18 18:21 ` Gerhard Sittig
2013-12-16 8:58 ` [PATCH v3 7/7] mtd: spi-nor: Add Freescale QuadSpi driver Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-16 8:58 ` Huang Shijie
2013-12-17 13:16 ` Marek Vasut
2013-12-17 13:16 ` Marek Vasut
2013-12-17 13:16 ` Marek Vasut
2013-12-17 14:24 ` Huang Shijie
2013-12-17 14:24 ` Huang Shijie
2013-12-17 14:24 ` Huang Shijie
2013-12-17 4:08 ` [PATCH v3 0/7] mtd: spi-nor: add a new framework for SPI NOR Gupta, Pekon
2013-12-17 4:08 ` Gupta, Pekon
2013-12-17 4:08 ` Gupta, Pekon
2013-12-17 4:02 ` Huang Shijie
2013-12-17 4:02 ` Huang Shijie
2013-12-17 4:02 ` Huang Shijie
2013-12-17 5:00 ` Gupta, Pekon
2013-12-17 5:00 ` Gupta, Pekon
2013-12-17 5:00 ` Gupta, Pekon
2013-12-17 4:57 ` Huang Shijie
2013-12-17 4:57 ` Huang Shijie
2013-12-17 4:57 ` Huang Shijie
2013-12-17 5:45 ` Gupta, Pekon
2013-12-17 5:45 ` Gupta, Pekon
2013-12-17 5:45 ` Gupta, Pekon
2013-12-17 5:26 ` Huang Shijie
2013-12-17 5:26 ` Huang Shijie
2013-12-17 5:26 ` Huang Shijie
2013-12-17 6:07 ` Shawn Guo
2013-12-17 6:07 ` Shawn Guo
2013-12-17 6:07 ` Shawn Guo
2013-12-17 7:17 ` Gupta, Pekon
2013-12-17 7:17 ` Gupta, Pekon
2013-12-17 7:17 ` Gupta, Pekon
2013-12-17 7:17 ` Gupta, Pekon
2013-12-17 7:56 ` Shawn Guo
2013-12-17 7:56 ` Shawn Guo
2013-12-17 7:56 ` Shawn Guo
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=52AFDEF7.2080604@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=dwmw2@infradead.org \
--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=marex@denx.de \
--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.