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 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.