cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 
huojianyu
Observer
Observer
228 Views
Registered: ‎09-08-2019

SError occurs when remove xlnx_vcu.ko

Hi experts,

I'm working on a custom board with ZynqMP SoC.  I have 2 PL firmwares(called top.bin) and I want to switch them dynamically.

I try to remove drivers that associated with PL before loading new PL firmware and reload them later. Most drivers work well except for VCU drivers.

al5e.ko and allegro.ko are removed successfully but SError occurs when remove xlnx_vcu.ko.  Below is dmesg

 

[   30.159444] Bad mode in Error handler detected on CPU3, code 0xbf000000 -- SError
[   30.169186] Internal error: Oops - bad mode: 0 [#1] SMP
[   30.174391] Modules linked in: xt_conntrack nf_conntrack_ipv4 nf_conntrack libcrc32c mali(O) spidrv(O) cachedrv(O) memory_reserve(O) fpgadrv(FO) ttcdrv(O) ipi_driver(FO) [last unloaded: xlnx_vcu]
[   30.191755] CPU: 3 PID: 2196 Comm: ads Tainted: GF          O    4.14.0-ACU-V2.2.6.1 #1
[   30.199736] Hardware name: xlnx,zynqmp (DT)
[   30.203904] task: ffffffc06aa67280 task.stack: ffffff8019dc0000
[   30.209806] PC is at 0x7f824bcd80
[   30.213104] LR is at 0x7f824bcd5c
[   30.216402] pc : [<0000007f824bcd80>] lr : [<0000007f824bcd5c>] pstate: 80000000
[   30.223779] sp : 0000007f7e094840
[   30.227078] x29: 0000007f7e094840 x28: 0000007f7e0951d0 
[   30.232373] x27: 0000000000000001 x26: 0000000000000000 
[   30.237667] x25: 0000007f7f8958c0 x24: 0000007f824d7000 
[   30.242962] x23: 000000000044ffa0 x22: 0000007f7e094900 
[   30.248257] x21: 000000000000004c x20: 000000000000000a 
[   30.253552] x19: 0000000000000000 x18: 0000000000000a03 
[   30.258847] x17: 0000007f824bccf0 x16: 00000000004b3330 
[   30.264141] x15: 0000007f82504cc0 x14: 0000000000000000 
[   30.269436] x13: ffffffffffffffff x12: 0000007f7e0951d0 
[   30.274731] x11: 0000000004040404 x10: 0101010101010101 
[   30.280026] x9 : 0fffffffffffffff x8 : 00000000000000cf 
[   30.285320] x7 : 0000000000000000 x6 : 0000000000000000 
[   30.290615] x5 : 0000000000000000 x4 : 0000000000000000 
[   30.295910] x3 : 0000000000000000 x2 : 000000000000004c 
[   30.301205] x1 : 0000007f7e094900 x0 : 000000000000004c 
[   30.306501] Process ads (pid: 2196, stack limit = 0xffffff8019dc0000)
[   30.312924] ---[ end trace 56358b07b0995ea4 ]---

 

 

I added some log in xlnx_vcu.c and found that the remove function returned successfully. So where is the problem?

BTW, I'm working with petalinux18.2 and VCU IP version is V1.1

0 Kudos
1 Reply
stephenm
Xilinx Employee
Xilinx Employee
214 Views
Registered: ‎09-12-2007

0 Kudos