Hello,
Does someone had tested sd/mmc with nfs?
After tried latest mainline tree and linaro 3.1, I found sd card doesn't work
with nfs or usb fs, and it works well with mmc fs. However blaze board doesn't
have the problem.
It seems the issue is related to power supply.
For blaze, I can see there is an extra mmc0 interrupt num which should be handled by
twl6030.
root@localhost:/root> cat /proc/interrupts | grep mmc CPU0 CPU1 91: 145 0 GIC mmc1115: 145 0 GIC mmc0384: 1 0 twl6030 mmc0
But for panda, only two mmc interrupt nums exist.
root@localhost:/root> cat /proc/interrupts |grep mmc 91: 13 GIC mmc1115: 0 GIC mmc0PS: From schemtic, I found USB phy and mmc share same VIO_1V8, is it has impact about the issue.
Thanks,
Actually, if sd/mmc is initialized before usb host, then sd/mmc also works, but hot-plug sd/mmc card is failed.
i have not tested the linaro builds with this configuration, however i have tested mainline kernel with no issues.
Dave
Interesting, I tested pandaboard Rev A3 with mainline kernel 3.4-rc1, and this issue is still exist.
Gary
Gary,
i just ran a full test with 3.2, 3.3 and 3.4-rc series, with no failures of any type related to sd/mmc.
Dave,
Could you confirm what is the version of pandaboard?
I have both panda and blaze in my hand, however blaze works fine,
and I guess this issue related to pull up resistor of mmc's card detect line,
since blaze uses 470k resistor while panda uses 10k resistor.
i tested with A3 same as you posted.
10K is nominal for the pullup resistors as it is implemented on the panda.
i suspect you have a code difference somewhere that is at the root of your issue.
I don't think so, and also tried latest 3.4.0-rc3 kernel with no luck.
please send me a copy of your kernel .config so that i may try it, as well as the exact test conditions you are using to replicate the issue.
I just boot the kernel with nfs or filesystem under usb disk, then just hot plug mmc card after enter into userspace,
but fdisk can't display mmc info. The config file is a little bit big,
upstream-linux$ ls -lh .config-rwxrwxrwx 1 root root 65K 2012-04-16 15:44 .config
I amn't want pollute the thread, and I already enabled the following options.
1966 CONFIG_MMC=y1967 # CONFIG_MMC_DEBUG is not set1968 CONFIG_MMC_UNSAFE_RESUME=y1969 # CONFIG_MMC_CLKGATE is not set1970 1971 #1972 # MMC/SD/SDIO Card Drivers1973 #1974 CONFIG_MMC_BLOCK=y1975 CONFIG_MMC_BLOCK_MINORS=81976 CONFIG_MMC_BLOCK_BOUNCE=y1977 CONFIG_SDIO_UART=y1978 # CONFIG_MMC_TEST is not set1979 1980 #1981 # MMC/SD/SDIO Host Controller Drivers1982 #1983 # CONFIG_MMC_SDHCI is not set1984 # CONFIG_MMC_SDHCI_PXAV3 is not set1985 # CONFIG_MMC_SDHCI_PXAV2 is not set1986 CONFIG_MMC_OMAP=y1987 CONFIG_MMC_OMAP_HS=y
could you tell me which other options should be enabled?
email the .config to x0132446@ti.com
Seems panda missed card_detect_irq for mmc1 card, below patch fixed this.
---arch/arm/mach-omap2/board-omap4panda.c | 1 + 1 files changed, 1 insertions(+), 0 deletions(-)diff --git a/arch/arm/mach-omap2/board-omap4panda.c b/arch/arm/mach-omap2/board-omap4panda.cindex 1b782ba..171c53f 100644--- a/arch/arm/mach-omap2/board-omap4panda.c+++ b/arch/arm/mach-omap2/board-omap4panda.c@@ -255,6 +255,7 @@ static int omap4_twl6030_hsmmc_late_init(struct device *dev) __func__, irq); return irq; }+ pdata->slots[0].card_detect_irq = irq; pdata->slots[0].card_detect = twl6030_mmc_card_detect; } return 0;--1.7.3