From: Mark Underwood <basicmark@yahoo.com>
To: Vital <vitalhome@rbcmail.ru>
Cc: Vital <vitalhome@rbcmail.ru>,
David Brownell <david-b@pacbell.net>,
linux-kernel@vger.kernel.org, dpervushin@ru.mvista.com
Subject: Re: [RFC][PATCH] SPI subsystem
Date: Sun, 11 Sep 2005 09:35:57 +0100 (BST) [thread overview]
Message-ID: <20050911083557.56515.qmail@web30303.mail.mud.yahoo.com> (raw)
In-Reply-To: <43234E0E.6000308@rbcmail.ru>
--- Vital <vitalhome@rbcmail.ru> wrote:
> Mark Underwood wrote:
>
> >>Same as for suspend.
> >>
> >>And the basic idea anyway looks wrong and not
> >>LDM'ish.
> >>What if your driver
> >>
> >>+static struct device_driver spi_adapter_driver =
> {
> >>+ .name = "spi_adapter",
> >>+ .bus = &spi_bus_type,
> >>+ .probe = spi_adapter_probe,
> >>+ .remove = spi_adapter_remove,
> >>+};
> >>
> >>presents also suspend/resume functions (what it
> >>should have done anyway).
> >>
> >>Won't it be in a clash with your suspend/resume
> >>technique?
> >>
> >>
> >
> >Probably as I said above I don't know enough about
> >this area yet. Maybe you could help me to do this
> >correctly?
> >
> >
> >
> I guess that it's basically wrong to use
> platform_device here. My POV is
> that a specific spi_device structure should be
> introduced here, just
> like pcidevice, for instance.
If you look at spi.h you will see the spi_device
structure :). My comment about suspend/resume was that
I based my suspend/resume functions on those in
platform.c.
>
> >>Also:
> >>
> >>Can you please specify what is the difference
> >>between 'bus' and 'chip'
> >>in your model?
> >>
> >>
> >
> >My current terminology is:
> >
> >spi adapter: A device that sits on an bus
> (platform,
> >PCI, USB etc) and is a SPI master and/or slave (I
> >haven't done any work on the slave part yet).
> >
> >spi device: A SPI device (e.g. a SPI eeprom) which
> one
> >or more of are connected to a spi adapter.
> >
> >
> >
> >>It's not clear to me how the following situation
> is
> >>handled. Suppose you
> >>have two SPI 'busses' with same devices (for
> >>instance, 2 SD card
> >>adapters) attached to different busses.
> >>
> >>
> >
> >I don't understand your question here. You would
> have
> >two instances of a SD card adapter. In sysfs it
> would
> >look like:
> >
> >SD card 0
> >/sys/devices/platform/spi-0/0-0000
> >
> >SD card 1
> >/sys/devices/platform/spi-1/1-0002
> >
> >As far as the SD card driver is concernedit doesn't
> >need to know which one its driving or even how many
> of
> >them they are. The big advantage of using the LDM.
> >
> >
> Not sure if I get you right.
> If we suspend bus 0, how does the SD driver get
> aware of that?
That is what my suspend/resume functions are doing
(maybe incorrectly). My current understanding is that
it is the job of the bus layer (e.g. PCI, USB and in
this case SPI) to handle the fact that a bus has been
suspended or resumed. This means that when an adapter
gets a suspend/resume call the core layer must then
ask all the devices on that adapter to suspend/resume.
In platform.c there are 3 calls made to the suspend
resume function which I assumed was the standard why
of doing this as some devices might have to be called
3 times inorder to be suspended/resumed correctly.
I can see that you could have a situation where a SPI
device has been suspended, and then the bus gets
suspended and then resumed, in which case I guess that
SPI device should probably still be suspended but at
the moment would get resumed.
Mark
>
> Vitaly
>
___________________________________________________________
To help you stay safe and secure online, we've developed the all new Yahoo! Security Centre. http://uk.security.yahoo.com
next prev parent reply other threads:[~2005-09-11 8:36 UTC|newest]
Thread overview: 25+ messages / expand[flat|nested] mbox.gz Atom feed top
2005-09-03 10:13 Mark Underwood
2005-09-09 21:39 ` David Brownell
2005-09-10 11:17 ` Mark Underwood
2005-09-15 0:08 ` David Brownell
2005-09-15 19:24 ` Mark Underwood
2005-09-15 22:14 ` David Brownell
2005-09-15 23:27 ` Mark Underwood
2005-09-16 3:25 ` David Brownell
2005-09-16 17:55 ` Mark Underwood
2005-09-16 18:43 ` David Brownell
2005-09-18 14:45 ` Mark Underwood
2005-09-30 1:02 ` David Brownell
2005-10-02 12:36 ` Mark Underwood
2005-10-03 4:47 ` David Brownell
2005-10-03 10:57 ` Mark Underwood
2005-10-03 11:07 ` Arjan van de Ven
2005-10-03 15:14 ` David Brownell
2005-10-03 15:23 ` Russell King
2005-10-03 15:40 ` David Brownell
2005-09-10 10:55 ` Vital
2005-09-10 11:54 ` Mark Underwood
2005-09-10 21:20 ` Vital
2005-09-11 8:35 ` Mark Underwood [this message]
2005-09-15 0:14 ` David Brownell
2005-09-26 16:50 ` Vitaly Wool
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=20050911083557.56515.qmail@web30303.mail.mud.yahoo.com \
--to=basicmark@yahoo.com \
--cc=david-b@pacbell.net \
--cc=dpervushin@ru.mvista.com \
--cc=linux-kernel@vger.kernel.org \
--cc=vitalhome@rbcmail.ru \
/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
all inboxes | Powered by JetHome®