Orion O6 Debug Party Invitation

Also logs from running BSA ACS in EFI shell?

Run as Bsa.efi and also as Bsa.efi -v 1 for verbose output. Board will require hardware reboot after each run.

Is CONFIG_ACPI_CPPC_CPUFREQ enabled?

Try earlycon=pl011,mmio32,0x40d0000 for serial console(UART2).
EDIT: loglevel=0 ?

Hi Naoki!

Yes, but it’s in module:

$ grep CPPC .config
CONFIG_ACPI_CPPC_CPUFREQ=m
CONFIG_ACPI_CPPC_CPUFREQ_FIE=y
CONFIG_ACPI_CPPC_LIB=y

I had tried to load it and it reported “no such device” ot something like this, so I didn’t insist. But I could rebuild the kernel with it set to “y” just in case it matters. I remember keeping it as a module for the Altra board that is a bit capricious and occasionally switches to 1 GHz until either a reboot or a reload of the module :slight_smile:

OK will try that, thank you! I suspected something around this without knowing what to enter, even though I did see that the UART was indeed pl011.

Regarding loglevel=0, I was about to say “no I don’t have this” but looking at the cmdline, I’m indeed seeing it on my alt kernel now! I don’t know how I managed to get that one by hacking on the grub.cfg but it certainly does not help :slight_smile: Ah it comes from my attempt to boot the fedora kernel, where it’s present. I’ll drop it. Good catch, thank you!

@RadxaNaoki I can confirm that the console is now OK, but CPPC… still nothing, even once hard and updated to 6.12.13. There isn’t even a message about it during boot, so I suspect it’s not enumerated in the ACPI tables. I looked a bit for it but I’m not familiar with ACPI tables so I’m not sure what to look for.

Please try vanilla defconfig.

$ uname -a
Linux orion-o6 6.12.13 #1 SMP PREEMPT Thu Feb 13 00:53:55 UTC 2025 aarch64 aarch64 aarch64 GNU/Linux
$ lsmod | grep cppc
cppc_cpufreq           12288  0
$ ls /sys/devices/system/cpu/cpu0/acpi_cppc/
feedback_ctrs    lowest_freq            nominal_freq    wraparound_time
guaranteed_perf  lowest_nonlinear_perf  nominal_perf
highest_perf     lowest_perf            reference_perf
$ cat /sys/devices/system/cpu/cpufreq/policy0/scaling_{min,max}_freq
800000
2500000

Please check /sys/firmware/acpi/tables/SSDT2.

1 Like

It seems that Windows 24H2 has some issues in supporting different PE architectures. You can try disabling all the little cores (core 0-3) to see if it works.

SSDT2 is properly there. I’ll then try defconfig, thank you for the test!

OK now I can confirm that cppc_cpufreq in defconfig works properly, that’s perfect, thanks! I’ll diff the configs to figure what makes the difference, but for now it looks like mainline is working fine for me.

Here’s from Debian (Linux debian 6.12.9+bpo-arm64 #1 SMP Debian 6.12.9-1~bpo12+1 (2025-01-19) aarch64 GNU/Linux)

Can’t get bsa.efi to log to file. I run Bsa.efi -v 1 -f bsa.out, a bunch of tests look to pass and then the screen goes corrupt, but nothing in the file on reboot. I’ll try again at some point

2 Likes

For BSA ACS it is better to connect serial console and log it’s output rather than trying to log into file.

ACS leaves system in a state where reboot is required.

I got BSA ACS (ACPI mode) results from one of board owners.

Looks quite nice, some issues present, part of them can be solved by firmware.

  • GTDT needs EL2 Virt Timer (someone used arm v8.0 firmware as base)
  • SPCR should be added as it is mandatory table
  • there are no system timers in tables
  • also no PE always-on timers

I suspect that whoever did firmware did not looked at BSA ACS or FWTS results.

2 Likes

Just FYI, I could bisect my configs this afternoon and finally found the option that is required for CPPC to work. The config requires CONFIG_ARM64_AMU_EXTN=y. It was disabled in my generic config, as the help text says that using it on non-compliant firmware can result in hangs at boot. Now CPPC seems OK on mainline with my portable config. I’ll retest later if kernels having this option still boot fine on RK3588. We’re getting close to something quite clean now.

3 Likes

Upstreaming starts:

https://patchwork.kernel.org/project/linux-arm-kernel/patch/20250220084020.628704-2-peter.chen@cixtech.com/

6 Likes

yep, I noticed it yesterday :wink:

Great news :love_you_gesture:
I have question regarding pcie slot, it was said that no bifurcation support at this time, is that hardware limitation or just no plans on software for that now?

Hardware limitation :frowning:

2 Likes

Is JTAG/SWD available on easy-access pin/header and is it unlocked/unlockable on the SoC? (Secure boot seems present, if so this might disable it).