From: Brian Silverman <bsilverman@conceptxdesign.com>
To: linuxppc-embedded@ozlabs.org
Subject: MMC over SPI on Virtex-4
Date: Tue, 26 Feb 2008 11:26:48 -0500 [thread overview]
Message-ID: <47C43DC8.2030104@conceptxdesign.com> (raw)
[-- Attachment #1: Type: text/plain, Size: 2098 bytes --]
Hello all,
I'm attempting to get MMC over xilinx_spi working on a custom Xilinx
Virtex-4 board (that has a working SD/SPI interface, tested with a
standalone app).
I'm having issues mounting the device, and after doing a bit of
debugging, I'm confused about how things are supposed to work. I'm
using 2.6.24-rc8-xlnx from git.xilinx.com, with some patches (for the
uartlite (Grant Likely), and other minor things). In addition, I'm
using some of a patch from Andrei Konovalov (
<list?person=202&id=11577>http://patchwork.ozlabs.org/linuxppc-embedded/patch?id=11577)
for Xilinx SPI support in virtex_devices.c (BTW, will this patch hit the
main git.xilinx.com tree at some point?)
Here's what I do, and what I see:
- Create a block device: "mknod /dev/m0 b 179 0"
- Access that device ("cat /dev/m0")
- I see the calls into the kernel:
blkdev_open()
do_open()
get_gendisk()
kobj_lookup(bdev_map, ...)
- The device is not found (bdev_map has been initialized, but the only
"probe" at major 179 is base_probe().
- kobj_lookup() returns NULL, and the open returns ENXIO (No such device
or address).
Here's what I don't understand: In order for kobj_lookup to
successfully return non-NULL, a "probe" has to have been added to
bdev_map using kobj_map(). But, kobj_map(bdev_map,...) is called only
by blk_register_region(), which is never called by the MMC driver.
I'm clearly missing something here. Has anyone successfully used MMC
over SPI or xilinx_spi? How is the MMC driver supposed to work in
regards to opening a device?
Also, for reference:
I've added the following configs:
CONFIG_SPI=y
CONFIG_SPI_DEBUG=y
CONFIG_SPI_MASTER=y
CONFIG_SPI_BITBANG=y
CONFIG_SPI_XILINX=y
CONFIG_MMC=y
CONFIG_MMC_BLOCK=y
CONFIG_MMC_BLOCK_BOUNCE=y
CONFIG_MMC_SPI=y
And, /proc/devices does report the mmc device:
# cat /proc/devices
Character devices:
1 mem
4 /dev/vc/0
4 tty
5 /dev/tty
5 /dev/console
5 /dev/ptmx
7 vcs
10 misc
13 input
128 ptm
136 pts
204 ttyUL
Block devices:
1 ramdisk
179 mmc
--
Brian Silverman
Concept X, LLC
[-- Attachment #2: Type: text/html, Size: 2816 bytes --]
reply other threads:[~2008-02-26 17:28 UTC|newest]
Thread overview: [no followups] expand[flat|nested] mbox.gz Atom feed
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=47C43DC8.2030104@conceptxdesign.com \
--to=bsilverman@conceptxdesign.com \
--cc=linuxppc-embedded@ozlabs.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).