Wind River Support Network

HomeDefectsLIN1021-7233
Fixed

LIN1021-7233 : intel-socfpga kernel device-tree issue

Created: Feb 13, 2024    Updated: May 14, 2024
Resolved Date: May 13, 2024
Found In Version: 10.21.20.21
Severity: Standard
Applicable for: Wind River Linux LTS 21
Component/s: BSP

Description

An issue in the intel-socfpga BSP in WRL LTS21 RCPL21.
The problem is related to the socfpga_agilex.dtsi device-tree file using the wrong "compatible" string for the QSPI controller.

The device-tree file arch/arm64/boot/dts/intel/socfpga_agilex.dtsi file has:
qspi: spi@ff8d2000 {
compatible = "cdns,qspi-nor";

This causes a kernel crash like this:

[   23.220345] Internal error: synchronous external abort: ffffffff96000210 [#1] PREEMPT SMP
[   23.228520] Modules linked in:
[   23.231575] CPU: 1 PID: 1626 Comm: elogd Not tainted 5.10.200-04868-g1fb17cfd97a2 #1
[   23.239284] Hardware name: Ericsson AIR6428 (DT)
[   23.243885] pstate: 60000005 (nZCv daif -PAN -UAO -TCO BTYPE=--)
[   23.249882] pc : cqspi_exec_mem_op+0x168/0x1370
[   23.254394] lr : cqspi_exec_mem_op+0x104/0x1370
[   23.258904] sp : ffff8000150c36b0
[   23.262204] x29: ffff8000150c36b0 x28: ffff00048a60c700 
[   23.267498] x27: ffff00048145c500 x26: 0000000000a942d0 
[   23.272790] x25: 0000000000000030 x24: 0000000000000000 
[   23.278083] x23: ffff00048145c5b0 x22: ffff0004808e8180 
[   23.283375] x21: 0000000000000000 x20: ffff8000150c3ae0 
[   23.288668] x19: ffff00048145c500 x18: 0000000000000000 
[   23.293961] x17: 0000000000000000 x16: 0000000000000000 
[   23.299253] x15: 0000aaaadcbdcb90 x14: 00000000000000cf 
[   23.304546] x13: 0000000000000001 x12: 0000000000000000 
[   23.309838] x11: 0000000000000001 x10: 00000000000009f0 
[   23.315131] x9 : 0000000000000000 x8 : 0000000000000000 
[   23.320423] x7 : 0000000002faf080 x6 : 0000000002faf080 
[   23.325716] x5 : ffff00048145c500 x4 : ffff00048145c500 
[   23.331009] x3 : 0000000000000000 x2 : ffff800011635038 
[   23.336302] x1 : 0000000000000001 x0 : ffff800011635000 
[   23.341595] Call trace:
[   23.344035]  cqspi_exec_mem_op+0x168/0x1370
[   23.348203]  spi_mem_exec_op+0x3c0/0x400
[   23.352109]  spi_mem_dirmap_write+0x158/0x1a0
[   23.356452]  spi_nor_spimem_write_data+0x144/0x150
[   23.361223]  spi_nor_write+0x2fc/0x400
[   23.364961]  mtd_write_oob_std+0x78/0x84
[   23.368869]  mtd_write_oob+0x6c/0xc0
[   23.372430]  mtd_write+0x48/0x80
[   23.375646]  mtdchar_write+0x140/0x2a0
[   23.379386]  vfs_write+0xfc/0x2c0
[   23.382688]  ksys_write+0x68/0xf4
[   23.385989]  __arm64_sys_write+0x1c/0x2c
[   23.389901]  el0_svc_common.constprop.0+0x78/0x1f0
[   23.394672]  do_el0_svc+0x24/0xa0
[   23.397978]  el0_svc+0x14/0x20
[   23.401020]  el0_sync_handler+0xb0/0xb4
[   23.404842]  el0_sync+0x180/0x1c0
[   23.408149] Code: b9000041 394d90a1 34000141 9100e002 (b9400041) 
[   23.414220] ---[ end trace b369f1b1c4d10785 ]---
[   23.425146] Kernel panic - not syncing: synchronous external abort: Fatal exception
[   23.432775] SMP: stopping secondary CPUs

Please see below Intel upstream fix which resolves this issue.
[https://github.com/altera-opensource/linux-socfpga/commit/36de991e93908f7ad5c2a0eac9c4ecf8b723fa4a]
Live chat
Online