cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
Up2U
Newbie
Newbie
76 Views
Registered: ‎04-08-2021

ZCU106 Linux multicore (CPU 1~3) boot failed 2019.1

Hello, 

I am trying to using RPU to run bare-metal program.

And I am using Linux 2019.1 with remoteproc drvier version 2019.2 now.

(According to https://forums.xilinx.com/t5/OpenAMP/OpenAMP-zynq-not-zynqMP/td-p/1087191 , 2019.1's drivers may have some bugs, so I just changed rpmsg/remoteproc drivers.)

 

But before I could test remoteproc, I found that CPU1~3 is failed on booting.

 

log is: 

[ 0.001542] smp: Bringing up secondary CPUs ...
[ 1.024585] CPU1: failed to come online
[ 1.024590] CPU1: failed in unknown state : 0x0
[ 2.049209] CPU2: failed to come online
[ 2.049214] CPU2: failed in unknown state : 0x0
[ 3.073833] CPU3: failed to come online
[ 3.073838] CPU3: failed in unknown state : 0x0
[ 3.073873] smp: Brought up 1 node, 1 CPU
[ 3.073878] SMP: Total of 1 processors activated.

 

And I think the rpmsg/remoteproc drivers is not related to the CPU 1~3 boot failed problem.

 

Any idea about this?

Here is my environment:

PL block design ONLY with PS module to do the simple test.

1. Using open source linux: https://github.com/Xilinx/linux-xlnx/tree/xilinx-v2019.1.

2. Build atf by: https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842462/Build+PMU+Firmware

3. Build pmufw by: https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18842462/Build+PMU+Firmware

4. Build fsbl by: https://xilinx-wiki.atlassian.net/wiki/spaces/A/pages/18841798/Build+FSBL

5. Genrate devicetree by Xilinx SDK with DTG 2019.1.  Then add

&sdhci1 {
no-1-8-v;
};

due to https://www.xilinx.com/support/answers/73079.html

6. bootargs add : cpuidle.off=1 (Without this, error message "mmc0: Timeout waiting for hardware interrupt" will occur, and booting will freeze)

 

(Another question:

When I tried to use Xilinx SDK to create fsbl/pmufw in IDE, boot.bin generated can not boot.

But if generate fsbl/pmufw like wiki link (in console), boot.bin can boot.)

 

PS: When I try to use remoteproc to run OpenAMP echo test on RPU0, system freezed after called start.

I have tested on zynq7000 with similar process, and everything goes fine.

# echo start > /sys/class/remoteproc/remoteproc0/state
[ 5863.770942] remoteproc remoteproc0: powering up r5@0
[ 5863.776596] remoteproc remoteproc0: Booting fw image rpmsg_test.elf, size 614448

 

Thanks.

block_design.png
0 Kudos
0 Replies