02-24-2020 11:38 PM
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.
02-25-2020 12:18 AM
02-26-2020 01:24 AM
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!
02-27-2020 02:57 AM
Hello - we get it at the Zynq-7000 cpu series - did anyone get this at ZynqMP SoC ?
Please your help!
09-10-2020 05:23 AM
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.