compulab-yokneam / meta-bsp-imx8mp

13 stars 14 forks source link

imx uart dma crash on kernel boot #7

Closed arrow53 closed 1 year ago

arrow53 commented 1 year ago

@vraevsky I have a custom board where I've disabled the various video interfaces to get so I can get to a boot prompt. I do see this kernel crash. Any idea how to fix it?

[    6.514384] audit: type=1334 audit(1647005829.008:4): prog-id=7 op=LOAD
[    6.623633] Internal error: Oops: 96000044 [#1] PREEMPT SMP
[    6.629226] Modules linked in: smsc fsl_jr_uio smsc95xx caam_jr caamkeyblob_d
esc caamhash_desc caamalg_desc crypto_engine rng_core libdes hailo_pci(O) crct10
dif_ce snd_soc_fsl_xcvr snd_soc_fsl_easrc snd_soc_fsl_sai snd_soc_fsl_asrc snd_s
oc_fsl_aud2htx at24 caam secvio error imx_dsp_rproc fuse
[    6.655194] CPU: 0 PID: 374 Comm: Uart Tainted: G           O      5.15.32+g6
fd70296c704 #1
[    6.663575] Hardware name: CompuLab UCM-iMX8M-Plus (DT)
[    6.663586] pstate: 800000c5 (Nzcv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    6.663592] pc : sdma_transfer_init+0x110/0x250
[    6.680327] lr : sdma_transfer_init+0xc4/0x250
[    6.680337] sp : ffff80000adbba30
[    6.680339] x29: ffff80000adbba30 x28: 0000000000000000 x27: ffff0000c095c6b0
[    6.688112] x26: ffff0000c4461700 x25: 00000000000002ed x24: 0000000000000000
[    6.688121] x23: 00000000000000c0 x22: 0000000000000080 x21: ffff80000a0ed200
[    6.702400] x20: ffff0000c0958080 x19: ffff0000c09588c8 x18: 000000000007ebb8
[    6.716678] x17: 000000000000547c x16: 0000000000000018 x15: 0000000000000001
[    6.716689] x14: 0000000000000001 x13: ffff80000a070dcc x12: 0000000000003000
[    6.716698] x11: 001fffffffffffff x10: 00000000ffffffff x9 : 0000000000000000
[    6.730974] x8 : ffff80000a0ed280 x7 : 0000000000000000 x6 : 000000000000003f
[    6.745251] x5 : 0000000000000040 x4 : 0000000000000000 x3 : 0000000000000004
[    6.752397] x2 : 0000000000000000 x1 : 0000000000000000 x0 : 0000000001830020
[    6.759544] Call trace:
[    6.761993]  sdma_transfer_init+0x110/0x250
[    6.766183]  sdma_prep_slave_sg+0x80/0x2c0
[    6.770285]  imx_uart_dma_tx+0xdc/0x230
[    6.774126]  imx_uart_start_tx+0x110/0x1fc
[    6.778226]  __uart_start.isra.0+0x3c/0x4c
[    6.782326]  uart_write+0x100/0x870
[    6.785820]  n_tty_write+0x2bc/0x470
[    6.789401]  file_tty_write.constprop.0+0x130/0x294
[    6.794283]  tty_write+0x18/0x2c
[    6.797515]  new_sync_write+0xe8/0x184
[    6.801268]  vfs_write+0x230/0x29c
[    6.804678]  ksys_write+0x68/0xf4
[    6.807999]  __arm64_sys_write+0x20/0x2c
[    6.811927]  invoke_syscall+0x48/0x114
[    6.815684]  el0_svc_common.constprop.0+0xd4/0xfc
[    6.820395]  do_el0_svc+0x2c/0x94
[    6.823711]  el0_svc+0x28/0x80
[    6.826773]  el0t_64_sync_handler+0xa8/0x130
[    6.831046]  el0t_64_sync+0x1a0/0x1a4
[    6.834717] Code: b90026a0 52800400 531b6ad6 72a03060 (b9000300) 
[    6.840816] ---[ end trace 75c0c6df4dac86f4 ]---
[    6.845436] note: Uart[374] exited with preempt_count 2
[    7.092914] smsc95xx 1-1.1:1.0 eth1: hardware isn't capable of remote wakeup
[    7.104594] smsc95xx 1-1.1:1.0 eth1: Link is Down
vraevsky commented 1 year ago

@arrow53 what u-boot is in use?

arrow53 commented 1 year ago

this ended up being a service I run during boot. I disabled the dma's for the uart in the devicetree for the uart and it fixed it. Unclear why but I don't think I need the dma. This seems like an NXP problem and nothing to do with compulab.