cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
itzhakhaim
Visitor
Visitor
626 Views
Registered: ‎01-27-2020

error in eMMC init at Linux

We have a problem when trying to enable the eMMC (soldered-chip)  at picozed (zynq zc702) evalutation board at Linux.

We are using an HDF file from our firmware engineer which enabled the ps7_sd_0 and ps7_sd_1 entities. The good thing is that we can fully use the eMMC at u-boot (using mmc tool) -built from Xilinx repo (u-boot-xlnx-2019.01).

We are building linux kernel 4.19.0 from Xilinx repository and tried various device trees (the deafult disable the eMMC chip)- but non of them are working.

We get the following error when booting linux:

mmc1: Got command interrupt 0x00030000 even though no command operation was in progress.
sdhci: =========== SDHCI REGISTER DUMP ===========
sdhci: Sys addr: 0x00000000 | Version:  0x00008901
sdhci: Blk size: 0x00000000 | Blk cnt:  0x00000000
sdhci: Argument: 0x00000000 | Trn mode: 0x00000000
sdhci: Present:  0x00ef0000 | Host ctl: 0x00000001
sdhci: Power:    0x0000000f | Blk gap:  0x00000000
sdhci: Wake-up:  0x00000000 | Clock:    0x00004007
sdhci: Timeout:  0x00000000 | Int stat: 0x00000000
sdhci: Int enab: 0x00ff0003 | Sig enab: 0x00ff0003
sdhci: AC12 err: 0x00000000 | Slot int: 0x00000000
sdhci: Caps:     0x69ec0080 | Caps_1:   0x00000000
sdhci: Cmd:      0x0000371a | Max curr: 0x00000001
sdhci: Host ctl2: 0x00000000
sdhci: ADMA Err: 0x00000000 | ADMA Ptr: 0x00000000
sdhci: ===========================================

 

We tried the following previously supported answers:

https://forums.xilinx.com/t5/Processor-System-Design/Zynq-SDIO-via-EMIO/td-p/327479

https://forums.xilinx.com/t5/Embedded-Linux/Problems-with-using-a-second-SDIO-controller/td-p/442766

Note that we are not using the SDIO via EMIO (only directly from PS pins/mux).

But still no progress - please your help.

0 Kudos
Reply
4 Replies
itzhakhaim
Visitor
Visitor
610 Views
Registered: ‎01-27-2020

I would like to say that we are not using Petalinux and building from the repo. directly.
0 Kudos
Reply
itzhakhaim
Visitor
Visitor
542 Views
Registered: ‎01-27-2020

Hello,

We would like also to mention, that we don't need the eMMC for boot - we can use the NOR QSPI flash chip and then hand the kernel and other boot images to be loaded from the eMMC.

And as we told, this is working at u-boot (we burned the eMMC from u-boot with the Kernel, Device Tree Blob and with the ramdisk - using the mmc tools) and loading it from there (to memory) - but, still we can't see the init/enumaration happening in the Linux (can't see the /dev/mmcblk devices) - and we get multiple interrupts as desribed at the main posts, which exits the init process of the eMMC device.

 

Please your help!

0 Kudos
Reply
itzhakhaim
Visitor
Visitor
511 Views
Registered: ‎01-27-2020

Hello - we get it at the Zynq-7000 cpu series - did anyone get this at ZynqMP SoC ?

Please your help!

 

0 Kudos
Reply
pj1953
Newbie
Newbie
260 Views
Registered: ‎07-18-2018

We are seeing something similar in zynqmp. When we drop the clock down from 200 Mhz to 100 Mhz, the errors go away. U-boot has no trouble. kernel 4.14 has no trouble running at 200 Mhz. We are suspecting something to do with tuning, but have not yet got to the bottom.

0 Kudos
Reply