Is there a way to enable ramoops on RK3588(s)?

I want to enable ramoops to make it easier to check logs after a kernel crash.

I tried adding the following code to the DTS of a FriendlyARM NanoPi R6C and recompiling it, and I also installed kmod-ramoops:

	reserved-memory {
		#address-cells = <2>;
		#size-cells = <2>;
		ranges;

		ramoops: ramoops@110000 {
			compatible = "ramoops";
			reg = <0 0x110000 0 0xe0000>;
			console-size = <0x80000>;
			ftrace-size = <0x00000>;
			pmsg-size = <0x30000>;
			record-size = <0x14000>;
		};
	};

The kernel logs at startup are as follows:

[    9.441951] pstore: Using crash dump compression: deflate
[    9.442426] printk: console [ramoops-1] enabled
[    9.443210] pstore: Registered ramoops as persistent store backend
[    9.443746] ramoops: using 0xe0000@0x110000, ecc: 0

However, after rebooting, mounting the pstore (mount -o noatime -t pstore pstore /sys/fs/pstore) shows that /sys/fs/pstore is empty. Even after triggering a crash using echo c > /proc/sysrq-trigger, /sys/fs/pstore remains empty after rebooting.

Does anyone know what happened?

(I test it under OpenWrt 24.10.4)

bootloader initialized RAM?

The official u-boot for FriendlyARM NanoPi R6C in OpenWrt 24.10.4

Resolved.

The reset mode of the RK806 PMIC needs to be adjusted.

  1. Linux backport this commit https://github.com/torvalds/linux/commit/db8db85cff331eb5a520a18a606692ff85405c3d
  2. R6C DTS add
       &rk806_single {
       	rockchip,reset-mode = <1>;
       };
    
1 Like

Consider submitting backport to v6.12 at least....

Backporting the driver patch is simple, but many DTS files have their own RK806 configurations (mainly RK3576 and RK3588 SoCs).

This topic was automatically closed 10 days after the last reply. New replies are no longer allowed.