From: Anton Vorontsov <avorontsov-hkdhdckH98+B+jHODAdFcQ@public.gmane.org>
To: David Brownell <david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
Cc: Hans-Peter Nilsson
<hans-peter.nilsson-VrBV9hrLPhE@public.gmane.org>,
Mikael Starvik <mikael.starvik-VrBV9hrLPhE@public.gmane.org>,
Mike Lavender
<mike-UTnDXsALFwNjMdQLN6DIHgC/G2K4zDHf@public.gmane.org>,
spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@public.gmane.org,
Pierre Ossman
<drzeus-mmc-p3sGCRWkH8CeZLLa646FqQ@public.gmane.org>
Subject: Re: [patch 2.6.22-git5 0/4] MMC-over-SPI
Date: Wed, 18 Jul 2007 14:00:47 +0400 [thread overview]
Message-ID: <20070718100047.GA9544@localhost.localdomain> (raw)
In-Reply-To: <200707170911.16715.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
On Tue, Jul 17, 2007 at 09:11:15AM -0700, David Brownell wrote:
> On Tuesday 17 July 2007, Anton Vorontsov wrote:
>
> > Uhh.. can you believe?
> >
> > mmc_spi spi1.0: ASSUMING unshared SPI bus!
> > mmc_spi spi1.0: SD/MMC host mmc0, no DMA, no WP, no poweroff
> > mmcblk0: mmc0:0000 SD01G 1006080KiB
> > mmcblk0: p1
> > root-/FxswC0nw/VuxbqukCiDuA@public.gmane.org:~# mount /dev/mmcblk0p1 /mnt/
> > EXT2-fs warning: mounting unchecked fs, running e2fsck is recommended
> > root-/FxswC0nw/VuxbqukCiDuA@public.gmane.org:~# ls /mnt/
> > bin etc include lib libexec lost+found man sbin share var
> > root-/FxswC0nw/VuxbqukCiDuA@public.gmane.org:~#
>
> Good!
>
>
> > Yup, I've turned debugging off, it's plainly working.
>
> And presumably it works with debugging enabled, too ...
Yes, sure. I've just forgot to insert "because"; "I've turned
debugging off, because it's plainly working now". Sorry for the
confusion. Debugging isn't culprit. ;-)
> > The only change I've made is:
> >
> > --- a/drivers/mmc/host/mmc_spi.c
> > +++ b/drivers/mmc/host/mmc_spi.c
> > @@ -1184,7 +1184,7 @@ static int mmc_spi_probe(struct spi_device *spi)
> > * Docs are very explicit that sampling is on the rising edge, so
> > * SPI_MODE_0 and SPI_MODE_3 having different CPOL may not matter.
> > */
> > - spi->mode |= SPI_CPOL | SPI_CPHA;
> > + spi->mode = 0;
> > spi->bits_per_word = 8;
> >
> > status = spi_setup(spi);
>
> Curious. I think it was Jan Nikitenko who reported mode 0 not
> working for SD, while mode 3 did work. All my recent testing
> used mode 3, but I started with mode 0...
>
> Ideally, someone with access to full MMC and SD specs can see
> what they say about the SPI clocking. The simplified SD specs
> omit the timing diagrams.
>
>
> > Am I understanding correctly that SPI_CPOL is:
> >
> > ~~~| |~~| |~~~~
> > | | | |
> > 0 |_| |_|
> > (does not work for me)
> >
> > While !SPI_CPOL is:
> >
> > |~| |~|
> > | | | |
> > 0 ___| |__| |____
> > (works great for me)
> >
> > Is that correct? Not vice versa?
>
> That's for the clock, I take it ... yes. There's a pretty
> good timing diagram at Wikipedia, which should make the two
> bits (CPOL, CPHA) clear:
>
> http://en.wikipedia.org/wiki/Serial_Peripheral_Interface_Bus
>
> CPOL=0 means the clock starts at idle=low (vs high if CPOL=1).
> CPHA=0 means capture on leading clock edge (vs trailing if CPHA=1).
Ok, just as I thought. That means that mpc83xx_spi.c is correct in
that regard.
> > At least that is what I'm observing on oscilloscope. Maybe it's
> > something still messed in mpc83xx_spi.c (I've already fixed a lot),
>
> Could you post your changes to that driver?
Sure, you'll see them shortly. Just need a bit of time.
> > or maybe something else. So, if mmc_spi modes are correct, then
> > mpc83xx_spi having inversed values, and should be fixed.
> >
> > With only SPI_CPHA that thing does not work also.
>
> Later today two patches to mpc83xx_spi should merge into the
> kernel.org GIT tree but they don't look like they'd relate
> to this SPI mode issue. (And the CRC7 patch should also be
> merging...)
>
> It's not inconceivable that the SPI controller driver is a
> bit confused with respect to interpreting the mode bits.
> We've seen that problem before.
>
>
> > Today I've tested it on bunch of cards, MMC Transcend 64MB,
> > MMC SanDisk 16MB, SD Kingston 128MB and 1GB. All of them work.
>
> Presumably you tested all of them with mode 0 ... which of them
> work with mode 3?
None.
> Does it work better in mode 3 if you use
> a lower clock speed ceiling in the spi board info for that card
> slot?
Nope.
> > Thus, despite minor issues, mmc_spi works great, much thanks!
>
> Glad to hear it! Now, to sort out why mode 3 fails for you ...
>
> - Dave
Much thanks,
--
Anton Vorontsov
email: cbou-JGs/UdohzUI@public.gmane.org
backup email: ya-cbou-o+MxOtu4lMCHXe+LvDLADg@public.gmane.org
irc://irc.freenode.net/bd2
-------------------------------------------------------------------------
This SF.net email is sponsored by DB2 Express
Download DB2 Express C - the FREE version of DB2 express and take
control of your XML. No limits. Just data. Click to get it now.
http://sourceforge.net/powerbar/db2/
next prev parent reply other threads:[~2007-07-18 10:00 UTC|newest]
Thread overview: 47+ messages / expand[flat|nested] mbox.gz Atom feed top
2007-07-14 22:04 [patch 2.6.22-git5 0/4] MMC-over-SPI David Brownell
[not found] ` <200707141504.51950.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-14 22:05 ` [patch 2.6.22-git5 1/4] MMC headers learn about SPI David Brownell
[not found] ` <200707141506.00262.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-26 16:31 ` Pierre Ossman
[not found] ` <20070726183150.024930aa-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-07-26 16:55 ` David Brownell
[not found] ` <200707260955.22967.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-26 18:05 ` Pierre Ossman
[not found] ` <20070726200525.6a5b7d72-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-07-26 20:08 ` David Brownell
2007-07-14 22:06 ` [patch 2.6.22-git5 2/4] MMC block learns " David Brownell
[not found] ` <200707141506.42880.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-26 16:33 ` Pierre Ossman
[not found] ` <20070726183339.6631243f-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-07-26 17:00 ` David Brownell
[not found] ` <200707261000.17339.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-26 18:06 ` Pierre Ossman
[not found] ` <20070726200639.06242858-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-07-26 20:15 ` David Brownell
2007-07-14 22:07 ` [patch 2.6.22-git5 3/4] MMC core " David Brownell
[not found] ` <200707141507.17484.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-26 17:18 ` Pierre Ossman
[not found] ` <20070726191824.569542fd-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-07-26 21:58 ` David Brownell
[not found] ` <200707261458.55558.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-26 22:22 ` David Brownell
2007-08-01 15:02 ` Pierre Ossman
[not found] ` <20070801170220.3c5ccff6-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-08-01 17:02 ` David Brownell
[not found] ` <200708011002.28801.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-08-02 12:54 ` Pierre Ossman
[not found] ` <20070802145445.1118d1e7-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-08-02 19:23 ` David Brownell
2007-07-14 22:08 ` [patch 2.6.22-git5 4/4] mmc_spi host driver David Brownell
[not found] ` <200707141508.07555.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-26 18:02 ` Pierre Ossman
[not found] ` <20070726200202.5e5dcf62-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-07-26 23:32 ` David Brownell
[not found] ` <200707261632.37011.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-08-01 15:12 ` Pierre Ossman
[not found] ` <20070801171217.1478267b-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-08-01 18:17 ` David Brownell
[not found] ` <200708011117.24664.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-08-02 13:06 ` Pierre Ossman
[not found] ` <20070802150615.36e073c6-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-08-02 20:34 ` David Brownell
[not found] ` <200708021334.50670.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-08-04 13:14 ` Pierre Ossman
[not found] ` <20070804151452.0efaa5a9-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-08-04 17:32 ` David Brownell
[not found] ` <200708041032.10001.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-08-04 21:32 ` Pierre Ossman
2007-08-07 12:35 ` Pierre Ossman
2007-08-01 18:40 ` David Brownell
2007-07-16 16:48 ` [patch 2.6.22-git5 0/4] MMC-over-SPI Anton Vorontsov
[not found] ` <20070716164837.GA18707-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-07-16 18:54 ` David Brownell
[not found] ` <200707161154.54728.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-17 15:13 ` Anton Vorontsov
[not found] ` <20070717151350.GA3752-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-07-17 16:11 ` David Brownell
[not found] ` <200707170911.16715.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-18 7:35 ` Jan Nikitenko
[not found] ` <469DC2BC.5070305-Re5JQEeQqe8AvxtiuMwx3w@public.gmane.org>
2007-07-18 17:06 ` David Brownell
2007-07-18 10:00 ` Anton Vorontsov [this message]
[not found] ` <20070718100047.GA9544-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-07-18 14:05 ` Anton Vorontsov
2007-07-18 14:44 ` Pierre Ossman
[not found] ` <20070718164409.56ca0019-mgABNEgzgxm+PRNnhPf8W5YgPPQkE1Si@public.gmane.org>
2007-07-18 17:27 ` David Brownell
[not found] ` <200707181027.17819.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-19 16:15 ` Anton Vorontsov
[not found] ` <20070719161553.GA15756-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-07-19 20:28 ` David Brownell
[not found] ` <200707191328.18846.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-23 14:29 ` Anton Vorontsov
[not found] ` <20070723142923.GA28979-bi+AKbBUZKY6gyzm1THtWbp2dZbC/Bob@public.gmane.org>
2007-07-23 17:33 ` David Brownell
[not found] ` <200707231033.31717.david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org>
2007-07-24 10:23 ` Anton Vorontsov
2007-08-07 3:21 ` David Brownell
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=20070718100047.GA9544@localhost.localdomain \
--to=avorontsov-hkdhdckh98+b+jhodadfcq@public.gmane.org \
--cc=david-b-yBeKhBN/0LDR7s880joybQ@public.gmane.org \
--cc=drzeus-mmc-p3sGCRWkH8CeZLLa646FqQ@public.gmane.org \
--cc=hans-peter.nilsson-VrBV9hrLPhE@public.gmane.org \
--cc=mikael.starvik-VrBV9hrLPhE@public.gmane.org \
--cc=mike-UTnDXsALFwNjMdQLN6DIHgC/G2K4zDHf@public.gmane.org \
--cc=spi-devel-general-5NWGOfrQmneRv+LV9MX5uipxlwaOVQ5f@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).