BPI Team. Make Kernel 6 support on BPI-W2. Please

Just take latest Kernel (now it 6.6.7) and make BASE SUPPORT on BPI-W2 (SATA, ETH, eMMC, SD). Perhaps rtd1296 is already in kernel support, as I have seen some pieces of code with this name. This will help many people, because this thing can’t even run docker, which requires some functions of new kernels. If you assemble the latest core for this device, you may even increase its sales, as it is perfect for (almost) any tasks that require full-fledged SATA. I looked at a large number of single boards, but this one was the one that satisfied me with the connectors. Thanks in advance, I hope you can.

1 Like

P.S.: I tried to build a clean kernel, but I couldn’t run it or build uImage. sinovoip, I will be glad for your support, like many other users.

This is what I get in the UART when I try to build my version of kernel 6. There is nothing further.

[Info] convert some env variable to fdt:factory node
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
Info: Try to add new node /factory...
libfdt fdt_add_subnode(): FDT_ERR_NOSPACE
## Booting kernel from Legacy Image at 03000000 ...
   Image Name:   Linux kernel
   Image Type:   AArch64 Linux Kernel Image (uncompressed)
   Data Size:    29811200 Bytes = 28.4 MiB
   Load Address: 03000000
   Entry Point:  03000000
   Verifying Checksum ... OK
   Loading Kernel Image ... OK

[ROS: openRPC() intr_scpu_dev_r buf  0x00e2ffa1 s  0x00e2ffa1 e  0x00e4ffa1 i  0xd4e2ffa1
[ROS: openStubRPC() intr_w buf  0x00e6ffa1 s  0x00e6ffa1 e  0x00e8ffa1 i  0x44e7ffa1[AVCPU] Set Debug level flag  0x8fc6c4bc *flag  0x0fc5cfa0 ucache  0xafc5cfa0
[AVCPU] Set Debug level *ptrDebugFlag  0x00000001
-------------------
Audio Version = 166265 (Kylin)
Common Version = 0
Binary src compiled at Sep 21 2017 00:20:54
Note =
-------------------




[A] gloabl malloc size  0x001fff88

This boot log of 4.9.119. Looks like kernel 6 can’t startup

[Info] convert some env variable to fdt:factory node
libfdt fdt_path_offset() returned FDT_ERR_NOTFOUND
Info: Try to add new node /factory...
libfdt fdt_add_subnode(): FDT_ERR_NOSPACE
Wrong Image Format for do_booti command
ERROR: can't get kernel image!
## Flattened Device Tree blob at 02100000
   Booting using the fdt blob at 0x2100000
   reserving fdt memory region: addr=0 size=100000
   reserving fdt memory region: addr=1f000 size=1000
   reserving fdt memory region: addr=1ffe000 size=4000
   reserving fdt memory region: addr=2200000 size=400000
   reserving fdt memory region: addr=2600000 size=c00000
   reserving fdt memory region: addr=3200000 size=b800000
   reserving fdt memory region: addr=10000000 size=14000
   reserving fdt memory region: addr=14200000 size=9200000
   Using Device Tree in place at 0000000002100000, end 000000000210e698
[FDT] mac = 00:10:20:30:40:50
Unable to update property /gmac@0x98060000:local-mac-address, err=FDT_ERR_NOTFOUND
[FDT] update MAC address
Bring UP slave CPUs

Starting Kernel ...

flushing dcache successfully.

[ROS: openRPC() intr_scpu_dev_r buf  0x00e2ffa1 s  0x00e2ffa1 e  0x00e4ffa1 i  0x00e2ffa1
[ROS: openStubRPC() intr_w buf  0x00e6ffa1 s  0x00e6ffa1 e  0x00e8ffa1 i  0x00e6ffa1[AVCPU] Set Debug level flag  0x8fc6c4bc *flag  0x0fc5cfa0 ucache  0xafc5cfa0
[AVCPU] Set Debug level *ptrDebugFlag  0x00000001
-------------------
Audio Version = 166265 (Kylin)
Common Version = 0
Binary src compiled at Sep 21 2017 00:20:54
Note =
-------------------




[A] gloabl malloc size  0x001fff88

This is just not that cheap and simple and is impossible to cover with hw sales margins.

Hardware manufacturers does not do Linux (they get it from SoC maker and apply small modifications to fit their case). They do not port Linux to mainline kernel as this game is in another league and it is impossible to cover those expense. Not to mention maintaining. This is done by community projects such as Armbian (there you could find such activity in forums and pull requests), OpenWRT, LibreElec … and/or professionals such as Collabora, Bootlin, … which will follow your wish upon payment for their living costs.

I think W2 Image Map - Banana Pi Wiki might be terribly outdated.

GitHub - jjm2473/rtd1295-next: [WIP]Linux kernel 5.9.0 for rtd129x, with eMMC supported has some work on 5.9 kernel.

I’ll try again build kernel 6 for bpi-w2. Maybe it will success.

my log goes a bit further FATAL: Audio ROS Unexpected interrupt error!!

Audio Version = 166265 (Kylin) Common Version = 0 Binary src compiled at Sep 21 2017 00:20:54 Note =

EPC: 0x8f9b1ee8 Cause: 0x00000014 Problem results from co-processor 0 Interrupt pending is 0x00000000 ExcCode = AdES Return ADDR: 0x8f9b24d0 Bad ADDR: 0xffffffff status: 0xb000db04 estatus: 0x00ef0000 ECAUSE: 0x00000000 Running Task is unknown Audio CPU Registers: z0: 0x00000000, at: 0xfffffffe, v0: 0xafc5cfa0, v1: 0x00000001 a0: 0x8fc6b534, a1: 0xffffffff, a2: 0x00000024, a3: 0x00000000 t0: 0xb000db01, t1: 0x00000062, t2: 0x00000000, t3: 0x00000000 t4: 0x8f9d63a4, t5: 0x8f9d63a8, t6: 0x00000000, t7: 0x00000000 s0: 0x00000000, s1: 0x00000000, s2: 0x00000000, s3: 0x00000000 s4: 0x00000000, s5: 0x00000000, s6: 0x00000000, s7: 0x00000000 t8: 0x03ff03ff, t9: 0xd8004c2c, k0: 0x8fc5cfb8, k1: 0x8f933b48 gp: 0x8fcc9330, sp: 0x8fc6c270, s8: 0x8fc6c270, ra: 0x8f9b24d0

===== Audio Call Trace: SP = 0x8fc6c270 ===== [ 0x8f9343a4 ] 0x0000085c/ 0x00000864 (stk_used:80 ): ROSUnexpectedInterruptHandler [ 0x8f9b24d0 ] 0x00000258/ 0x000002f0 (stk_used:64 ): writeInt

Have you included binary firmware files from oroginal vendor image?

Did you get somewhere? I am interested to revive this board, as it has everything I need, hw-wise.

OK, so I tried kernel 5.9-rc5 from GitHub - jjm2473/rtd1295-next: [WIP]Linux kernel 5.9.0 for rtd129x, with eMMC supported

The problem with this driver is, that while it boots and I do get to shell (EMMC works), rootfs of my choice (Ubuntu 26.04) can’t start systemd due to outdated features in this kernel. Latest systemd depends on certain features which are present as early merges, or not preset at all. Which excludes 5.9 out. Second, SD card doesn’t work at all. Tried everything I could, but it was always in conflict with sdio. Some calls to it were hardcoded.

So, that pushed me to latest 6.19-rc5 kernel. I had to remade whole toolchain (which still lacks u-boot of recent version to build), I also had to remake and rework DTB, namely rtd1296-bananapi-w2.dtb (new file) and heavy update to rtd129x.dtsi, which is really a simpleton in Vanilla kernel, compared to vendor’s 4.9.

So, kernel boots. But I am again facing SD support issue. RTL driver is not present, so I had to pick Arasan, which is compatible with this SOC. Currently looking for correct IRQs and clock names.

But - it is alive and the driver is probing!

Enter console mode, disable watchdog ...

BPI-W2> setenv kernel_addr 0x01080000
BPI-W2> setenv fdt_addr 0x08000000
BPI-W2> setenv initrd_addr 0x0a000000
BPI-W2> fatload sd 0:1 ${kernel_addr} bananapi/bpi-w2/linux/uImage-6.19
reading bananapi/bpi-w2/linux/uImage-6.19
35750464 bytes read in 1859 ms (18.3 MiB/s)
BPI-W2> fatload sd 0:1 ${fdt_addr} bananapi/bpi-w2/linux/rtd1296-bananapi-w2.dtb
reading bananapi/bpi-w2/linux/rtd1296-bananapi-w2.dtb
16690 bytes read in 8 ms (2 MiB/s)
BPI-W2> fatload sd 0:1 ${initrd_addr} bananapi/bpi-w2/linux/uInitrd-6.19
reading bananapi/bpi-w2/linux/uInitrd-6.19
14651166 bytes read in 690 ms (20.2 MiB/s)
BPI-W2> setenv bootargs "console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait earlycon=uart8250,mmio32,0x98007800 keep_bootcon nosmp lpj=108000 init=/bin/sh"
BPI-W2> bootm ${kernel_addr} ${initrd_addr} ${fdt_addr}
## Booting kernel from Legacy Image at 01080000 ...
   Image Name:   Linux-6.19
   Image Type:   AArch64 Linux Kernel Image (uncompressed)
   Data Size:    35750400 Bytes = 34.1 MiB
   Load Address: 01080000
   Entry Point:  01080000
   Verifying Checksum ... OK
## Loading init Ramdisk from Legacy Image at 0a000000 ...
   Image Name:   BPI-W2-Ramdisk
   Image Type:   AArch64 Linux RAMDisk Image (gzip compressed)
   Data Size:    14651102 Bytes = 14 MiB
   Load Address: 00000000
   Entry Point:  00000000
   Verifying Checksum ... OK
## Flattened Device Tree blob at 08000000
   Booting using the fdt blob at 0x8000000
   Loading Kernel Image ... OK
   reserving fdt memory region: addr=0 size=1f000
   reserving fdt memory region: addr=1f000 size=e1000
   reserving fdt memory region: addr=1b00000 size=4be000
   Using Device Tree in place at 0000000008000000, end 0000000008007131
WARNING: could not set resume-entry-addr FDT_ERR_BADOFFSET.
[FDT] mac = 00:10:20:30:40:50
Unable to update property /gmac@98016000:local-mac-address, err=FDT_ERR_NOTFOUND
Unable to update property /gmac@0x98060000:local-mac-address, err=FDT_ERR_NOTFOUND
[FDT] update MAC address
Bring UP slave CPUs

Starting Kernel ...

flushing dcache successfully.
[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.19.0-rc5-BPI-W2-Kernel (root@ubuntu2604) (aarch64-linux-gnu-gcc (Ubuntu 15.2.0-7ubuntu1) 15.2.0, GNU ld (GNU Binutils for Ubuntu) 2.45.50.20251209) #4 SMP PREEMPT Wed Jan 14 21:05:20 U
TC 2026
[    0.000000] Machine model: Banana Pi BPI-W2
[    0.000000] earlycon: uart8250 at MMIO32 0x0000000098007800 (options '')
[    0.000000] printk: legacy bootconsole [uart8250] enabled
[    0.000000] printk: debug: skip boot console de-registration.
[    0.000000] efi: UEFI not found.
[    0.000000] [Firmware Bug]: Kernel image misaligned at boot, please fix your bootloader!
[    0.000000] OF: reserved mem: 0x000000000001f000..0x000000000001ffff (4 KiB) map non-reusable rpc@1f000
[    0.000000] OF: reserved mem: 0x0000000001ffe000..0x0000000002001fff (16 KiB) map non-reusable rpc@1ffe000
[    0.000000] OF: reserved mem: 0x0000000010100000..0x0000000010ffffff (15360 KiB) nomap non-reusable tee@10100000
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x000000000001f000-0x000000007fffffff]
[    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 0x000000000001f000-0x00000000100fffff]
[    0.000000]   node   0: [mem 0x0000000010100000-0x0000000010ffffff]
[    0.000000]   node   0: [mem 0x0000000011000000-0x000000007fffffff]
[    0.000000] Initmem setup node 0 [mem 0x000000000001f000-0x000000007fffffff]
[    0.000000] On node 0, zone DMA: 31 pages in unavailable ranges
[    0.000000] cma: Reserved 32 MiB at 0x000000007ba00000
[    0.000000] /cpus/cpu@1: missing enable-method property
[    0.000000] /cpus/cpu@2: missing enable-method property
[    0.000000] /cpus/cpu@3: missing enable-method property
[    0.000000] percpu: Embedded 31 pages/cpu s89240 r8192 d29544 u126976
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Kernel command line: console=ttyS0,115200 root=/dev/mmcblk0p2 rw rootwait earlycon=uart8250,mmio32,0x98007800 keep_bootcon nosmp lpj=108000 init=/bin/sh
[    0.000000] printk: log buffer data + meta data: 131072 + 458752 = 589824 bytes
[    0.000000] Dentry cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] Inode-cache hash table entries: 131072 (order: 8, 1048576 bytes, linear)
[    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 2MB
[    0.000000] software IO TLB: area num 1.
[    0.000000] software IO TLB: mapped [mem 0x000000007b600000-0x000000007b800000] (2MB)
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 524257
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, Nodes=1
[    0.000000] ftrace: allocating 66840 entries in 262 pages
[    0.000000] ftrace: allocated 262 pages with 3 groups
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=4 to nr_cpu_ids=1.
[    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=1
[    0.000000] RCU Tasks: Setting shift to 0 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=1.
[    0.000000] RCU Tasks Rude: Setting shift to 0 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=1.
[    0.000000] RCU Tasks Trace: Setting shift to 0 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=1.
[    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[    0.000000] Root IRQ handler: gic_handle_irq
[    0.000000] GIC: Using split EOI/Deactivate mode
[    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[    0.000000] arch_timer: cp15 timer running at 27.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x63a1e71a3, max_idle_ns: 440795203123 ns
[    0.000001] sched_clock: 56 bits at 27MHz, resolution 37ns, wraps every 4398046511093ns
[    0.009240] Console: colour dummy device 80x25
[    0.014301] Calibrating delay loop (skipped) preset value.. 54.00 BogoMIPS (lpj=108000)
[    0.023332] pid_max: default: 32768 minimum: 301
[    0.029227] LSM support for eBPF active
[    0.033656] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.042004] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.053797] rcu: Hierarchical SRCU implementation.
[    0.059218] rcu:     Max phase no-delay instances is 1000.
[    0.066256] EFI services will not be available.
[    0.071518] smp: Bringing up secondary CPUs ...
[    0.076642] smp: Brought up 1 node, 1 CPU
[    0.081167] SMP: Total of 1 processors activated.
[    0.086469] CPU: All CPU(s) started at EL2
[    0.091089] CPU features: detected: 32-bit EL0 Support
[    0.096883] CPU features: detected: CRC32 instructions
[    0.102687] CPU features: detected: PMUv3
[    0.107248] alternatives: applying system-wide alternatives
[    0.114401] Memory: 1937040K/2097028K available (22400K kernel code, 3168K rwdata, 6796K rodata, 2432K init, 504K bss, 122760K reserved, 32768K cma-reserved)
[    0.131380] devtmpfs: initialized
[    0.142161] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.153162] posixtimers hash table entries: 512 (order: 1, 8192 bytes, linear)
[    0.161323] futex hash table entries: 256 (16384 bytes on 1 NUMA nodes, total 16 KiB, linear).
[    0.171651] 23888 pages in range for non-PLT usage
[    0.171660] 515408 pages in range for PLT usage
[    0.177947] DMI not present or invalid.
[    0.187930] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.196694] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
[    0.205610] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.216067] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.225600] thermal_sys: Registered thermal governor 'step_wise'
[    0.225660] cpuidle: using governor ladder
[    0.237075] cpuidle: using governor menu
[    0.241521] NET: Registered PF_QIPCRTR protocol family
[    0.247645] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.255328] ASID allocator initialised with 65536 entries
[    0.266315] /soc@0/interrupt-controller@ff011000: Fixed dependency cycle(s) with /soc@0/interrupt-controller@ff011000
[    0.294556] /soc@0/bus@98000000/pci@4e000: Fixed dependency cycle(s) with /soc@0/bus@98000000/pci@4e000/pcie1-interrupt-controller
[    0.308691] /soc@0/bus@98000000/pci@50000: Fixed dependency cycle(s) with /soc@0/bus@98000000/pci@50000/pcie2-interrupt-controller
[    0.326541] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[    0.342223] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[    0.357315] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[    0.372988] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[    0.388075] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[    0.403747] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[    0.414826] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[    0.430498] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[    0.581887] raid6: neonx8   gen()  1445 MB/s
[    0.727011] raid6: neonx4   gen()  1437 MB/s
[    0.876151] raid6: neonx2   gen()  1363 MB/s
[    1.021267] raid6: neonx1   gen()  1164 MB/s
[    1.166379] raid6: int64x8  gen()   735 MB/s
[    1.311491] raid6: int64x4  gen()  1062 MB/s
[    1.456607] raid6: int64x2  gen()   964 MB/s
[    1.605731] raid6: int64x1  gen()   637 MB/s
[    1.614559] raid6: using algorithm neonx8 gen() 1445 MB/s
[    1.760926] raid6: .... xor() 1073 MB/s, rmw enabled
[    1.774545] raid6: using neon recovery algorithm
[    1.784056] ACPI: Interpreter disabled.
[    1.793876] SCSI subsystem initialized
[    1.806657] usbcore: registered new interface driver usbfs
[    1.816922] usbcore: registered new interface driver hub
[    1.830984] usbcore: registered new device driver usb
[    1.840879] mc: Linux media interface: v0.10
[    1.849774] videodev: Linux video capture interface: v2.00
[    1.864972] Advanced Linux Sound Architecture Driver Initialized.
[    1.881124] Bluetooth: Core ver 2.22
[    1.889210] NET: Registered PF_BLUETOOTH protocol family
[    1.903222] Bluetooth: HCI device and connection manager initialized
[    1.914405] Bluetooth: HCI socket layer initialized
[    1.927933] Bluetooth: L2CAP socket layer initialized
[    1.937658] Bluetooth: SCO socket layer initialized
[    1.951708] vgaarb: loaded
[    1.959549] clocksource: Switched to clocksource arch_sys_counter
[    1.972099] VFS: Disk quotas dquot_6.6.0
[    1.979589] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    1.996169] pnp: PnP ACPI: disabled
[    2.025572] NET: Registered PF_INET protocol family
[    2.035808] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    2.058018] tcp_listen_portaddr_hash hash table entries: 1024 (order: 2, 16384 bytes, linear)
[    2.079575] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    2.095573] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    2.115704] TCP bind hash table entries: 16384 (order: 7, 524288 bytes, linear)
[    2.132122] TCP: Hash tables configured (established 16384 bind 16384)
[    2.147632] UDP hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    2.163642] UDP-Lite hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    2.179833] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    2.192073] RPC: Registered named UNIX socket transport module.
[    2.207551] RPC: Registered udp transport module.
[    2.215574] RPC: Registered tcp transport module.
[    2.227551] RPC: Registered tcp-with-tls transport module.
[    2.239552] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    2.257140] PCI: CLS 0 bytes, default 64
[    2.267777] Trying to unpack rootfs image as initramfs...
[    2.275666] Initialise system trusted keyrings
[    2.287783] workingset: timestamp_bits=46 max_order=19 bucket_order=0
[    2.312313] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    2.336347] NFS: Registering the id_resolver key type
[    2.351708] Key type id_resolver registered
[    2.367633] Key type id_legacy registered
[    2.383699] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    2.403637] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    2.433116] Key type cifs.idmap registered
[    2.448130] fuse: init (API version 7.45)
[    2.464662] cryptd: max_cpu_qlen set to 1000
[    2.733369] xor: measuring software checksum speed
[    2.757390]    8regs           :  1798 MB/sec
[    2.773409]    32regs          :  1799 MB/sec
[    2.797856]    arm64_neon      :  1430 MB/sec
[    2.815562] xor: using function: 32regs (1799 MB/sec)
[    2.831575] async_tx: api initialized (async)
[    2.847597] Key type asymmetric registered
[    2.863569] Asymmetric key parser 'x509' registered
[    2.879921] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 249)
[    2.903900] io scheduler mq-deadline registered
[    2.919566] io scheduler kyber registered
[    2.940575] ledtrig-cpu: registered to indicate activity on CPUs
[    3.242620] Serial: 8250/16550 driver, 4 ports, IRQ sharing disabled
[    3.314344] brd: module loaded
[    3.351860] loop: module loaded
[    3.367813] zram: Added device: zram0
[    3.380285] usbcore: registered new interface driver rtsx_usb
[    3.408732] tun: Universal TUN/TAP device driver, 1.6
[    3.432154] PPP generic driver version 2.4.2
[    3.448258] PPP BSD Compression module registered
[    3.463586] PPP Deflate Compression module registered
[    3.479644] PPP MPPE Compression module registered
[    3.500277] usbcore: registered new device driver r8152-cfgselector
[    3.523985] usbcore: registered new interface driver r8152
[    3.543936] usbcore: registered new interface driver asix
[    3.563979] usbcore: registered new interface driver ax88179_178a
[    3.583950] usbcore: registered new interface driver cdc_ether
[    3.603960] usbcore: registered new interface driver cdc_eem
[    3.623900] usbcore: registered new interface driver net1080
[    3.643957] usbcore: registered new interface driver cdc_subset
[    3.663931] usbcore: registered new interface driver zaurus
[    3.687958] usbcore: registered new interface driver cdc_ncm
[    3.704011] usbcore: registered new interface driver r8153_ecm
[    3.728140] dwc3 98020000.usb: error -EBUSY: can't request region for resource [mem 0x9802c100-0x98028fff]
[    3.763607] dwc3 98020000.usb: probe with driver dwc3 failed with error -16
[    3.783732] dwc3 98029000.usb: error -EBUSY: can't request region for resource [mem 0x98035100-0x98031fff]
[    3.815599] dwc3 98029000.usb: probe with driver dwc3 failed with error -16
[    3.845441] usbcore: registered new interface driver uas
[    3.867929] usbcore: registered new interface driver usb-storage
[    3.891949] usbcore: registered new interface driver ums-realtek
[    3.907926] usbcore: registered new interface driver lvs
[    3.928441] mousedev: PS/2 mouse device common for all mice
[    3.952434] usbcore: registered new interface driver xpad
[    3.968865] i2c_dev: i2c /dev entries driver
[    3.988308] IR JVC protocol handler initialized
[    4.003596] IR MCE Keyboard/mouse protocol handler initialized
[    4.027586] IR NEC protocol handler initialized
[    4.039603] IR RC5(x/sz) protocol handler initialized
[    4.055582] IR RC6 protocol handler initialized
[    4.075604] IR SANYO protocol handler initialized
[    4.091569] IR Sharp protocol handler initialized
[    4.107611] IR Sony protocol handler initialized
[    4.123568] IR XMP protocol handler initialized
[    4.135962] usbcore: registered new interface driver uvcvideo
[    4.161373] device-mapper: uevent: version 1.0.3
[    4.176172] device-mapper: ioctl: 4.50.0-ioctl (2025-04-28) initialised: [email protected]
[    4.212935] sdhci: Secure Digital Host Controller Interface driver
[    4.235598] sdhci: Copyright(c) Pierre Ossman
[    4.248691] usbcore: registered new interface driver ushc
[    4.268170] sdhci-pltfm: SDHCI platform and OF driver helper
[    4.320995] hid: raw HID events driver (C) Jiri Kosina
[    4.392057] usbcore: registered new interface driver usbhid
[    4.415613] usbhid: USB HID core driver
[    4.429445] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 (0,8000003f) counters available
[    4.454006] usbcore: registered new interface driver snd-usb-audio
[    4.468798] u32 classifier
[    4.475600]     input device check on
[    4.483583]     Actions configured
[    4.496066] xt_time: kernel timezone is -0000
[    4.507691] IPVS: Registered protocols (TCP, UDP)
[    4.515603] IPVS: Connection hash table configured (size=4096, memory=32Kbytes)
[    4.531924] IPVS: ipvs loaded.
[    4.535387] IPVS: [rr] scheduler registered.
[    4.551922] Initializing XFRM netlink socket
[    4.559767] NET: Registered PF_INET6 protocol family
[    4.572985] Segment Routing with IPv6
[    4.583759] In-situ OAM (IOAM) with IPv6
[    4.591786] mip6: Mobile IPv6
[    4.595222] NET: Registered PF_PACKET protocol family
[    4.611738] PFKEY is deprecated and scheduled to be removed in 2027, please contact the netdev mailing list
[    4.635776] NET: Registered PF_KEY protocol family
[    4.643913] Bluetooth: RFCOMM TTY layer initialized
[    4.655732] Bluetooth: RFCOMM socket layer initialized
[    4.667681] Bluetooth: RFCOMM ver 1.11
[    4.675617] Bluetooth: BNEP (Ethernet Emulation) ver 1.3
[    4.687707] Bluetooth: BNEP filters: protocol multicast
[    4.699694] Bluetooth: BNEP socket layer initialized
[    4.711629] Bluetooth: HIDP (Human Interface Emulation) ver 1.2
[    4.724956] Freeing initrd memory: 14300K
[    4.729581] Bluetooth: HIDP socket layer initialized
[    4.811871] Key type dns_resolver registered
[    4.939146] registered taskstats version 1
[    4.945120] Loading compiled-in X.509 certificates
[    4.974215] Key type .fscrypt registered
[    4.978650] Key type fscrypt-provisioning registered
[    4.986436] Btrfs loaded, zoned=no, fsverity=no
[    4.996210] cfg80211: Loading compiled-in X.509 certificates for regulatory database
[    5.027130] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
[    5.034659] Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
[    5.042984] faux_driver regulatory: Direct firmware load for regulatory.db failed with error -2
[    5.053093] clk: Disabling unused clocks
[    5.057645] ALSA device list:
[    5.061030]   No soundcards found.
[    5.064913] faux_driver regulatory: Falling back to sysfs fallback for: regulatory.db
[    5.073824] Warning: unable to open an initial console.
[    5.086453] Freeing unused kernel memory: 2432K
[    5.092034] Run /init as init process
[    5.120528] systemd[1]: System time advanced to built-in epoch: Thu 2025-09-25 16:45:39 UTC
[    5.156645] systemd[1]: Successfully made /usr/ read-only.
[    5.163214] systemd[1]: systemd 257.9-0ubuntu2 running in system mode (+PAM +AUDIT +SELINUX +APPARMOR +IMA +IPE +SMACK +SECCOMP +GCRYPT -GNUTLS +OPENSSL +ACL +BLKID +CURL +ELFUTILS +FIDO2 +IDN2 -IDN +IPTC +KMOD +
LIBCRYPTSETUP +LIBCRYPTSETUP_PLUGINS +LIBFDISK +PCRE2 +PWQUALITY +P11KIT +QRENCODE +TPM2 +BZIP2 +LZ4 +XZ +ZLIB +ZSTD +BPF_FRAMEWORK +BTF -XKBCOMMON -UTMP +SYSVINIT +LIBARCHIVE)
[    5.201764] systemd[1]: Detected architecture arm64.
[    5.207382] systemd[1]: Running in initrd.
[    5.213087] systemd[1]: Hostname set to <BananaPiW2>.
[    5.669216] systemd[1]: Queued start job for default target initrd.target.
[    5.686054] systemd[1]: Started systemd-ask-password-console.path - Dispatch Password Requests to Console Directory Watch.
[    5.698796] systemd[1]: Expecting device dev-mmcblk0p2.device - /dev/mmcblk0p2...
[    5.707433] systemd[1]: Reached target initrd-usr-fs.target - Initrd /usr File System.
[    5.716550] systemd[1]: Reached target paths.target - Path Units.
[    5.723612] systemd[1]: Reached target remote-fs.target - Remote File Systems.
[    5.731863] systemd[1]: Reached target slices.target - Slice Units.
[    5.739085] systemd[1]: Reached target swap.target - Swaps.
[    5.745504] systemd[1]: Reached target timers.target - Timer Units.
[    5.753169] systemd[1]: Listening on systemd-journald-dev-log.socket - Journal Socket (/dev/log).
[    5.763797] systemd[1]: Listening on systemd-journald.socket - Journal Sockets.
[    5.772543] systemd[1]: Listening on systemd-udevd-control.socket - udev Control Socket.
[    5.782049] systemd[1]: Listening on systemd-udevd-kernel.socket - udev Kernel Socket.
[    5.791164] systemd[1]: Reached target sockets.target - Socket Units.
[    5.798820] systemd[1]: dracut-cmdline-ask.service - dracut ask for additional cmdline parameters was skipped because no trigger condition checks were met.
[    5.820834] systemd[1]: Starting dracut-cmdline.service - dracut cmdline hook...
[    5.840253] systemd[1]: dracut-pre-mount.service - dracut pre-mount hook was skipped because no trigger condition checks were met.
[    5.866172] systemd[1]: kmod-static-nodes.service - Create List of Static Device Nodes was skipped because of an unmet condition check (ConditionFileNotEmpty=/lib/modules/6.19.0-rc5-BPI-W2-Kernel/modules.devname)
.
[    5.887933] systemd[1]: systemd-battery-check.service - Check battery level during early boot was skipped because of an unmet condition check (ConditionDirectoryNotEmpty=/sys/class/power_supply).
[    5.936593] systemd[1]: Starting systemd-journald.service - Journal Service...
[    5.984502] systemd[1]: Starting systemd-modules-load.service - Load Kernel Modules...
[    6.019914] systemd[1]: systemd-pcrphase-initrd.service - TPM PCR Barrier (initrd) was skipped because of an unmet condition check (ConditionSecurity=measured-uki).
[    6.103164] systemd[1]: Starting systemd-tmpfiles-setup-dev-early.service - Create Static Device Nodes in /dev gracefully...
[    6.184966] systemd[1]: Finished systemd-modules-load.service - Load Kernel Modules.
[    6.285437] systemd[1]: Starting systemd-sysctl.service - Apply Kernel Variables...
[    6.373004] systemd[1]: Finished systemd-tmpfiles-setup-dev-early.service - Create Static Device Nodes in /dev gracefully.
[    6.432592] systemd-journald[1550]: Collecting audit messages is disabled.
[    6.452660] systemd[1]: Starting systemd-tmpfiles-setup-dev.service - Create Static Device Nodes in /dev...
[    6.511799] systemd[1]: Finished dracut-cmdline.service - dracut cmdline hook.
[   15.286025] sdhci-arasan 0.mmc: error -EBUSY: can't request region for resource [mem 0x00000000-0x98011fff]
[   15.297642] sdhci-arasan 98012000.mmc: error -ENOENT: clk_ahb clock not found.
[   15.305957] sdhci-arasan 0.mmc: probe with driver sdhci-arasan failed with error -16
[   15.314729] sdhci-arasan 98012000.mmc: probe with driver sdhci-arasan failed with error -2

As for CPU cores being disabled - on purpose during debugging. The support is there, the kernel can bring up all cores just fine.