Jump to content

Helios64 - Armbian Trixie with linux 6.18 (incl. opp-microvolt patch)


Recommended Posts

Posted (edited)

The most current download images for Helios64 are now all provided with linux 6.18.xx.

 

I downloaded a minimal image and checked the dtb: it would not appear to contain the opp-microvolt patch that made Helios64 finally stable.

 

So for the ones who have stability issues again on Helios64, I attached the patched dtb compiled for linux 6.18.xx using the exact same opp-microvolt values as in the previous dtb versions I compiled for linux 6.6 and 6.12. The current linux deb files can be downloaded from beta.armbian.com, the linux 6.18.18 deb files I used can be downloaded from here (to be installed with 'dpkg -i linux*').

 

In order to install the dtb, simply unzip it, copy it into the proper location, update initramfs and reboot:

 

# install the dtb with the opp-microvolt patch:
unzip rk3399-kobol-helios64.dtb-6.18.18-opp.zip
cp rk3399-kobol-helios64.dtb-6.18.18-opp /boot/dtb/rockchip/rk3399-kobol-helios64.dtb
update-initramfs -u
reboot

rk3399-kobol-helios64.dtb-6.18.18-opp.zip

Edited by ebin-dev
Posted (edited)

Boot on a from scratch helios64 sdcard image, cross fingers and copy / rename / replace original dtb file with ebin-dev file or mount sdcard with scratch helios64 on another computer, do the change, then boot with you ready sdcard on the helios64

Edited by BipBip1981
Posted

Ultimately if the only way to get the Helios64 to boot is to integrate the dtb changes do I need to be building my own image with the changes integrated (rather than copying them into a pre-built image) . @ebin-dev what would be required to get these dtb patches into the mainline build ?

Posted

@SymbiosisSystems To get those changes into the mainline build is currently not the solution preferred by the maintainer of this board, because it is some kind of a hot fix.

 

To boot your helios64 to the command line you could try an image from the archive and boot from sd. A system on emmc could then be manipulated using chroot.

Posted

@ebin-dev good idea, I can try that. For the moment I seem to have a stable system running 25.11.2 with the 6.12.58 kernel and the l2-cache and op1-opp patches loaded as kernel overlays. My use case for the Helios64 is as a NAS with OMV8 and ZFS.

 

Who is the maintainer of this board now ? I'm happy to test images on my hardware and it would be good if the latest builds worked out of the gate without having to patch them.

Posted

@iav @prahal are you the maintainers of the Helios64 bsp ? I'd be happy to test builds if you don't have physical hardware. My motivation is that it would be useful to be able to download the current image and run it without it hanging or throwing a kernel panic because the build is unstable without patches for the RK3399K on this board.

 

Cheers,

 

Jon

Posted

Hello, I use this patch since many year now, me and my brother, with out it, our helios64 are unstable and unusable... with it, our helios64 work fine for more than two year, my opinion is, push the file in mainline or distrib the file in mainline with a script that install it fast with only one command run as soon has possible when not crash on the boot.. Bye.

Posted

Can you give a link to the patches you are talking about? Preferably not on a dropbox or pastebin-like, but to their original source — a repository or mailing list.

Posted (edited)

@iav The kobol dtbs (rk3399-kobol-helios64.dtb) linked in the messages before are patched in the following way having the effect that helios64 is finally stable (see here) : The opp-microvolt values in opp-table-1 are just replaced by the ones given below (for all linux kernel versions).

 

opp-table-1 {
                compatible = "operating-points-v2";
                opp-shared;
                phandle = <0x0d>;

                opp00 {
                        opp-hz = <0x00 0x18519600>;
                        opp-microvolt = <0xdbba0 0xdbba0 0x1312d0>;
                        clock-latency-ns = <0x9c40>;
                };

                opp01 {
                        opp-hz = <0x00 0x23c34600>;
                        opp-microvolt = <0xdbba0 0xdbba0 0x1312d0>;
                };

                opp02 {
                        opp-hz = <0x00 0x30a32c00>;
                        opp-microvolt = <0xdbba0 0xdbba0 0x1312d0>;
                };

                opp03 {
                        opp-hz = <0x00 0x3c14dc00>;
                        opp-microvolt = <0xe7ef0 0xe7ef0 0x1312d0>;
                };

                opp04 {
                        opp-hz = <0x00 0x47868c00>;
                        opp-microvolt = <0xfa3e8 0xfa3e8 0x1312d0>;
                };

                opp05 {
                        opp-hz = <0x00 0x54667200>;
                        opp-microvolt = <0x10c8e0 0x10c8e0 0x1312d0>;
                };

                opp06 {
                        opp-hz = <0x00 0x5fd82200>;
                        opp-microvolt = <0x11edd8 0x11edd8 0x1312d0>;
                };

                opp07 {
                        opp-hz = <0x00 0x6b49d200>;
                        opp-microvolt = <0x1312d0 0x1312d0 0x1312d0>;
                };
        };

 

 

Edited by ebin-dev
Posted

Hi @ebin-dev, @SymbiosisSystems, and everyone in this thread,

Following the recurring instability reports here and in the older topic
30074, I've packaged your opp-microvolt workaround as an opt-in DT
overlay in the Armbian build framework.

PR:
**armbian/build#9822** — adds the overlay to both Armbian kernel
trees: `rockchip64-current` (6.18) and `rockchip64-edge` (7.0).

What you get once this lands:

  - `rockchip-rk3399-helios64-cpu-stability.dtbo` ships inside the
    regular `linux-dtb-{current,edge}-rockchip64` package. No
    hand-patching of DTBs, no separate downloads; `apt upgrade` keeps
    the overlay in sync with whatever DTB your kernel ships.

  - **Not enabled by default** — for the people whose Helios64 "just
    works", the mainline OPPs stay untouched. I don't want to push a
    tree-wide voltage bump onto every user when only some units exhibit
    the instability.

  - Activation is the standard Armbian way, either:

      armbian-config → System → Kernel →
      Manage device tree overlays → [*] rk3399-helios64-cpu-stability
      → save → reboot

    or manually, by adding the overlay name to the `overlays=` line in
    `/boot/armbianEnv.txt` (the `rockchip-` prefix is implicit, because
    `overlay_prefix=rockchip` is already set on this board):

      overlays=rk3399-helios64-cpu-stability

    Then reboot.

Voltages are exactly the ones from post #237456 (opp00..opp06 raised to
900 / 900 / 900 / 950 / 1025 / 1100 / 1175 mV; opp07 left at the
mainline 1.20 V; `max` everywhere kept at 1.25 V). Frequencies are not
touched.

End-to-end verified on my Helios64 with both kernels:

  - current / 6.18.30, Trixie SD-card image
  - edge    / 7.0.7,   Trixie SD-card image (locally built)

After enabling the overlay and a reboot:

  for n in 0 1 2 3 4 5 6 7; do
    od -An -tx4 --endian=big \
       /sys/firmware/devicetree/base/opp-table-1/opp0$n/opp-microvolt
  done

  opp00  000dbba0 000dbba0 001312d0
  opp01  000dbba0 000dbba0 001312d0
  opp02  000dbba0 000dbba0 001312d0
  opp03  000e7ef0 000e7ef0 001312d0
  opp04  000fa3e8 000fa3e8 001312d0
  opp05  0010c8e0 0010c8e0 001312d0
  opp06  0011edd8 0011edd8 001312d0
  opp07  00124f80 00124f80 001312d0

...which matches your table 1:1. U-boot log line on boot:

  Applying kernel provided DT overlay
  rockchip-rk3399-helios64-cpu-stability.dtbo

confirms that u-boot picks up the `.dtbo` from
`/boot/dtb/.../rockchip/overlay/` and applies it via `fdt apply` before
the kernel starts.

Ready-to-flash **current/6.18** images, built from the PR branch by the
official Armbian builder workflow:

  https://fi.mirror.armbian.de/incoming/iav/helios64/archive/

  - Armbian_26.5.0_Helios64_resolute_current_6.18.30_minimal.img.xz
  - Armbian_26.5.0_Helios64_resolute_current_6.18.30_xfce_desktop.img.xz
  - Armbian_26.5.0_Helios64_trixie_current_6.18.30_minimal.img.xz

If any of you can grab one of those (or wait for a nightly after the PR
is merged) and confirm the workaround applies cleanly through the
overlay path on your board, that would help the PR land. Bug reports
are welcome too.

Attribution lives in
`patch/kernel/archive/rockchip64-{6.18,7.0}/overlay/README.rockchip-overlays`
under `### rk3399-helios64-cpu-stability`, pointing back to topics 30074
and 58597, prahal and ebin-dev.

Thanks!

Posted

Hi @ebin-dev, @SymbiosisSystems, and everyone in this thread,

Following the recurring instability reports here and in the older topic
( https://forum.armbian.com/topic/30074-helios64-armbian-2308-bookworm-issues-solved/ ),
I've packaged your opp-microvolt workaround as an opt-in DT overlay in
the Armbian build framework. PR:

  https://github.com/armbian/build/pull/9822

— adds the overlay to both Armbian kernel trees: `rockchip64-current`
(6.18) and `rockchip64-edge` (7.0).

What you get once this lands:

  - `rockchip-rk3399-helios64-cpu-stability.dtbo` ships inside the
    regular `linux-dtb-{current,edge}-rockchip64` package. No
    hand-patching of DTBs, no separate downloads; `apt upgrade` keeps
    the overlay in sync with whatever DTB your kernel ships.

  - **Not enabled by default** — for the people whose Helios64 "just
    works", the mainline OPPs stay untouched. I don't want to push a
    tree-wide voltage bump onto every user when only some units exhibit
    the instability.

  - Activation is the standard Armbian way, either:

      armbian-config → System → Kernel →
      Manage device tree overlays → [*] rk3399-helios64-cpu-stability
      → save → reboot

    or manually, by adding the overlay name to the `overlays=` line in
    `/boot/armbianEnv.txt` (the `rockchip-` prefix is implicit, because
    `overlay_prefix=rockchip` is already set on this board):

      overlays=rk3399-helios64-cpu-stability

    Then reboot.

Voltages are exactly the ones from your post in this thread —
https://forum.armbian.com/topic/58597-helios64-armbian-trixie-with-linux-618-incl-opp-microvolt-patch/?do=findComment&comment=237456
(opp00..opp06 raised to
900 / 900 / 900 / 950 / 1025 / 1100 / 1175 mV; opp07 left at the
mainline 1.20 V; `max` everywhere kept at 1.25 V). Frequencies are not
touched.

End-to-end verified on my Helios64 with both kernels:

  - current / 6.18.30, Trixie SD-card image
  - edge    / 7.0.7,   Trixie SD-card image (locally built)

After enabling the overlay and a reboot:

  for n in 0 1 2 3 4 5 6 7; do
    od -An -tx4 --endian=big \
       /sys/firmware/devicetree/base/opp-table-1/opp0$n/opp-microvolt
  done

  opp00  000dbba0 000dbba0 001312d0
  opp01  000dbba0 000dbba0 001312d0
  opp02  000dbba0 000dbba0 001312d0
  opp03  000e7ef0 000e7ef0 001312d0
  opp04  000fa3e8 000fa3e8 001312d0
  opp05  0010c8e0 0010c8e0 001312d0
  opp06  0011edd8 0011edd8 001312d0
  opp07  00124f80 00124f80 001312d0

...which matches your table 1:1. U-boot log line on boot:

  Applying kernel provided DT overlay
  rockchip-rk3399-helios64-cpu-stability.dtbo

confirms that u-boot picks up the `.dtbo` from
`/boot/dtb/.../rockchip/overlay/` and applies it via `fdt apply` before
the kernel starts.

Ready-to-flash **current/6.18** images, built from the PR branch by the
official Armbian builder workflow:

  https://fi.mirror.armbian.de/incoming/iav/helios64/archive/

  - Armbian_26.5.0_Helios64_resolute_current_6.18.30_minimal.img.xz
  - Armbian_26.5.0_Helios64_resolute_current_6.18.30_xfce_desktop.img.xz
  - Armbian_26.5.0_Helios64_trixie_current_6.18.30_minimal.img.xz

If any of you can grab one of those (or wait for a nightly after the PR
is merged) and confirm the workaround applies cleanly through the
overlay path on your board, that would help the PR land. Bug reports
are welcome too.

Attribution lives in the overlay README block (look for the heading
`### rk3399-helios64-cpu-stability`), pointing back to forum topics
30074 and 58597, prahal and ebin-dev:

  https://github.com/armbian/build/blob/feat/helios64-cpu-stability-overlay/patch/kernel/archive/rockchip64-6.18/overlay/README.rockchip-overlays
  https://github.com/armbian/build/blob/feat/helios64-cpu-stability-overlay/patch/kernel/archive/rockchip64-7.0/overlay/README.rockchip-overlays

Thanks!

Posted (edited)

@iav Thank you . I've just tried your trixie build with the overlay applied in armbianEnv but unfortunately the kernel panics with another issue now :(

 

DDR Version 1.25 20210517
In
channel 0
CS = 0
MR0=0x18
MR4=0x1
MR5=0x1
MR8=0x10
MR12=0x72
MR14=0x72
MR18=0x0
MR19=0x0
MR24=0x8
MR25=0x0
channel 1
CS = 0
MR0=0x18
MR4=0x1
MR5=0x1
MR8=0x10
MR12=0x72
MR14=0x72
MR18=0x0
MR19=0x0
MR24=0x8
MR25=0x0
channel 0 training pass!
channel 1 training pass!
change freq to 416MHz 0,1
Channel 0: LPDDR4,416MHz
Bus Width=32 Col=10 Bank=8 Row=16 CS=1 Die Bus-Width=16 Size=2048MB
Channel 1: LPDDR4,416MHz
Bus Width=32 Col=10 Bank=8 Row=16 CS=1 Die Bus-Width=16 Size=2048MB
256B stride
channel 0
CS = 0
MR0=0x18
MR4=0x1
MR5=0x1
MR8=0x10
MR12=0x72
MR14=0x72
MR18=0x0
MR19=0x0
MR24=0x8
MR25=0x0
channel 1
CS = 0
MR0=0x18
MR4=0x1
MR5=0x1
MR8=0x10
MR12=0x72
MR14=0x72
MR18=0x0
MR19=0x0
MR24=0x8
MR25=0x0
channel 0 training pass!
channel 1 training pass!
channel 0, cs 0, advanced training done
channel 1, cs 0, advanced training done
change freq to 856MHz 1,0
ch 0 ddrconfig = 0x101, ddrsize = 0x40
ch 1 ddrconfig = 0x101, ddrsize = 0x40
pmugrf_os_reg[2] = 0x32C1F2C1, stride = 0xD
ddr_set_rate to 328MHZ
ddr_set_rate to 666MHZ
ddr_set_rate to 928MHZ
channel 0, cs 0, advanced training done
channel 1, cs 0, advanced training done
ddr_set_rate to 416MHZ, ctl_index 0
ddr_set_rate to 856MHZ, ctl_index 1
support 416 856 328 666 928 MHz, current 856MHz
OUT

U-Boot SPL 2026.04_armbian-2026.04-S88dc-Pc925-H6cef-Vfcb0-Bd0d2-R448a (May 08 2026 - 19:13:18 +0000)
Trying to boot from MMC2
## Checking hash(es) for config config-1 ... OK
## Checking hash(es) for Image atf-1 ... sha256+ OK
## Checking hash(es) for Image u-boot ... sha256+ OK
## Checking hash(es) for Image fdt-1 ... sha256+ OK
## Checking hash(es) for Image atf-2 ... sha256+ OK
## Checking hash(es) for Image atf-3 ... sha256+ OK
## Checking hash(es) for Image atf-4 ... sha256+ OK
load_simple_fit: Skip load 'atf-5': image size is 0!
NOTICE:  BL31: v2.13.0(release):armbian
NOTICE:  BL31: Built : 04:24:31, Mar 29 2026
INFO:    GICv3 with legacy support detected.
INFO:    ARM GICv3 driver initialized in EL3
INFO:    Maximum SPI INTID supported: 287
INFO:    plat_rockchip_pmu_init(1624): pd status 3e
INFO:    BL31: Initializing runtime services
INFO:    BL31: Preparing for EL3 exit to normal world
INFO:    Entry point address = 0x800000
INFO:    SPSR = 0x3c9
ns16550_serial serial@ff1a0000: pinctrl_select_state_full: uclass_get_device_by_phandle_id: err=-19


U-Boot 2026.04_armbian-2026.04-S88dc-Pc925-H6cef-Vfcb0-Bd0d2-R448a (May 08 2026 - 19:13:18 +0000)

SoC: Rockchip rk3399
Reset cause: POR
DRAM:  4 GiB (total 3.9 GiB)
PMIC:  RK808
Core:  359 devices, 33 uclasses, devicetree: separate
SF: Detected w25q128 with page size 256 Bytes, erase size 4 KiB, total 16 MiB
MMC:   mmc@fe320000: 1, mmc@fe330000: 0
Loading Environment from MMC... Reading from MMC(1)... *** Warning - bad CRC, using default environment

In:    serial
Out:   serial
Err:   serial
Model: Kobol Helios64
Revision: 1.2 - 4GB non ECC
Net:   eth0: ethernet@fe300000
Hit any key to stop autoboot: 0
Scanning for bootflows in all bootdevs
Seq  Method       State   Uclass    Part  Name                      Filename
---  -----------  ------  --------  ----  ------------------------  ----------------
Scanning global bootmeth 'efi_mgr':
Cannot persist EFI variables without system partition
  0  efi_mgr      ready   (none)       0  <NULL>
** Booting bootflow '<NULL>' with efi_mgr
Loading Boot0000 'mmc 1' failed
Loading Boot0001 'mmc 0' failed
EFI boot manager: Cannot load any image
Boot failed (err=-14)
Scanning bootdev 'mmc@fe320000.bootdev':
  1  script       ready   mmc          1  mmc@fe320000.bootdev.part /boot/boot.scr
** Booting bootflow 'mmc@fe320000.bootdev.part_1' with script
Boot script loaded from mmc 1:1
227 bytes read in 2 ms (110.4 KiB/s)
24389419 bytes read in 1032 ms (22.5 MiB/s)
40503808 bytes read in 1717 ms (22.5 MiB/s)
90994 bytes read in 12 ms (7.2 MiB/s)
Working FDT set to 12000000
485 bytes read in 10 ms (46.9 KiB/s)
Applying kernel provided DT overlay rockchip-rk3399-helios64-cpu-stability.dtbo
2825 bytes read in 9 ms (305.7 KiB/s)
Applying kernel provided DT fixup script (rockchip-fixup.scr)
## Executing script at 09000000
Trying kaslrseed command... Info: Unknown command can be safely ignored since kaslrseed does not apply to all boards.
Unknown command 'kaslrseed' - try 'help'
## Loading init Ramdisk from Legacy Image at 12180000 ...
   Image Name:   uInitrd
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    24389355 Bytes = 23.3 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 12000000
   Booting using the fdt blob at 0x12000000
Working FDT set to 12000000
   Loading Ramdisk to f34bd000, end f4bff6eb ... OK
   Loading Device Tree to 00000000f4e12000, end 00000000f4e90fff ... OK
Working FDT set to f4e12000

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.18.30-current-rockchip64 (build@armbian) (aarch64-linux-gnu-gcc (Ubuntu 13.3.0-6ubuntu2~24.04.1) 13.3.0, GNU ld (GNU Binutils for Ubuntu) 2.42) #2 SMP PREEMPT Thu May 14 13:30:26 UTC 2026
[    0.000000] KASLR enabled
[    0.000000] Machine model: Kobol Helios64
[    0.000000] printk: debug: ignoring loglevel setting.
[    0.000000] efi: UEFI not found.
[    0.000000] OF: reserved mem: Reserved memory: No reserved-memory node in the DT
[    0.000000] NUMA: Faking a node at [mem 0x0000000000200000-0x00000000f7ffffff]
[    0.000000] NODE_DATA(0) allocated [mem 0xf77c6740-0xf77c8eff]
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000000200000-0x00000000f7ffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   empty
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000000200000-0x00000000f7ffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000000200000-0x00000000f7ffffff]
[    0.000000] On node 0, zone DMA: 512 pages in unavailable ranges
[    0.000000] cma: Reserved 128 MiB at 0x00000000e7600000
[    0.000000] psci: probing for conduit method from DT.
[    0.000000] psci: PSCIv1.1 detected in firmware.
[    0.000000] psci: Using standard PSCI v0.2 function IDs
[    0.000000] psci: MIGRATE_INFO_TYPE not supported.
[    0.000000] psci: SMC Calling Convention v1.5
[    0.000000] percpu: Embedded 34 pages/cpu s100440 r8192 d30632 u139264
[    0.000000] pcpu-alloc: s100440 r8192 d30632 u139264 alloc=34*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3 [0] 4 [0] 5
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: GICv3 CPU interface
[    0.000000] CPU features: kernel page table isolation forced ON by KASLR
[    0.000000] CPU features: detected: Kernel page table isolation (KPTI)
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Kernel command line: root=UUID=f8e076a9-7ca2-44b1-94b7-44aed908a068 rootwait rootfstype=ext4 splash=verbose console=ttyS2,1500000 console=tty1 consoleblank=0 loglevel=7 ubootpart=dc861576-01 usb-storage.quirks= earlyprintk ignore_loglevel  cgroup_enable=cpuset cgroup_memory=1 cgroup_enable=memory
[    0.000000] Unknown kernel command line parameters "earlyprintk splash=verbose ubootpart=dc861576-01 cgroup_enable=memory cgroup_memory=1", will be passed to user space.
[    0.000000] printk: log buffer data + meta data: 262144 + 917504 = 1179648 bytes
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 3MB
[    0.000000] software IO TLB: area num 8.
[    0.000000] software IO TLB: mapped [mem 0x00000000f6ce3000-0x00000000f70e3000] (4MB)
[    0.000000] Fallback order for Node 0: 0
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 1015296
[    0.000000] Policy zone: DMA
[    0.000000] mem auto-init: stack:all(zero), heap alloc:on, heap free:off
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=6, Nodes=1
[    0.000000] ftrace: allocating 56318 entries in 220 pages
[    0.000000] ftrace: allocated 220 pages with 5 groups
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=6.
[    0.000000]  Trampoline variant of Tasks RCU enabled.
[    0.000000]  Rude variant of Tasks RCU enabled.
[    0.000000]  Tracing variant of Tasks RCU enabled.
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=6
[    0.000000] RCU Tasks: Setting shift to 3 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=6.
[    0.000000] RCU Tasks Rude: Setting shift to 3 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=6.
[    0.000000] RCU Tasks Trace: Setting shift to 3 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=6.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
[    0.000000] GIC: enabling workaround for GICv3: Insecure RK3399 integration
[    0.000000] GICv3: 256 SPIs implemented
[    0.000000] GICv3: 0 Extended SPIs implemented
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GICv3: GICv3 features: 16 PPIs
[    0.000000] GICv3: Broken GIC integration, security disabled
[    0.000000] GICv3: GICD_CTLR.DS=1, SCR_EL3.FIQ=0
[    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x00000000fef00000
[    0.000000] ITS [mem 0xfee20000-0xfee3ffff]
[    0.000000] ITS@0x00000000fee20000: allocated 65536 Devices @680000 (flat, esz 8, psz 64K, shr 0)
[    0.000000] ITS: using cache flushing for cmd queue
[    0.000000] GICv3: using LPI property table @0x0000000000610000
[    0.000000] GIC: using cache flushing for LPI property table
[    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000000620000
[    0.000000] GICv3: GIC: PPI partition interrupt-partition-0[0] { /cpus/cpu@0[0] /cpus/cpu@1[1] /cpus/cpu@2[2] /cpus/cpu@3[3] }
[    0.000000] GICv3: GIC: PPI partition interrupt-partition-1[1] { /cpus/cpu@100[4] /cpus/cpu@101[5] }
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer running at 24.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x588fe9dc0, max_idle_ns: 440795202592 ns
[    0.000001] sched_clock: 56 bits at 24MHz, resolution 41ns, wraps every 4398046511097ns
[    0.001599] Console: colour dummy device 80x25
[    0.001625] printk: legacy console [tty1] enabled
[    0.003164] Calibrating delay loop (skipped), value calculated using timer frequency.. 48.00 BogoMIPS (lpj=96000)
[    0.003217] pid_max: default: 32768 minimum: 301
[    0.003424] LSM: initializing lsm=capability,yama,apparmor
[    0.003547] Yama: becoming mindful.
[    0.004052] AppArmor: AppArmor initialized
[    0.004239] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.004300] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.009172] rcu: Hierarchical SRCU implementation.
[    0.009222] rcu:     Max phase no-delay instances is 1000.
[    0.009732] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[    0.011469] EFI services will not be available.
[    0.012154] smp: Bringing up secondary CPUs ...
[    0.013256] Detected VIPT I-cache on CPU1
[    0.013534] GICv3: CPU1: found redistributor 1 region 0:0x00000000fef20000
[    0.013561] GICv3: CPU1: using allocated LPI pending table @0x0000000000630000
[    0.013635] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.014866] Detected VIPT I-cache on CPU2
[    0.015115] GICv3: CPU2: found redistributor 2 region 0:0x00000000fef40000
[    0.015138] GICv3: CPU2: using allocated LPI pending table @0x0000000000640000
[    0.015191] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.016437] Detected VIPT I-cache on CPU3
[    0.016682] GICv3: CPU3: found redistributor 3 region 0:0x00000000fef60000
[    0.016705] GICv3: CPU3: using allocated LPI pending table @0x0000000000650000
[    0.016757] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.017939] CPU features: detected: Spectre-v2
[    0.017955] CPU features: detected: Spectre-v3a
[    0.017966] CPU features: detected: Spectre-BHB
[    0.017976] CPU features: detected: ARM erratum 1742098
[    0.017986] CPU features: detected: ARM errata 1165522, 1319367, or 1530923
[    0.017995] Detected PIPT I-cache on CPU4
[    0.018219] GICv3: CPU4: found redistributor 100 region 0:0x00000000fef80000
[    0.018239] GICv3: CPU4: using allocated LPI pending table @0x0000000000660000
[    0.018286] CPU4: Booted secondary processor 0x0000000100 [0x410fd082]
[    0.019422] Detected PIPT I-cache on CPU5
[    0.019627] GICv3: CPU5: found redistributor 101 region 0:0x00000000fefa0000
[    0.019646] GICv3: CPU5: using allocated LPI pending ta185584] loop: module loaded
[    2.187859] Key type psk registered
[    2.191588] rockchip-spi ff1d0000.spi: error -ENODEV: Failed to request optional TX DMA channel
[    2.192404] rockchip-spi ff1d0000.spi: error -ENODEV: Failed to request optional RX DMA channel
[    2.193884] spi-nor spi1.0: supply vcc not found, using dummy regulator
[    2.217691] rockchip-spi ff1e0000.spi: error -ENODEV: Failed to request optional TX DMA channel
[    2.218507] rockchip-spi ff1e0000.spi: error -ENODEV: Failed to request optional RX DMA channel
[    2.223730] thunder_xcv, ver 1.0
[    2.224098] thunder_bgx, ver 1.0
[    2.224453] nicpf, ver 1.0
[    2.238678] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    2.239218] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    2.240061] xhci-hcd xhci-hcd.0.auto: hcc params 0x0220fe64 hci version 0x110 quirks 0x0000808002000010
[    2.240990] xhci-hcd xhci-hcd.0.auto: irq 47, io mem 0xfe900000
[    2.241751] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    2.242261] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 2
[    2.242960] xhci-hcd xhci-hcd.0.auto: Host supports USB 3.0 SuperSpeed
[    2.243789] usb usb1: New USB device found, idVendor=1d6b, idProduct=0002, bcdDevice= 6.18
[    2.244541] usb usb1: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.245225] usb usb1: Product: xHCI Host Controller
[    2.245675] usb usb1: Manufacturer: Linux 6.18.30-current-rockchip64 xhci-hcd
[    2.246318] usb usb1: SerialNumber: xhci-hcd.0.auto
[    2.247452] hub 1-0:1.0: USB hub found
[    2.247844] hub 1-0:1.0: 1 port detected
[    2.248795] usb usb2: We don't know the algorithms for LPM for this host, disabling LPM.
[    2.249697] usb usb2: New USB device found, idVendor=1d6b, idProduct=0003, bcdDevice= 6.18
[    2.250449] usb usb2: New USB device strings: Mfr=3, Product=2, SerialNumber=1
[    2.251103] usb usb2: Product: xHCI Host Controller
[    2.251549] usb usb2: Manufacturer: Linux 6.18.30-current-rockchip64 xhci-hcd
[    2.252192] usb usb2: SerialNumber: xhci-hcd.0.auto
[    2.253303] hub 2-0:1.0: USB hub found
[    2.253692] hub 2-0:1.0: 1 port detected
[    2.254608] usbcore: registered new interface driver usb-storage
[    2.255507] usbcore: registered new device driver onboard-usb-dev
[    2.259338] mousedev: PS/2 mouse device common for all mice
[    2.260464] i2c_dev: i2c /dev entries driver
[    2.264336] /i2c@ff3c0000/pmic@1b: Fixed dependency cycle(s) with /i2c@ff3c0000/pmic@1b/regulators/LDO_REG8
[    2.267805] /i2c@ff3d0000/typec-portc@22/connector: Fixed dependency cycle(s) with /phy@ff7c0000/dp-port
[    2.268724] /i2c@ff3d0000/typec-portc@22/connector: Fixed dependency cycle(s) with /phy@ff7c0000/usb3-port
[    2.269615] /i2c@ff3d0000/typec-portc@22/connector: Fixed dependency cycle(s) with /syscon@ff770000/usb2phy@e450
[    2.276687] dw_wdt ff848000.watchdog: No valid TOPs array specified
[    2.279984] sdhci: Secure Digital Host Controller Interface driver
[    2.280554] sdhci: Copyright(c) Pierre Ossman
[    2.281075] Synopsys Designware Multimedia Card Interface Driver
[    2.282845] sdhci-pltfm: SDHCI platform and OF driver helper
[    2.286081] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[    2.287223] hid: raw HID events driver (C) Jiri Kosina
[    2.287839] usbcore: registered new interface driver usbhid
[    2.288347] usbhid: USB HID core driver
[    2.290686] rockchip-dfi ff630000.dfi: dfi initialized, dram type: 0x7, channels: 2
[    2.295856] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 (0,8000003f) counters available
[    2.299051] hw perfevents: enabled with armv8_cortex_a72 PMU driver, 7 (0,8000003f) counters available
[    2.302149] NET: Registered PF_INET6 protocol family
[    2.305586] Segment Routing with IPv6
[    2.306002] In-situ OAM (IOAM) with IPv6
[    2.306445] NET: Registered PF_PACKET protocol family
[    2.306958] bridge: filtering via arp/ip/ip6tables is no longer available by default. Update your scripts to load br_netfilter if you need this.
[    2.309046] Key type dns_resolver registered
[    2.323436] registered taskstats version 1
[    2.324422] Loading compiled-in X.509 certificates
[    2.342373] zswap: loaded using pool zstd
[    2.343544] Demotion targets for Node 0: null
[    2.346646] Key type .fscrypt registered
[    2.347032] Key type fscrypt-provisioning registered
[    2.347858] Key type encrypted registered
[    2.348232] AppArmor: AppArmor sha256 policy hashing enabled
[    2.400143] fan53555-regulator 0-0040: FAN53555 Option[8] Rev[1] Detected!
[    2.400699] fan53555-regulator 0-0041: FAN53555 Option[8] Rev[1] Detected!
[    2.404882] rk_gmac-dwmac fe300000.ethernet: IRQ eth_wake_irq not found
[    2.405505] rk_gmac-dwmac fe300000.ethernet: IRQ sfty not found
[    2.406109] rk_gmac-dwmac fe300000.ethernet: Deprecated MDIO bus assumption used
[    2.406830] rk_gmac-dwmac fe300000.ethernet: PTP uses main clock
[    2.407587] rk_gmac-dwmac fe300000.ethernet: integrated PHY? (no).
[    2.413208] rk_gmac-dwmac fe300000.ethernet: init for rgmii with delay (tx: 0x28, rx: 0x20)
[    2.414985] rk_gmac-dwmac fe300000.ethernet: User ID: 0x10, Synopsys ID: 0x35
[    2.415662] rk_gmac-dwmac fe300000.ethernet:         DWMAC1000
[    2.416141] rk_gmac-dwmac fe300000.ethernet: DMA HW capability register supported
[    2.416869] rk_gmac-dwmac fe300000.ethernet: RX Checksum Offload Engine supported
[    2.417552] rk_gmac-dwmac fe300000.ethernet: COE Type 2
[    2.418034] rk_gmac-dwmac fe300000.ethernet: TX Checksum insertion supported
[    2.418667] rk_gmac-dwmac fe300000.ethernet: Wake-Up On Lan supported
[    2.419355] rk_gmac-dwmac fe300000.ethernet: Normal descriptors
[    2.419901] rk_gmac-dwmac fe300000.ethernet: Ring mode enabled
[    2.420428] rk_gmac-dwmac fe300000.ethernet: Enable RX Mitigation via HW Watchdog Timer
[    2.492864] usb 1-1: new high-speed USB device number 2 using xhci-hcd
[    2.553267] RTL8211F Gigabit Ethernet stmmac-0:00: attached PHY driver (mii_bus:phy_addr=stmmac-0:00, irq=POLL)
[    2.554201] RTL8211F Gigabit Ethernet stmmac-0:01: attached PHY driver (mii_bus:phy_addr=stmmac-0:01, irq=POLL)
[    2.557502] pca953x 2-0020: using no AI
[    2.578770] rk808-regulator rk808-regulator.2.auto: max buck steps per change: 4
[    2.617133] rockchip-pcie f8000000.pcie: host bridge /pcie@f8000000 ranges:
[    2.617447] dwmmc_rockchip fe320000.mmc: IDMAC supports 32-bit address mode.
[    2.617817] rockchip-pcie f8000000.pcie:      MEM 0x00fa000000..0x00fbdfffff -> 0x00fa000000
[    2.618426] dwmmc_rockchip fe320000.mmc: Using internal DMA controller.
[    2.619109] mmc1: CQHCI version 5.10
[    2.619157] rockchip-pcie f8000000.pcie:       IO 0x00fbe00000..0x00fbefffff -> 0x00fbe00000
[    2.619740] dwmmc_rockchip fe320000.mmc: Version ID is 270a
[    2.620361] rockchip-pcie f8000000.pcie: no bus scan delay, default to 0 ms
[    2.620913] dwmmc_rockchip fe320000.mmc: DW MMC controller at irq 70,32 bit host data width,256 deep fifo
[    2.623291] dwmmc_rockchip fe320000.mmc: Got CD GPIO
[    2.631661] usb 1-1: New USB device found, idVendor=2109, idProduct=2815, bcdDevice= 7.04
[    2.632407] usb 1-1: New USB device strings: Mfr=1, Product=2, SerialNumber=0
[    2.633079] usb 1-1: Product: USB2.0 Hub
[    2.633538] usb 1-1: Manufacturer: VIA Labs, Inc.
[    2.636675] mmc_host mmc0: Bus speed (slot 0) = 400000Hz (slot req 400000Hz, actual 400000HZ div = 0)
[    2.648517] mmc1: SDHCI controller on fe330000.mmc [fe330000.mmc] using ADMA
[    2.692830] hub 1-1:1.0: USB hub found
[    2.693908] hub 1-1:1.0: 4 ports detected
[    2.720760] mmc1: Command Queue Engine enabled
[    2.721204] mmc1: new HS400 Enhanced strobe MMC card at address 0001
[    2.723545] mmcblk1: mmc1:0001 AJTD4R 14.6 GiB
[    2.727832] mmcblk1boot0: mmc1:0001 AJTD4R 4.00 MiB
[    2.731824] mmcblk1boot1: mmc1:0001 AJTD4R 4.00 MiB
[    2.735727] mmcblk1rpmb: mmc1:0001 AJTD4R 4.00 MiB, chardev (242:0)
[    2.756038] usb 2-1: new SuperSpeed USB device number 2 using xhci-hcd
[    2.831185] mmc_host mmc0: Bus speed (slot 0) = 148500000Hz (slot req 150000000Hz, actual 148500000HZ div = 0)
[    2.833193] rockchip-pcie f8000000.pcie: wait 0 ms (from device tree) before bus scan
[    2.835150] rockchip-pcie f8000000.pcie: PCI host bridge to bus 0000:00
[    2.835781] pci_bus 0000:00: root bus resource [bus 00-1f]
[    2.836298] pci_bus 0000:00: root bus resource [mem 0xfa000000-0xfbdfffff]
[    2.837221] pci_bus 0000:00: root bus resource [io  0x0000-0xfffff] (bus address [0xfbe00000-0xfbefffff])
[    2.838115] pci 0000:00:00.0: [1d87:0100] type 01 class 0x060400 PCIe Root Port
[    2.838797] pci 0000:00:00.0: PCI bridge to [bus 00]
[    2.839252] pci 0000:00:00.0:   bridge window [mem 0x00000000-0x000fffff]
[    2.839935] pci 0000:00:00.0: supports D1
[    2.840300] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
[    2.845118] pci 0000:00:00.0: bridge configuration invalid ([bus 00-00]), reconfiguring
[    2.896013] SError Interrupt on CPU4, code 0x00000000bf000002 -- SError
[    2.896031] CPU: 4 UID: 0 PID: 55 Comm: kworker/u26:1 Tainted: G   M                6.18.30-current-rockchip64 #2 PREEMPT
[    2.896044] Tainted: [M]=MACHINE_CHECK
[    2.896047] Hardware name: Kobol Helios64 (DT)
[    2.896053] Workqueue: events_unbound deferred_probe_work_func
[    2.896077] pstate: 600000c5 (nZCv daIF -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[    2.896086] pc : rockchip_pcie_rd_conf+0x184/0x290
[    2.896098] lr : rockchip_pcie_rd_conf+0x178/0x290
[    2.896106] sp : ffff800080b537d0
[    2.896109] x29: ffff800080b537d0 x28: ffffd9b5ba3a3d68 x27: 0000000000000000
[    2.896121] x26: 0000000000000001 x25: 0000000000000000 x24: ffffd9b5ba52afb0
[    2.896132] x23: 0000000000000000 x22: ffff800080b538a4 x21: ffff800080b53804
[    2.896142] x20: 0000000000000000 x19: 0000000000000004 x18: 00000000ffffffff
[    2.896152] x17: 6572202c295d3030 x16: 2d3030207375625b x15: ffff800080b53670
[    2.896162] x14: ffff000001a45a1c x13: ffff000001a45290 x12: dead000000000040
[    2.896172] x11: ffffff800000007c x10: 0000000000000000 x9 : ffffd9b5b86c6288
[    2.896182] x8 : 000000003d4d554e x7 : ffff00000b490bc0 x6 : ffff00000b491000
[    2.896192] x5 : ffff00000b491800 x4 : ffff800085000000 x3 : 0000000000c00008
[    2.896202] x2 : 000000000080000a x1 : ffff800085c00008 x0 : ffff800085c0000c
[    2.896214] Kernel panic - not syncing: Asynchronous SError Interrupt
[    2.896219] CPU: 4 UID: 0 PID: 55 Comm: kworker/u26:1 Tainted: G   M                6.18.30-current-rockchip64 #2 PREEMPT
[    2.896229] Tainted: [M]=MACHINE_CHECK
[    2.896232] Hardware name: Kobol Helios64 (DT)
[    2.896236] Workqueue: events_unbound deferred_probe_work_func
[    2.896248] Call trace:
[    2.896251]  show_stack+0x20/0x38 (C)
[    2.896263]  dump_stack_lvl+0x34/0x90
[    2.896275]  dump_stack+0x18/0x28
[    2.896283]  vpanic+0x328/0x378
[    2.896292]  panic+0x68/0x70
[    2.896300]  nmi_panic+0x74/0x80
[    2.896308]  arm64_serror_panic+0x78/0x90
[    2.896317]  do_serror+0x60/0xc0
[    2.896325]  el1h_64_error_handler+0x34/0x50
[    2.896338]  el1h_64_error+0x6c/0x70
[    2.896345]  rockchip_pcie_rd_conf+0x184/0x290 (P)
[    2.896355]  pci_bus_read_config_dword+0x88/0xf8
[    2.896365]  pci_bus_generic_read_dev_vendor_id+0x38/0x1a0
[    2.896376]  pci_scan_single_device+0xb4/0x120
[    2.896387]  pci_scan_slot+0x74/0x218
[    2.896396]  pci_scan_child_bus_extend+0x50/0x2e0
[    2.896407]  pci_scan_bridge_extend+0x2c4/0x608
[    2.896417]  pci_scan_child_bus_extend+0x1c4/0x2e0
[    2.896427]  pci_scan_root_bus_bridge+0x6c/0xe8
[    2.896438]  pci_host_probe+0x38/0x118
[    2.896448]  rockchip_pcie_probe+0x548/0x678
[    2.896457]  platform_probe+0x64/0xa8
[    2.896465]  really_probe+0xc8/0x3a0
[    2.896476]  __driver_probe_device+0x8c/0x1b0
[    2.896487]  driver_probe_device+0x44/0x120
[    2.896498]  __device_attach_driver+0xc4/0x168
[    2.896510]  bus_for_each_drv+0x90/0xf8
[    2.896520]  __device_attach+0xa8/0x1c8
[    2.896532]  device_initial_probe+0x1c/0x30
[    2.896543]  bus_probe_device+0xb4/0xc0
[    2.896554]  deferred_probe_work_func+0xa4/0x100
[    2.896567]  process_one_work+0x174/0x3e8
[    2.896584]  worker_thread+0x194/0x328
[    2.896599]  kthread+0x14c/0x208
[    2.896609]  ret_from_fork+0x10/0x20
[    2.896624] SMP: stopping secondary CPUs
[    2.896890] Kernel Offset: 0x59b537e00000 from 0xffff800080000000
[    2.896895] PHYS_OFFSET: 0x0
[    2.896898] CPU features: 0x100000,04125800,40004001,0400421b
[    2.896904] Memory Limit: none
[    2.925045] ---[ end Kernel panic - not syncing: Asynchronous SError Interrupt ]---

 

Edited by SymbiosisSystems

Join the conversation

You can post now and register later. If you have an account, sign in now to post with your account.
Note: Your post will require moderator approval before it will be visible.

Guest
Reply to this topic...

×   Pasted as rich text.   Restore formatting

  Only 75 emoji are allowed.

×   Your link has been automatically embedded.   Display as a link instead

×   Your previous content has been restored.   Clear editor

×   You cannot paste images directly. Upload or insert images from URL.

Loading...
×
×
  • Create New...

Important Information

Terms of Use - Privacy Policy - Guidelines