PSCI: prefetch abort with Mainline linux (even with rockchip u-boot)

Tim Lunn tim at feathertop.org
Wed Sep 13 14:15:57 CEST 2023


Hi Jagan,

On 10/23/22 01:35, Jagan Teki wrote:
> Hi Kever and Heiko,
>
> Rockchip 32-bit SoC, like rv1126 seems to depend on PSCI to bring SMP in linux.
>
> With rockchip u-boot and Mainline U-Boot the psci in linux-next
> triggers the abort. (note that I have added rockchip_smcc and enabled
> PSCI in u-boot)
Did you ever find a solution to this? I am hitting the same issue 
building 6.1 kernel for rv1126.
> [    0.000000] Booting Linux on physical CPU 0xf00
> [    0.000000] Linux version 6.1.0-rc1-00029-gb09e57e6064a
> (j at j-ThinkPad-E14-Gen-2) (arm-linux-gnueabihf-gcc (GCC) 11.0.1
> 20210310 (experimental) [master revision
> 5987d8a79cda1069c774e5c302d5597310270026], GNU ld
>   (Linaro_Binutils-2021.03) 2.36.50.20210310) #12 SMP Sat Oct 22
> 19:44:56 IST 2022
> [    0.000000] CPU: ARMv7 Processor [410fc075] revision 5 (ARMv7), cr=10c5387d
> [    0.000000] CPU: div instructions available: patching division code
> [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing
> instruction cache
> [    0.000000] OF: fdt: Machine model: Edgeble Neu2 IO Board
> [    0.000000] earlycon: uart8250 at MMIO32 0xff570000 (options '')
> [    0.000000] printk: bootconsole [uart8250] enabled
> [    0.000000] Memory policy: Data cache writealloc
> [    0.000000] efi: UEFI not found.
> [    0.000000] cma: Reserved 64 MiB at 0x7c000000
> [    0.000000] Zone ranges:
> [    0.000000]   DMA      [mem 0x0000000000000000-0x000000002fffffff]
> [    0.000000]   Normal   empty
> [    0.000000]   HighMem  [mem 0x0000000030000000-0x000000007fffffff]
> [    0.000000] Movable zone start for each node
> [    0.000000] Early memory node ranges
> [    0.000000]   node   0: [mem 0x0000000000000000-0x000000007fffffff]
> [    0.000000] Initmem setup node 0 [mem 0x0000000000000000-0x000000007fffffff]
> [    0.000000] psci: probing for conduit method from DT.
> [    0.000000] Bad mode in prefetch abort handler detected
> [    0.000000] Internal error: Oops - bad mode: 0 [#1] SMP ARM
> [    0.000000] Modules linked in:
> [    0.000000] CPU: 0 PID: 0 Comm: swapper Not tainted
> 6.1.0-rc1-00029-gb09e57e6064a #12
> [    0.000000] Hardware name: Generic DT based system
> [    0.000000] PC is at 0x133fd468
> [    0.000000] LR is at __invoke_psci_fn_smc+0x38/0x58
> [    0.000000] pc : [<133fd468>]    lr : [<c0eb20f0>]    psr: 600001d6
> [    0.000000] sp : c1e01e68  ip : c1e01ec0  fp : 80000200
> [    0.000000] r10: c1e01f58  r9 : 7fffffff  r8 : c1e09410
> [    0.000000] r7 : 00000000  r6 : 00000000  r5 : 00000000  r4 : 00000000
> [    0.000000] r3 : 00000000  r2 : 00000000  r1 : 00000000  r0 : 84000000
> [    0.000000] Flags: nZCv  IRQs off  FIQs off  Mode MON_32  ISA ARM
> Segment none
> [    0.000000] Control: 10c5387d  Table: 0020406a  DAC: c1e09980
> [    0.000000] Register r0 information: non-paged memory
> [    0.000000] Register r1 information: NULL pointer
> [    0.000000] Register r2 information: NULL pointer
> [    0.000000] Register r3 information: NULL pointer
> [    0.000000] Register r4 information: NULL pointer
> [    0.000000] Register r5 information: NULL pointer
> [    0.000000] Register r6 information: NULL pointer
> [    0.000000] Register r7 information: NULL pointer
> [    0.000000] Register r8 information: non-slab/vmalloc memory
> [    0.000000] Register r9 information: non-paged memory
> [    0.000000] Register r10 information: non-slab/vmalloc memory
> [    0.000000] Register r11 information: non-paged memory
> [    0.000000] Register r12 information: non-slab/vmalloc memory
> [    0.000000] Process swapper (pid: 0, stack limit = 0x(ptrval))
> [    0.000000] Stack: (0xc1e01e68 to 0xc1e02000)
> [    0.000000] 1e60:                   84000000 00000000 00000000
> 00000000 00000000 00000000
> [    0.000000] 1e80: 00000000 00000000 c1e09410 7fffffff c1e01f58
> 80000200 c1e01ec0 c1e01e68
> [    0.000000] 1ea0: c0eb20f0 133fd468 600001d6 ffffffff c1e09980
> 00000000 c20891c0 c1b1c168
> [    0.000000] 1ec0: 00000000 00000000 00000000 00000000 c1e01edc
> 00000000 c20891c0 c1245ac8
> [    0.000000] 1ee0: ff8005a8 00000000 c1d2fca0 00000000 eefea2fc
> c1c93594 eefea2fc c1e09980
> [    0.000000] 1f00: c20891c0 c1b1c168 c1e09410 c1c93a10 eefea2fc
> c1c939d8 c1d2fbdc 00000000
> [    0.000000] 1f20: 7fffffff c1caf854 c1e0afa0 c1c04c44 00000000
> c1e01f4c c1e01f50 00000000
> [    0.000000] 1f40: c1e09980 c198cfec c1e01f9c 00000000 80000000
> c1e09980 ffffffff ffffffff
> [    0.000000] 1f60: c2089064 08300000 410fc075 10c5387d 00000000
> c039de88 c1e01f9c 00000000
> [    0.000000] 1f80: c1e09980 c1c00420 c1e04ec0 c1e09980 c2089064
> 08300000 410fc075 10c5387d
> [    0.000000] 1fa0: 00000000 c1c00b08 00000000 00000000 00000000
> 00000000 00000000 00000000
> [    0.000000] 1fc0: 00000000 c1cc8a6c 00000000 00000000 00000000
> c1c00420 00000051 10c0387d
> [    0.000000] 1fe0: 00000000 08300000 410fc075 10c5387d 00000000
> 00000000 00000000 00000000
> [    0.000000]  __invoke_psci_fn_smc from 0xc1e01e68
> [    0.000000] Code: bad PC value
>
> Any comments?
>
> Thanks,
> Jagan.
>


More information about the U-Boot mailing list