Problems with MMC on linux-2.6-imx git

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Problems with MMC on linux-2.6-imx git

1,240 Views
twdorris
Contributor I

I've been using the linux-2.6-imx kernel source that was included on CD with my IMX23 EVK for several weeks now.  I've found various issues and fixed various little things here and there, but it's all pretty much worked for me.  So I decided to get brave and grab the latest git release and build that instead.

 

git clone http://opensource.freescale.com/pub/scm/imx/linux-2.6-imx.git

 

I copied my .config from old (original CD kernel build area) to the new git directory and pointed the ltib build over to the new directory as well. Everything built find but I can't boot this new kernel image (at least not off my SD card) because it hangs here:

 

Waiting for root device /dev/mmcblk0p2...

 

I'm really baffled. I don't know where to begin to debug this. I know nobody is going to be able to tell me exactly what to do to fix it, but maybe just some tips on places to look and things to check.

 

Here's the diff between my old and new .config files (> indicates lines in new).

 

753a754
> # CONFIG_SERIAL_MXS_AUART_CONSOLE is not set
760a762
> # CONFIG_FSL_OTP is not set
1169a1172
> # CONFIG_REGULATOR_MAX17135 is not set

 

And here's a diff between the boot up console of my old kernel vs. my new kernel (> indicates lines in new).

 

2c2
< Battery Voltage = 4.20V
---
> Battery Voltage = 4.19V
15c15
< Linux version 2.6.31-626-g602af1c (twdorris@debianbox) (gcc version 4.1.2) #41 Wed May 30 08:46:04 EDT 2012
---
> Linux version 2.6.31-00932-g0bc57f1 (twdorris@debianbox) (gcc version 4.1.2) #3 Wed May 30 08:40:20 EDT 2012
26c26
< Memory: 125924KB available (3420K code, 227K data, 100K init, 0K highmem)
---
> Memory: 125920KB available (3420K code, 228K data, 100K init, 0K highmem)
30c30
< Calibrating delay loop... 231.83 BogoMIPS (lpj=1159168)
---
> Calibrating delay loop... 226.91 BogoMIPS (lpj=1134592)
35c35
< NETol family 16
---
> NET: Registered protocol family 16
107,109c107,109
< tREA : Unknown
< tRLOH : Unknown
< tRHOH : Unknown
---
> tREA : 20 ns
> tRLOH : 5 ns
> tRHOH : 15 ns
168c168
< usb usb1: Manufacturer: Linux 2.6.31-626-g602af1c ehci_hcd
---
> usb usb1: Manufacturer: Linux 2.6.31-00932-g0bc57f1 ehci_hcd
195,199c195
< mxs-rtc mxs-rtc.0: setting system clock to 1970-01-01 00:00:39 UTC (39)
< mmc0: new SD card at address aaaa
< mmcblk0: mmc0:aaaa SU02G 1.84 GiB
< mmcblk0:
< p1 p2
---
> mxs-rtc mxs-rtc.0: setting system clock to 1970-01-01 00:02:52 UTC
> Waiting for root device /dev/mmcblk0p2...

 

Any ideas?

Labels (1)
0 Kudos
Reply
2 Replies

891 Views
twdorris
Contributor I

Wow.  This forum is dead.  :(

0 Kudos
Reply

891 Views
twdorris
Contributor I

After spending some time getting my gitfoo up to speed (git rocks, BTW), I did a bisect to determine that the 61aa3f7 commit was causing my problem.  So the following now works fine.

 

git co remotes/origin/imx_2.6.31

git revert -n 61aa3f73c35ddf5c4ac1b0e252d2004a15634913

 

The big question is why...and what am I missing in that commit because nothing about it is jumping out at me as the source of any issues.  Most of the changes seem pretty solid to me.  The one exception is the extra call to "mxs_mmc_reset()" when card_status != host->present.  Here's the direct link to the change history on that commit.

http://goo.gl/gKUDM

I'll keep monkeying around with it.  

EDIT: It appears to be the deletion of this POLARITY bit...time to read the reference manual:

        ssp_ctrl1 =
            BM_SSP_CTRL1_DMA_ENABLE |
-           BM_SSP_CTRL1_POLARITY |
            BM_SSP_CTRL1_RECV_TIMEOUT_IRQ_EN |
            BM_SSP_CTRL1_DATA_CRC_IRQ_EN |
            BM_SSP_CTRL1_DATA_TIMEOUT_IRQ_EN |
0 Kudos
Reply