UPGRADE YOUR BROWSER

We have detected your current browser version is not the latest one. Xilinx.com uses the latest web technologies to bring you the best online experience possible. Please upgrade to a Xilinx.com supported browser:Chrome, Firefox, Internet Explorer 11, Safari. Thank you!

cancel
Showing results for 
Search instead for 
Did you mean: 
Visitor _bj_
Visitor
5,889 Views
Registered: ‎10-04-2016

Linux Kernel 4.6, mmc issue

Jump to solution

Hi there,

 

I compiled the Linux Kernel 4.6 from die git repository and the pull request which solves the drm_encoder_init error. After adding the efuse to the devicetree u-boot starts the Kernel.

 

But the kernel hangs at this message:

mmc0: new high speed SDHC card at address 0001
mmcblk0: mmc0:0001 00000 29.8 GiB
    mmcblk0: p1 p2
mmc0: Timeout waiting for hardware interrupt.
mmcblk0: error -110 transferring data, sector 266312, nr 240, cmd response 0x900, card status 0xb00

With Kernel 4.4.0 everything is working fine. Any ideas?

0 Kudos
1 Solution

Accepted Solutions
Visitor _bj_
Visitor
10,600 Views
Registered: ‎10-04-2016

Re: Linux Kernel 4.6, mmc issue

Jump to solution

Solution is to get the last commit from the repository. It adds a switch to the devicetree for broken adma sdhci mode. Something goes wrong int he sdhci driver with the adma mode. So you can disable the adma mode with "broken-adma2 = <0x1>;" in the sdhci nodes of the devicetree. Compile the latest kernel and everything is working.

 

Note: I read that switching to sdma mode is slowing down the card by ~20%

5 Replies
Explorer
Explorer
5,766 Views
Registered: ‎10-14-2015

Re: Linux Kernel 4.6, mmc issue

Jump to solution

I have the same rpoblem

0 Kudos
Highlighted
Visitor _bj_
Visitor
5,762 Views
Registered: ‎10-04-2016

Re: Linux Kernel 4.6, mmc issue

Jump to solution

I want to add that I tested it with the Z-turn Board from MYiR and the Zedboard (both of them using the 7z020 SoC). Each of the boards working fine with the 4.4 Kernel, with 4.6 the kernel is not able to read from the SD-Card.

0 Kudos
Visitor _bj_
Visitor
10,601 Views
Registered: ‎10-04-2016

Re: Linux Kernel 4.6, mmc issue

Jump to solution

Solution is to get the last commit from the repository. It adds a switch to the devicetree for broken adma sdhci mode. Something goes wrong int he sdhci driver with the adma mode. So you can disable the adma mode with "broken-adma2 = <0x1>;" in the sdhci nodes of the devicetree. Compile the latest kernel and everything is working.

 

Note: I read that switching to sdma mode is slowing down the card by ~20%

Explorer
Explorer
5,706 Views
Registered: ‎10-14-2015

Re: Linux Kernel 4.6, mmc issue

Jump to solution

Hi,

thanks for the tips!

 

I have downloaded the lates commit, but I don't know why the kernel doesn't boot, it hangs to message "starting kernel..."

 

But I managed to make it work with kernel 4.6 too. in the bootargs argument I pass "sdhci.debug_quirks=32832", which is 0x8040: bit 15 (cd-broken) and bit6 (broken-adma) set.

 

Regards,

Rocco 

0 Kudos
5,476 Views
Registered: ‎10-19-2016

Re: Linux Kernel 4.6, mmc issue

Jump to solution

I am experiencing the same issue. The Kernel hangs when starting.

 

How did you solve this with kernel 4.6?

 

 

0 Kudos