From: Huang Shijie <b32955-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
To: Jagan Teki <jagannadh.teki-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
Cc: Huang Shijie <shijie8-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
angus.clark-qxv4g6HH51o@public.gmane.org,
Brian Norris
<computersforpeace-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>,
b44548-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
Lee Jones <lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
Mark Brown <broonie-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
b18965-KZfg59tc24xl57MIdRCFDg@public.gmane.org,
linux-spi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org,
linux-mtd-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org,
"Gupta, Pekon" <pekon-l0cyMroinI0@public.gmane.org>,
Sourav Poddar <sourav.poddar-l0cyMroinI0@public.gmane.org>,
Shawn Guo <shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org>,
David Woodhouse <dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org>,
"linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org"
<linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org>
Subject: Re: [PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR
Date: Tue, 21 Jan 2014 10:29:26 +0800 [thread overview]
Message-ID: <20140121022925.GA18529@shlinux2.ap.freescale.net> (raw)
In-Reply-To: <CAD6G_RTwMJ5DgkCB7wcYw+2p---DqU4KCVJ3CUnHFfCJ0ui_Jw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
On Sun, Jan 19, 2014 at 03:39:34PM +0530, Jagan Teki wrote:
> > 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" :)
>
> I'm still not convinced here, sorry!
> Let me explain more with example, Just take your (q)spi controller as an example
> B_FSL1 designed with - serial flash
> B_FSL2 designed with - touch screen
>
> With this design If we follow current we just need one controller
> driver (drivers/spi/spi-fsl.c)
> to serve touch screen and serial flash from upper layers.
>
> MTD core Input core
> ------------- -------------------------------
> m25p80.c spi touchscreen driver (drivers/input/touchscreen)
> ----------------------------------------------------
> SPI core
> ----------------------------------------------------
> controller driver (drivers/spi/spi-fsl.)
> ----------------------------------------------------
>
> But with your new SPI-NOR
>
> MTD core
> ------------
> SPI-NOR Input core
> ----------- ------------------
> fsl-quadspi.c spi touchscreen driver (drivers/input/touchscreen)
> ---------------- ------------------------------
> SPI Core
> -----------------------------
> controller driver (drivers/spi/spi-fsl.c)
> -----------------------------------------
>
There is no relationship with the fsl-quadspi.c.
It should be like this:
MTD core
------------
SPI-NOR framework Input core
----------- ------------------
m25p80.c spi touchscreen driver (drivers/input/touchscreen)
---------------- ------------------------------
SPI Core SPI Core
----------------------- -----------------------------
drivers/spi/spi-fsl.c controller driver (drivers/spi/spi-fsl.c)
-------------------------- -----------------------------------------
> Here see we have two separate drivers for the same controller as it offers two
> functionalities. and also it never talk to Linux SPI subsystem which is not a
> good for me as intern hw is SPI-based it must talk to subsystem to make use of
> Linux SPI API's.
>
> And also you mentioned SPI-NOR controller is not a SPI controller what does that
> means because it's a NOR flash which is of SPI protocol based.
The SPI controller (or spi bus controller) only handles the _byte_ streams;
while the spi-nor controller, such as fsl-quadspi.c, can has to __known__
the exact SPI NOR command to find the proper LUT.
Please read the thread i ever posted in the previous email.
>
> I understand that your framework doing good things in matured manner, but
> seems like it's confuse to me to follow common standards - Just my
> opinion, may be I'm incorrect.
>
> One more thing question - I have 1-wire spi controller which I was
> used for flash in
> one board and keyboard in another board, so if I follow your framework
> I need to write
> a driver in drivers/mtd/spi-nor/foo-spi.c and one more in
> drivers/spi/spi-foo.c - correct?
Please read the device tree node of your controller, find the code like
...................................................
flash: m25p80@0 {
#address-cells = <1>;
#size-cells = <1>;
compatible = "st,m25p32";
spi-max-frequency = <20000000>;
reg = <0>;
};
...................................................
if you call the m25p80, you do not need to change anything.
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
next prev parent reply other threads:[~2014-01-21 2:29 UTC|newest]
Thread overview: 22+ 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
[not found] ` <1387950629-27448-1-git-send-email-b32955-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
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 ` [PATCH v4 2/7] mtd: spi-nor: add the basic data structures 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 ` [PATCH v4 4/7] mtd: m25p80: use the SPI nor framework 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 ` [PATCH v4 6/7] Documentation: add the binding file for Freescale QuadSPI driver Huang Shijie
2013-12-25 5:50 ` [PATCH v4 7/7] mtd: spi-nor: Add " Huang Shijie
2014-01-15 19:15 ` [PATCH v4 0/7] mtd: spi-nor: add a new framework for SPI NOR Jagan Teki
[not found] ` <CAD6G_RTnNQgeJM8Tc16Sc1_n29d=V9sJN1ePrOAn5YzM+GujMQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-16 9:11 ` Huang Shijie
[not found] ` <52D7A237.8-KZfg59tc24xl57MIdRCFDg@public.gmane.org>
2014-01-16 9:39 ` Jagan Teki
[not found] ` <CAD6G_RRNg-uRtKnnVgJYpUGPsKecAUm9mwETVJsCsaGSuL2eCw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-17 2:02 ` Huang Shijie
2014-01-17 7:06 ` Jagan Teki
[not found] ` <CAD6G_RR7vgmHGFj4GqwCYLQQO6tbsZAeCzVBivbcxnCGSwgiWQ-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-17 6:54 ` Huang Shijie
2014-01-17 8:39 ` Jagan Teki
2014-01-17 17:06 ` Jagan Teki
2014-01-17 17:40 ` Gupta, Pekon
2014-01-19 2:44 ` Huang Shijie
2014-01-19 2:28 ` Huang Shijie
[not found] ` <52DB3864.2040606-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2014-01-19 10:09 ` Jagan Teki
[not found] ` <CAD6G_RTwMJ5DgkCB7wcYw+2p---DqU4KCVJ3CUnHFfCJ0ui_Jw-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2014-01-21 2:29 ` Huang Shijie [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=20140121022925.GA18529@shlinux2.ap.freescale.net \
--to=b32955-kzfg59tc24xl57midrcfdg@public.gmane.org \
--cc=angus.clark-qxv4g6HH51o@public.gmane.org \
--cc=b18965-KZfg59tc24xl57MIdRCFDg@public.gmane.org \
--cc=b44548-KZfg59tc24xl57MIdRCFDg@public.gmane.org \
--cc=broonie-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=computersforpeace-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=devicetree-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=dwmw2-wEGCiKHe2LqWVfeAwA7xHQ@public.gmane.org \
--cc=jagannadh.teki-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=lee.jones-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=linux-arm-kernel-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-doc-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=linux-mtd-IAPFreCvJWM7uuMidbF8XUB+6BGkLq7r@public.gmane.org \
--cc=linux-spi-u79uwXL29TY76Z2rM5mHXA@public.gmane.org \
--cc=pekon-l0cyMroinI0@public.gmane.org \
--cc=shawn.guo-QSEj5FYQhm4dnm+yROfE0A@public.gmane.org \
--cc=shijie8-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org \
--cc=sourav.poddar-l0cyMroinI0@public.gmane.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).