Hi all,
I am working on the cap pocketbeagle2 cap, which would provide a real open-source (not the silicon yet!) Time Sensitive Network (TSN) solution.
But for now, I cannot get Linux to mount the rootfs, for some reason.
I can compile everything, and get bot DFU and SD-card first stage boatload okay with the full chain of trust working.
Source:
- Linux kernel mainline 6.16.0
- U-boot from the openbeagle gitlab
- opentee from github
- ti linux firmware from ti
- TFA from the official place here
Configuration is as follows;
fit image:
/dts-v1/;
/ {
description = "U-Boot fitImage for pocketbeagle2";
#address-cells = <1>;
images {
kernel-1 {
description = "Linux kernel";
data = /incbin/("linux/arch/arm64/boot/Image.gz");
type = "kernel";
arch = "arm64";
os = "linux";
compression = "gzip";
load = <0x81000000>;
entry = <0x81000000>;
hash-1 {
algo = "sha512";
};
};
fdt-ti_k3-pocketbeagle2.dtb {
description = "Flattened Device Tree blob";
data = /incbin/("u-boot-pb/out/a53/dts/upstream/src/arm64/ti/k3-am6232-pocketbeagle2.dtb");
type = "flat_dt";
arch = "arm64";
compression = "none";
load = <0x83000000>;
hash-1 {
algo = "sha512";
};
};
};
configurations {
default = "conf-system-top.dtb";
conf-system-top.dtb {
description = "Linux kernel, FDT blob, ramdisk";
kernel = "kernel-1";
fdt = "fdt-ti_k3-pocketbeagle2.dtb";
hash {
algo = "sha512";
};
};
};
};
bootargs="console=ttyS7,115200n8 earlycon=ns16550a,mmio32,0x02860000 root=/dev/mmcblk1p2 rw rootfstype=ext4 rootwait ignore_loglevel"
bootcmd=fatload mmc 1:1 0x88000000 fitimage; bootm 0x88000000
And here are the logs:
ot
9287344 bytes read in 395 ms (22.4 MiB/s)
## Loading kernel (any) from FIT Image at 88000000 ...
Using 'conf-system-top.dtb' configuration
Verifying Hash Integrity ... OK
Trying 'kernel-1' kernel subimage
Description: Linux kernel
Created: 2025-08-31 19:24:07 UTC
Type: Kernel Image
Compression: gzip compressed
Data Start: 0x880000f8
Data Size: 9216744 Bytes = 8.8 MiB
Architecture: AArch64
OS: Linux
Load Address: 0x81000000
Entry Point: 0x81000000
Hash algo: sha512
Hash value: 193544004bb7d497a6fe77df428046257cdf830ac47bdce9927f8d03694ea2597130b8439b7bf88380b85528802907ec7f662acc7d1cccc3e4fa5fc5d0f3b206
Verifying Hash Integrity ... sha512+ OK
## Loading fdt (any) from FIT Image at 88000000 ...
Using 'conf-system-top.dtb' configuration
Verifying Hash Integrity ... OK
Trying 'fdt-ti_k3-pocketbeagle2.dtb' fdt subimage
Description: Flattened Device Tree blob
Created: 2025-08-31 19:24:07 UTC
Type: Flat Device Tree
Compression: uncompressed
Data Start: 0x888ca518
Data Size: 68656 Bytes = 67 KiB
Architecture: AArch64
Load Address: 0x83000000
Hash algo: sha512
Hash value: 6d229d46d678c436e6527333db869b3a5411239b8e5309904c53f327adce9c5544eaec22616b846e6139afec650a198f3a3c0506f9420bd415d0e8338c81a44f
Verifying Hash Integrity ... sha512+ OK
Loading fdt from 0x888ca518 to 0x83000000
Booting using the fdt blob at 0x83000000
Working FDT set to 83000000
Uncompressing Kernel Image to 81000000
Loading Device Tree to 000000008ffec000, end 000000008ffffc2f ... OK
Working FDT set to 8ffec000
Starting kernel ...
I/TC: Secondary CPU 1 initializing
I/TC: Secondary CPU 1 switching to normal world boot
I/TC: Secondary CPU 2 initializing
I/TC: Secondary CPU 2 switching to normal world boot
I/TC: Secondary CPU 3 initializing
I/TC: Secondary CPU 3 switching to normal world boot
I/TC: Reserved shared memory is enabled
I/TC: Dynamic shared memory is enabled
I/TC: Normal World virtualization support is disabled
I/TC: Asynchronous notifications are disabled
[ 0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[ 0.000000] Linux version 6.16.0-dirty (dupendo@dupendo-home) (aarch64-linux-gnu-gcc (GCC) 15.1.0, GNU ld (GNU Binutils) 2.44) #7 SMP PREEMPT Sun Aug 31 21:07:01 CEST 2025
[ 0.000000] KASLR disabled due to lack of seed
[ 0.000000] Machine model: BeagleBoard.org PocketBeagle2
[ 0.000000] efi: UEFI not found.
[ 0.000000] Reserved memory: created CMA memory pool at 0x0000000094a00000, size 128 MiB
[ 0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[ 0.000000] OF: reserved mem: 0x0000000094a00000..0x000000009c9fffff (131072 KiB) map reusable linux,cma
[ 0.000000] OF: reserved mem: 0x000000009e800000..0x000000009fffffff (24576 KiB) nomap non-reusable optee@9e800000
[ 0.000000] OF: reserved mem: 0x0000000080000000..0x000000008007ffff (512 KiB) nomap non-reusable tfa@80000000
[ 0.000000] Reserved memory: created DMA memory pool at 0x000000009cb00000, size 1 MiB
[ 0.000000] OF: reserved mem: initialized node m4f-dma-memory@9cb00000, compatible id shared-dma-pool
[ 0.000000] OF: reserved mem: 0x000000009cb00000..0x000000009cbfffff (1024 KiB) nomap non-reusable m4f-dma-memory@9cb00000
[ 0.000000] Reserved memory: created DMA memory pool at 0x000000009cc00000, size 14 MiB
[ 0.000000] OF: reserved mem: initialized node m4f-memory@9cc00000, compatible id shared-dma-pool
[ 0.000000] OF: reserved mem: 0x000000009cc00000..0x000000009d9fffff (14336 KiB) nomap non-reusable m4f-memory@9cc00000
[ 0.000000] Reserved memory: created DMA memory pool at 0x000000009db00000, size 12 MiB
[ 0.000000] OF: reserved mem: initialized node r5f-dma-memory@9db00000, compatible id shared-dma-pool
[ 0.000000] OF: reserved mem: 0x000000009db00000..0x000000009e6fffff (12288 KiB) nomap non-reusable r5f-dma-memory@9db00000
[ 0.000000] Zone ranges:
[ 0.000000] DMA [mem 0x0000000080000000-0x000000009fffffff]
[ 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 0x0000000080000000-0x000000008007ffff]
[ 0.000000] node 0: [mem 0x0000000080080000-0x000000009cafffff]
[ 0.000000] node 0: [mem 0x000000009cb00000-0x000000009d9fffff]
[ 0.000000] node 0: [mem 0x000000009da00000-0x000000009dafffff]
[ 0.000000] node 0: [mem 0x000000009db00000-0x000000009e6fffff]
[ 0.000000] node 0: [mem 0x000000009e700000-0x000000009e7fffff]
[ 0.000000] node 0: [mem 0x000000009e800000-0x000000009fffffff]
[ 0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x000000009fffffff]
[ 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: Trusted OS migration not required
[ 0.000000] psci: SMC Calling Convention v1.5
[ 0.000000] percpu: Embedded 22 pages/cpu s52120 r8192 d29800 u90112
[ 0.000000] pcpu-alloc: s52120 r8192 d29800 u90112 alloc=22*4096
[ 0.000000] pcpu-alloc: [0] 0 [0] 1 [0] 2 [0] 3
[ 0.000000] Detected VIPT I-cache on CPU0
[ 0.000000] CPU features: detected: GIC system register CPU interface
[ 0.000000] CPU features: detected: ARM erratum 845719
[ 0.000000] alternatives: applying boot alternatives
[ 0.000000] Kernel command line: "console=ttyS7,115200n8 earlycon=ns16550a,mmio32,0x02860000 root=/dev/mmcblk1p2 rw rootfstype=ext4 rootwait ignore_loglevel"
[ 0.000000] printk: log buffer data + meta data: 131072 + 458752 = 589824 bytes
[ 0.000000] Dentry cache hash table entries: 65536 (order: 7, 524288 bytes, linear)
[ 0.000000] Inode-cache hash table entries: 32768 (order: 6, 262144 bytes, linear)
[ 0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 0MB
[ 0.000000] software IO TLB: area num 4.
[ 0.000000] software IO TLB: SWIOTLB bounce buffer size roundup to 1MB
[ 0.000000] software IO TLB: mapped [mem 0x0000000094100000-0x0000000094200000] (1MB)
[ 0.000000] Built 1 zonelists, mobility grouping on. Total pages: 131072
[ 0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[ 0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=4, Nodes=1
[ 0.000000] rcu: Preemptible hierarchical RCU implementation.
[ 0.000000] rcu: RCU event tracing is enabled.
[ 0.000000] rcu: RCU restricting CPUs from NR_CPUS=512 to nr_cpu_ids=4.
[ 0.000000] Trampoline 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=4
[ 0.000000] RCU Tasks: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4.
[ 0.000000] RCU Tasks Trace: Setting shift to 2 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=4.
[ 0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
[ 0.000000] GICv3: GIC: Using split EOI/Deactivate mode
[ 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: GICD_CTRL.DS=0, SCR_EL3.FIQ=1
[ 0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001880000
[ 0.000000] ITS [mem 0x01820000-0x0182ffff]
[ 0.000000] GIC: enabling workaround for ITS: Socionext Synquacer pre-ITS
[ 0.000000] ITS@0x0000000001820000: Devices Table too large, reduce ids 20->19
[ 0.000000] ITS@0x0000000001820000: allocated 524288 Devices @80c00000 (flat, esz 8, psz 64K, shr 0)
[ 0.000000] ITS: using cache flushing for cmd queue
[ 0.000000] GICv3: using LPI property table @0x0000000080450000
[ 0.000000] GIC: using cache flushing for LPI property table
[ 0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080460000
[ 0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
[ 0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
[ 0.000000] clocksource: arch_sys_counter: mask: 0x3ffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
[ 0.000001] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
[ 0.000536] Console: colour dummy device 80x25
[ 0.000608] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
[ 0.000621] pid_max: default: 32768 minimum: 301
[ 0.000716] LSM: initializing lsm=capability,selinux
[ 0.000773] SELinux: Initializing.
[ 0.001293] Mount-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[ 0.001304] Mountpoint-cache hash table entries: 1024 (order: 1, 8192 bytes, linear)
[ 0.003812] rcu: Hierarchical SRCU implementation.
[ 0.003825] rcu: Max phase no-delay instances is 1000.
[ 0.004155] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[ 0.004297] dyndbg: Ignore empty _ddebug table in a CONFIG_DYNAMIC_DEBUG_CORE build
[ 0.004734] EFI services will not be available.
[ 0.005037] smp: Bringing up secondary CPUs ...
[ 0.013741] Detected VIPT I-cache on CPU1
[ 0.013839] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
[ 0.013858] GICv3: CPU1: using allocated LPI pending table @0x0000000080470000
[ 0.013914] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[ 0.022821] Detected VIPT I-cache on CPU2
[ 0.022900] GICv3: CPU2: found redistributor 2 region 0:0x00000000018c0000
[ 0.022914] GICv3: CPU2: using allocated LPI pending table @0x0000000080480000
[ 0.022951] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[ 0.031718] Detected VIPT I-cache on CPU3
[ 0.031789] GICv3: CPU3: found redistributor 3 region 0:0x00000000018e0000
[ 0.031802] GICv3: CPU3: using allocated LPI pending table @0x0000000080490000
[ 0.031834] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[ 0.031967] smp: Brought up 1 node, 4 CPUs
[ 0.031974] SMP: Total of 4 processors activated.
[ 0.031977] CPU: All CPU(s) started at EL2
[ 0.031981] CPU features: detected: 32-bit EL0 Support
[ 0.031986] CPU features: detected: CRC32 instructions
[ 0.031996] CPU features: detected: PMUv3
[ 0.032052] alternatives: applying system-wide alternatives
[ 0.032795] Memory: 300720K/524288K available (13248K kernel code, 1256K rwdata, 4700K rodata, 1408K init, 635K bss, 85936K reserved, 131072K cma-reserved)
[ 0.033596] devtmpfs: initialized
[ 0.043579] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[ 0.043626] posixtimers hash table entries: 2048 (order: 3, 32768 bytes, linear)
[ 0.043717] futex hash table entries: 1024 (65536 bytes on 1 NUMA nodes, total 64 KiB, linear).
[ 0.046428] 27392 pages in range for non-PLT usage
[ 0.046449] 518912 pages in range for PLT usage
[ 0.046826] pinctrl core: initialized pinctrl subsystem
[ 0.047495] DMI not present or invalid.
[ 0.049960] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[ 0.051223] DMA: preallocated 128 KiB GFP_KERNEL pool for atomic allocations
[ 0.051603] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[ 0.051927] DMA: preallocated 128 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[ 0.052002] audit: initializing netlink subsys (disabled)
[ 0.052291] audit: type=2000 audit(0.052:1): state=initialized audit_enabled=0 res=1
[ 0.052795] thermal_sys: Registered thermal governor 'step_wise'
[ 0.052800] thermal_sys: Registered thermal governor 'power_allocator'
[ 0.052848] cpuidle: using governor menu
[ 0.053023] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[ 0.053134] ASID allocator initialised with 65536 entries
[ 0.059482] /bus@f0000/interrupt-controller@1800000: Fixed dependency cycle(s) with /bus@f0000/interrupt-controller@1800000
[ 0.070579] HugeTLB: allocation took 0ms with hugepage_allocation_threads=1
[ 0.070595] HugeTLB: allocation took 0ms with hugepage_allocation_threads=1
[ 0.070606] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[ 0.070610] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[ 0.070615] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[ 0.070618] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[ 0.070622] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[ 0.070625] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[ 0.070629] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[ 0.070632] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[ 0.072604] k3-chipinfo 43000014.chipid: Family:AM62X rev:SR1.0 JTAGID[0x0bb7e02f] Detected
[ 0.073357] iommu: Default domain type: Translated
[ 0.073371] iommu: DMA domain TLB invalidation policy: strict mode
[ 0.074611] SCSI subsystem initialized
[ 0.074883] libata version 3.00 loaded.
[ 0.075103] usbcore: registered new interface driver usbfs
[ 0.075142] usbcore: registered new interface driver hub
[ 0.075176] usbcore: registered new device driver usb
[ 0.075768] pps_core: LinuxPPS API ver. 1 registered
[ 0.075774] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[ 0.075787] PTP clock support registered
[ 0.075825] EDAC MC: Ver: 3.0.0
[ 0.076256] scmi_core: SCMI protocol bus registered
[ 0.076637] FPGA manager framework
[ 0.077825] vgaarb: loaded
[ 0.078222] clocksource: Switched to clocksource arch_sys_counter
[ 0.078566] VFS: Disk quotas dquot_6.6.0
[ 0.078586] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[ 0.086058] NET: Registered PF_INET protocol family
[ 0.086250] IP idents hash table entries: 8192 (order: 4, 65536 bytes, linear)
[ 0.087075] tcp_listen_portaddr_hash hash table entries: 256 (order: 0, 4096 bytes, linear)
[ 0.087096] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[ 0.087105] TCP established hash table entries: 4096 (order: 3, 32768 bytes, linear)
[ 0.087142] TCP bind hash table entries: 4096 (order: 5, 131072 bytes, linear)
[ 0.087341] TCP: Hash tables configured (established 4096 bind 4096)
[ 0.087477] UDP hash table entries: 256 (order: 2, 16384 bytes, linear)
[ 0.087506] UDP-Lite hash table entries: 256 (order: 2, 16384 bytes, linear)
[ 0.087685] NET: Registered PF_UNIX/PF_LOCAL protocol family
[ 0.088183] RPC: Registered named UNIX socket transport module.
[ 0.088190] RPC: Registered udp transport module.
[ 0.088193] RPC: Registered tcp transport module.
[ 0.088196] RPC: Registered tcp-with-tls transport module.
[ 0.088198] RPC: Registered tcp NFSv4.1 backchannel transport module.
[ 0.088208] NET: Registered PF_XDP protocol family
[ 0.088232] PCI: CLS 0 bytes, default 64
[ 0.089738] Initialise system trusted keyrings
[ 0.090035] workingset: timestamp_bits=46 max_order=17 bucket_order=0
[ 0.090433] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[ 0.090750] NFS: Registering the id_resolver key type
[ 0.090797] Key type id_resolver registered
[ 0.090800] Key type id_legacy registered
[ 0.090820] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[ 0.090826] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[ 0.145815] Key type asymmetric registered
[ 0.145832] Asymmetric key parser 'x509' registered
[ 0.145927] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 244)
[ 0.146156] io scheduler mq-deadline registered
[ 0.146162] io scheduler kyber registered
[ 0.146220] io scheduler bfq registered
[ 0.149482] pinctrl-single 4084000.pinctrl: 34 pins, size 136
[ 0.150333] pinctrl-single f4000.pinctrl: 171 pins, size 684
[ 0.152326] ledtrig-cpu: registered to indicate activity on CPUs
[ 0.158648] Serial: 8250/16550 driver, 8 ports, IRQ sharing enabled
[ 0.169503] loop: module loaded
[ 0.205392] megasas: 07.734.00.00-rc1
[ 0.209719] tun: Universal TUN/TAP device driver, 1.6
[ 0.210918] VFIO - User Level meta-driver version: 0.3
[ 0.212202] usbcore: registered new interface driver usb-storage
[ 0.212784] i2c_dev: i2c /dev entries driver
[ 0.214582] sdhci: Secure Digital Host Controller Interface driver
[ 0.214594] sdhci: Copyright(c) Pierre Ossman
[ 0.214821] sdhci-pltfm: SDHCI platform and OF driver helper
[ 0.215237] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[ 0.216095] usbcore: registered new interface driver usbhid
[ 0.216100] usbhid: USB HID core driver
[ 0.217581] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 (0,8000003f) counters available
[ 0.218328] optee: probing for conduit method.
[ 0.218369] optee: revision 4.7 (8e17e072793b1d3c)
[ 0.235114] optee: dynamic shared memory is enabled
[ 0.235964] optee: initialized driver
[ 0.236073] random: crng init done
[ 0.237205] Initializing XFRM netlink socket
[ 0.237249] NET: Registered PF_PACKET protocol family
[ 0.237335] Key type dns_resolver registered
[ 0.247071] registered taskstats version 1
[ 0.247279] Loading compiled-in X.509 certificates
[ 0.260950] ti-sci 44043000.system-controller: ABI: 4.0 (firmware rev 0x000b '11.1.5--v11.01.05 (Fancy Rat)')
[ 0.328404] /bus@f0000/bus@b00000/i2c@2b200000/pmic@30: Fixed dependency cycle(s) with /bus@f0000/bus@b00000/i2c@2b200000/pmic@30/regulators/buck2
[ 0.347330] omap_i2c 2b200000.i2c: bus 3 rev0.12 at 100 kHz
[ 0.349516] omap_i2c 20000000.i2c: bus 0 rev0.12 at 400 kHz
[ 0.351054] omap_i2c 20010000.i2c: bus 1 rev0.12 at 400 kHz
[ 0.352284] omap_i2c 20020000.i2c: bus 2 rev0.12 at 400 kHz
[ 0.352586] ti-sci-intr 4210000.interrupt-controller: Interrupt Router 5 domain created
[ 0.352748] ti-sci-intr bus@f0000:interrupt-controller@a00000: Interrupt Router 3 domain created
[ 0.353045] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
[ 0.355188] ti-udma 485c0100.dma-controller: Number of rings: 82
[ 0.358074] ti-udma 485c0100.dma-controller: Channels: 48 (bchan: 18, tchan: 12, rchan: 18)
[ 0.361007] ti-udma 485c0000.dma-controller: Number of rings: 150
[ 0.366422] ti-udma 485c0000.dma-controller: Channels: 35 (tchan: 20, rchan: 15)
[ 0.369417] printk: legacy console [ttyS7] disabled
[ 0.369808] 2800000.serial: ttyS7 at MMIO 0x2800000 (irq = 289, base_baud = 3000000) is a 8250
[ 0.369893] printk: legacy console [ttyS7] enabled
[ 1.845685] 2860000.serial: ttyS2 at MMIO 0x2860000 (irq = 290, base_baud = 3000000) is a 8250
[ 1.861065] xhci-hcd xhci-hcd.3.auto: xHCI Host Controller
[ 1.866627] xhci-hcd xhci-hcd.3.auto: new USB bus registered, assigned bus number 1
[ 1.874438] xhci-hcd xhci-hcd.3.auto: USB3 root hub has no ports
[ 1.880451] xhci-hcd xhci-hcd.3.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000808020000010
[ 1.889905] xhci-hcd xhci-hcd.3.auto: irq 292, io mem 0x31100000
[ 1.896882] hub 1-0:1.0: USB hub found
[ 1.900740] hub 1-0:1.0: 1 port detected
[ 1.908874] mmc0: CQHCI version 5.10
[ 1.918965] clk: Disabling unused clocks
[ 1.919231] sdhci-am654 fa00000.mmc: Got CD GPIO
[ 1.931703] PM: genpd: Disabling unused power domains
[ 1.932204] mmc1: CQHCI version 5.10
[ 1.950832] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
[ 1.982285] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
[ 1.990456] /dev/root: Can't open blockdev
[ 1.994595] VFS: Cannot open root device "" or unknown-block(0,0): error -6
[ 2.001555] Please append a correct "root=" boot option; here are the available partitions:
[ 2.009939] List of all bdev filesystems:
[ 2.013943] ext3
[ 2.013947] ext2
[ 2.015868] ext4
[ 2.017783] squashfs
[ 2.019704] vfat
[ 2.021968]
[ 2.025370] Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)
[ 2.033621] CPU: 2 UID: 0 PID: 1 Comm: swapper/0 Not tainted 6.16.0-dirty #7 PREEMPT
[ 2.041438] Hardware name: BeagleBoard.org PocketBeagle2 (DT)
[ 2.047173] Call trace:
[ 2.049617] show_stack+0x18/0x30 (C)
[ 2.053291] dump_stack_lvl+0x60/0x80
[ 2.056953] dump_stack+0x18/0x24
[ 2.060261] panic+0x168/0x344
[ 2.063310] mount_root_generic+0x1f8/0x2b0
[ 2.067491] mount_root+0x204/0x244
[ 2.070972] prepare_namespace+0x1d4/0x238
[ 2.075061] kernel_init_freeable+0x28c/0x2b0
[ 2.079409] kernel_init+0x20/0x140
[ 2.082893] ret_from_fork+0x10/0x20
[ 2.086467] SMP: stopping secondary CPUs
[ 2.090384] Kernel Offset: disabled
[ 2.093862] CPU features: 0x0000,00002000,02000801,0400420b
[ 2.099422] Memory Limit: none
[ 2.102471] ---[ end Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0) ]---
Also, when I use the official image it works, so the MMC’s health is not the reason for the kernel panic.
Thank you for your support