This thread has been locked.

If you have a related question, please click the "Ask a related question" button in the top right corner. The newly created question will be automatically linked to this question.

AM625: Kernel oops when writing to EMMC

Part Number: AM625

Tool/software:

Hello,

   I have two different model development boards design by MYIR.  I have two based on a 6254 (4 procs) and two based on 6252 (two procs). (so 4 total) They are identical otherwise.

I have built my own distribution and and kernel based on TI's configuration.  Most of my work has been done with the 6254.

I wrote a script  that rebuilds partitions and then uses 'dd' to copy the partitions from sd card to EMMC.

This works perfectly on both 6254. 

However, on both the 6252 devices I get a kernel panic.

[   43.632998] mmc0: running CQE recovery
[   43.633879] Unable to handle kernel paging request at virtual address ffffffff00009794
[   43.633888] Mem abort info:
[   43.633890]   ESR = 0x0000000096000005
[   43.633890]   ESR = 0x0000000096000005
[   43.633893]   EC = 0x25: DABT (current EL), IL = 32 bits
[   43.633898]   SET = 0, FnV = 0
[   43.633901]   EA = 0, S1PTW = 0
[   43.633904]   FSC = 0x05: level 1 translation fault
[   43.633908] Data abort info:
[   43.633910]   ISV = 0, ISS = 0x00000005, ISS2 = 0x00000000
[   43.633914]   CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[   43.633918]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[   43.633923] swapper pgtable: 4k pages, 48-bit VAs, pgdp=0000000082bf7000
[   43.633928] [ffffffff00009794] pgd=0000000000000000, p4d=0000000082e43003, pud=0000000000000000
[   43.633944] Internal error: Oops: 0000000096000005 [#1] PREEMPT_RT SMP
[   43.633951] Modules linked in: overlay rpmsg_ctrl rpmsg_char pru_rproc irq_pruss_intc mwifiex_sdio mwifiex cfg80211 snd_soc_simple_card crct10dif_ce snd_soc_simple_card_utils rfkill ti_k3_r5_remoteproc display_connector k3_j72xx_bandgap rtc_ti_k3 at24 tidss drm_dma_helper ov5640 drm_display_helper v4l2_fwnode rti_wdt v4l2_async sii902x snd_soc_davinci_mcasp sa2ul snd_soc_ti_udma snd_soc_ti_edma pruss cdns_dphy_rx authenc extcon_ptn5150 snd_soc_ti_sdma videodev drm_kms_helper mc snd_soc_sgtl5000 omap_mailbox m_can_platform m_can can_dev ramoops reed_solomon fuse drm drm_panel_orientation_quirks backlight ipv6
[   43.634077] CPU: 0 UID: 0 PID: 135 Comm: systemd-journal Not tainted 6.12.0-rc4 #1
[   43.634086] Hardware name: Texas Instruments K3 AM625 SoC (DT)
[   43.634090] pstate: a0000005 (NzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   43.634097] pc : 0xffff8000801a969c
[   43.634102] lr : 0xffff800080198434
[   43.634104] sp : ffff0000037d3b00
[   43.634107] x29: ffff0000037d3b00 x28: 0000000000000000 x27: 2f2f2f2f2f2f2f2f
[   43.634116] x26: d0d0d0d0d0d0d0d0 x25: 0000000000000003 x24: ffff000005989021
[   43.634125] x23: ffff0000037d3ce4 x22: 000000039dfb4a59 x21: 0000000000000003
[   43.634134] x20: ffff00000096d780 x19: ffffffff000097a4 x18: 0000000000000000
[   43.634143] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
[   43.634151] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[   43.634159] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
[   43.634167] x8 : ffff0000037d3d88 x7 : 0000000000000000 x6 : 0000000000000000
[   43.634175] x5 : ffff00007b200000 x4 : 0000000000200000 x3 : 000000000013bf68
[   43.634184] x2 : ffff0000037d3ce4 x1 : ffff0000037d3cb0 x0 : ffffffff00009794
[   43.634194] Call trace:
[   43.634197]  0xffff8000801a969c
[   43.634200]  0xffff800080198434
[   43.634203]  0xffff80008019b5ec
[   43.634206]  0xffff80008019b988
[   43.634209]  0xffff80008019c3d4
[   43.634211]  0xffff80008019c878
[   43.634214]  0xffff80008019ca80
[   43.634217]  0xffff8000801841a8
[   43.634220]  0xffff8000801857c4
[   43.634222]  0xffff80008001df38
[   43.634225]  0xffff80008001e01c
[   43.634228]  0xffff80008096d144
[   43.634230]  0xffff80008096e7d8
[   43.634233]  0xffff80008001148c
[   43.634240] Code: 14000032 f9400273 b4000613 d1004260 (88dffc01)
[   43.634246] ---[ end trace 0000000000000000 ]---
[   43.642981] Unable to handle kernel paging request at virtual address 00001ac400000132
[   43.643004] Mem abort info:
[   43.643006]   ESR = 0x0000000096000021
[   43.643010]   EC = 0x25: DABT (current EL), IL = 32 bits
[   43.643015]   SET = 0, FnV = 0
[   43.643019]   EA = 0, S1PTW = 0
[   43.643022]   FSC = 0x21: alignment fault
[   43.643025] Data abort info:
[   43.643027]   ISV = 0, ISS = 0x00000021, ISS2 = 0x00000000
[   43.643030]   CM = 0, WnR = 0, TnD = 0, TagAccess = 0
[   43.643034]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
[   43.643039] user pgtable: 4k pages, 48-bit VAs, pgdp=0000000081954000
[   43.643045] [00001ac400000132] pgd=080000008195d003, p4d=0000000000000000
[   43.643059] Internal error: Oops: 0000000096000021 [#2] PREEMPT_RT SMP
[   43.643066] Modules linked in: overlay rpmsg_ctrl rpmsg_char pru_rproc irq_pruss_intc mwifiex_sdio mwifiex cfg80211 snd_soc_simple_card crct10dif_ce snd_soc_simple_card_utils rfkill ti_k3_r5_remoteproc display_connector k3_j72xx_bandgap rtc_ti_k3 at24 tidss drm_dma_helper ov5640 drm_display_helper v4l2_fwnode rti_wdt v4l2_async sii902x snd_soc_davinci_mcasp sa2ul snd_soc_ti_udma snd_soc_ti_edma pruss cdns_dphy_rx authenc extcon_ptn5150 snd_soc_ti_sdma videodev drm_kms_helper mc snd_soc_sgtl5000 omap_mailbox m_can_platform m_can can_dev ramoops reed_solomon fuse drm drm_panel_orientation_quirks backlight ipv6
[   43.643183] CPU: 0 UID: 0 PID: 1 Comm: systemd Tainted: G      D            6.12.0-rc4 #1
[   43.643193] Tainted: [D]=DIE
[   43.643196] Hardware name: Texas Instruments K3 AM625 SoC (DT)
[   43.643200] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
[   43.643208] pc : 0xffff8000801a969c
[   43.643212] lr : 0xffff800080198434
[   43.643214] sp : ffff0000004e3a70
[   43.643217] x29: ffff0000004e3a70 x28: 0000000000000000 x27: 2f2f2f2f2f2f2f2f
[   43.643226] x26: d0d0d0d0d0d0d0d0 x25: 0000000000000003 x24: ffff00000598a021
[   43.643235] x23: ffff0000004e3cf4 x22: 00000003a255f401 x21: 0000000000000003
[   43.643244] x20: ffff00000096d780 x19: 00001ac400000142 x18: 0000000000000000
[   43.643253] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
[   43.643261] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
[   43.643269] x11: 0000000000000000 x10: 0000000000000000 x9 : 0000000000000000
[   43.643278] x8 : ffff00000144d5d8 x7 : 0000000000000000 x6 : 0000000000000000
[   43.643286] x5 : ffff00007b200000 x4 : 0000000000200000 x3 : 0000000000144ab8
[   43.643295] x2 : ffff0000004e3cf4 x1 : ffff0000004e3cc0 x0 : 00001ac400000132
[   43.643304] Call trace:
[   43.643308]  0xffff8000801a969c
[   43.643311]  0xffff800080198434
[   43.643314]  0xffff80008019b5ec
[   43.643317]  0xffff80008019b988
[   43.643319]  0xffff80008019cf2c
[   43.643322]  0xffff80008019df48
[   43.643325]  0xffff8000801868b0
[   43.643328]  0xffff800080186b30
[   43.643331]  0xffff80008001df38
[   43.643333]  0xffff80008001e01c
[   43.643336]  0xffff80008096d144
[   43.643339]  0xffff80008096e7d8
[   43.643341]  0xffff80008001148c
[   43.643349] Code: 14000032 f9400273 b4000613 d1004260 (88dffc01)
[   43.643354] ---[ end trace 0000000000000000 ]---
[   43.651850] Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b
[   43.651866] SMP: stopping secondary CPUs
[   43.651880] Kernel Offset: disabled
[   43.651882] CPU features: 0x00,00000080,00000000,4200400b
[   43.651889] Memory Limit: none
[   44.236097] ---[ end Kernel panic - not syncing: Attempted to kill init! exitcode=0x0000000b ]---

These are the boot messages on the 6252. The 6254 is the same, except 4 CPUs are found.

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.12.0-rc4 (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 14.2.0, GNU ld (GNU Binutils) 2.43.1) #1 SMP PREEMPT_RT Sun Oct 20 22:19:38 UTC 2024
[    0.000000] Machine model: Texas Instruments K3 AM625 SoC
[    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
[    0.000000] printk: legacy bootconsole [ns16550a0] enabled
[    0.000000] efi: UEFI not found.
[    0.000000] OF: reserved mem: 0x0000000080000000..0x000000008007ffff (512 KiB) nomap non-reusable tfa@80000000
[    0.000000] OF: reserved mem: 0x000000009c700000..0x000000009c7fffff (1024 KiB) map non-reusable ramoops@9c700000
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009c800000, size 3 MiB
[    0.000000] OF: reserved mem: initialized node ipc-memories@9c800000, compatible id shared-dma-pool
[    0.000000] OF: reserved mem: 0x000000009c800000..0x000000009cafffff (3072 KiB) nomap non-reusable ipc-memories@9c800000
[    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 0x000000009da00000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9da00000, compatible id shared-dma-pool
[    0.000000] OF: reserved mem: 0x000000009da00000..0x000000009dafffff (1024 KiB) nomap non-reusable r5f-dma-memory@9da00000
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009db00000, size 12 MiB
[    0.000000] OF: reserved mem: initialized node r5f-memory@9db00000, compatible id shared-dma-pool
[    0.000000] OF: reserved mem: 0x000000009db00000..0x000000009e6fffff (12288 KiB) nomap non-reusable r5f-memory@9db00000
[    0.000000] OF: reserved mem: 0x000000009e700000..0x000000009e77ffff (512 KiB) map non-reusable lpm-memory@9e700000
[    0.000000] OF: reserved mem: 0x000000009e800000..0x000000009fffffff (24576 KiB) nomap non-reusable optee@9e800000
[    0.000000] OF: reserved mem: 0x00000000ff700000..0x00000000fffc9fff (9000 KiB) nomap non-reusable framebuffer@ff700000
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
[    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-0x000000009c7fffff]
[    0.000000]   node   0: [mem 0x000000009c800000-0x000000009e6fffff]
[    0.000000]   node   0: [mem 0x000000009e700000-0x000000009e7fffff]
[    0.000000]   node   0: [mem 0x000000009e800000-0x000000009fffffff]
[    0.000000]   node   0: [mem 0x00000000a0000000-0x00000000ff6fffff]
[    0.000000]   node   0: [mem 0x00000000ff700000-0x00000000fffc9fff]
[    0.000000]   node   0: [mem 0x00000000fffca000-0x00000000ffffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
[    0.000000] cma: Reserved 32 MiB at 0x00000000fb400000 on node -1
[    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 23 pages/cpu s54512 r8192 d31504 u94208
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: GIC system register CPU interface
[    0.000000] CPU features: kernel page table isolation disabled by kernel configuration
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] alternatives: applying boot alternatives
[    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=spi-nand0:512k(ospi_nand.tiboot3),2m(ospi_nand.tispl),4m(ospi_nand.u-boot),256k(ospi_nand.env),256k(ospi_nand.env.backup),98048k@32m(ospi_nand.rootfs),256k@130816k(ospi_nand.phypattern) root=PARTUUID=076c4a2a-02 rw rootfstype=ext4 rootwait
[    0.000000] Unknown kernel command line parameters "mtdparts=spi-nand0:512k(ospi_nand.tiboot3),2m(ospi_nand.tispl),4m(ospi_nand.u-boot),256k(ospi_nand.env),256k(ospi_nand.env.backup),98048k@32m(ospi_nand.rootfs),256k@130816k(ospi_nand.phypattern)", will be passed to user space.
[    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] Built 1 zonelists, mobility grouping on.  Total pages: 524288
[    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
[    0.000000] software IO TLB: SWIOTLB bounce buffer size adjusted to 2MB
[    0.000000] software IO TLB: area num 2.
[    0.000000] software IO TLB: mapped [mem 0x00000000fb000000-0x00000000fb200000] (2MB)
[    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=2, Nodes=1
[    0.000000] rcu: Preemptible hierarchical RCU implementation.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=512 to nr_cpu_ids=2.
[    0.000000] rcu:     RCU_SOFTIRQ processing moved to rcuc kthreads.
[    0.000000]  No expedited grace period (rcu_normal_after_boot).
[    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 100 jiffies.
[    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=2
[    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: 0xffff8000800100c0
[    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 @0x0000000080430000
[    0.000000] GIC: using cache flushing for LPI property table
[    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080440000
[    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.000000] sched_clock: 58 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
[    0.000250] Console: colour dummy device 80x25
[    0.000312] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=200000)
[    0.000324] pid_max: default: 32768 minimum: 301
[    0.000387] LSM: initializing lsm=capability
[    0.000537] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.000562] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.007100] rcu: Hierarchical SRCU implementation.
[    0.007113] rcu:     Max phase no-delay instances is 400.
[    0.099576] Timer migration: 1 hierarchy levels; 8 children per group; 1 crossnode level
[    0.117260] EFI services will not be available.
[    0.128739] smp: Bringing up secondary CPUs ...
[    0.276350] Detected VIPT I-cache on CPU1
[    0.276444] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
[    0.276462] GICv3: CPU1: using allocated LPI pending table @0x0000000080450000
[    0.276515] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.289098] smp: Brought up 1 node, 2 CPUs
[    0.289105] SMP: Total of 2 processors activated.
[    0.289108] CPU: All CPU(s) started at EL2
[    0.289111] CPU features: detected: 32-bit EL0 Support
[    0.289116] CPU features: detected: CRC32 instructions
[    0.295552] alternatives: applying system-wide alternatives
[    0.297138] Memory: 1934692K/2097152K available (9664K kernel code, 1156K rwdata, 2508K rodata, 1152K init, 527K bss, 122048K reserved, 32768K cma-reserved)
[    0.298237] devtmpfs: initialized
[    0.310211] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
[    0.310237] futex hash table entries: 512 (order: 3, 32768 bytes, linear)
[    0.311319] 28960 pages in range for non-PLT usage
[    0.311337] 520480 pages in range for PLT usage
[    0.311591] pinctrl core: initialized pinctrl subsystem
[    0.312205] DMI not present or invalid.
[    0.314598] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.315776] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
[    0.316124] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.316758] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.316844] audit: initializing netlink subsys (disabled)
[    0.317192] audit: type=2000 audit(0.315:1): state=initialized audit_enabled=0 res=1
[    0.317742] thermal_sys: Registered thermal governor 'step_wise'
[    0.317981] ASID allocator initialised with 65536 entries
[    0.332555] platform 30200000.dss: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
[    0.336534] platform connector: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
[    0.338588] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[    0.338601] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[    0.338607] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[    0.338610] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[    0.338615] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[    0.338618] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[    0.338622] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[    0.338625] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[    0.972790] k3-chipinfo 43000014.chipid: Family:AM62X rev:SR1.0 JTAGID[0x0bb7e02f] Detected
[    0.975732] iommu: Default domain type: Translated
[    0.975744] iommu: DMA domain TLB invalidation policy: strict mode
[    0.976698] SCSI subsystem initialized
[    0.977072] usbcore: registered new interface driver usbfs
[    0.977173] usbcore: registered new interface driver hub
[    0.977208] usbcore: registered new device driver usb
[    0.977821] pps_core: LinuxPPS API ver. 1 registered
[    0.977825] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.977840] PTP clock support registered
[    0.977877] EDAC MC: Ver: 3.0.0
[    0.978236] scmi_core: SCMI protocol bus registered
[    0.978526] FPGA manager framework
[    0.978651] Advanced Linux Sound Architecture Driver Initialized.
[    0.979967] clocksource: Switched to clocksource arch_sys_counter
[    0.980337] VFS: Disk quotas dquot_6.6.0
[    0.980359] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.987714] NET: Registered PF_INET protocol family
[    0.988059] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.989818] tcp_listen_portaddr_hash hash table entries: 1024 (order: 3, 40960 bytes, linear)
[    0.989868] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
[    0.989879] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.990114] TCP bind hash table entries: 16384 (order: 8, 1310720 bytes, linear)
[    0.991599] TCP: Hash tables configured (established 16384 bind 16384)
[    0.991824] UDP hash table entries: 1024 (order: 4, 98304 bytes, linear)
[    0.992053] UDP-Lite hash table entries: 1024 (order: 4, 98304 bytes, linear)
[    0.992401] NET: Registered PF_UNIX/PF_LOCAL protocol family
[    0.992944] RPC: Registered named UNIX socket transport module.
[    0.992950] RPC: Registered udp transport module.
[    0.992953] RPC: Registered tcp transport module.
[    0.993008] RPC: Registered tcp-with-tls transport module.
[    0.993012] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.993028] PCI: CLS 0 bytes, default 64
[    0.994862] Initialise system trusted keyrings
[    0.995098] workingset: timestamp_bits=62 max_order=19 bucket_order=0
[    0.995414] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.995668] NFS: Registering the id_resolver key type
[    0.995704] Key type id_resolver registered
[    0.995708] Key type id_legacy registered
[    0.995728] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.995734] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    1.049483] Key type asymmetric registered
[    1.049493] Asymmetric key parser 'x509' registered
[    1.049561] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 246)
[    1.049567] io scheduler mq-deadline registered
[    1.049572] io scheduler kyber registered
[    1.049596] io scheduler bfq registered
[    1.052915] pinctrl-single 4084000.pinctrl: 34 pins, size 136
[    1.054275] pinctrl-single f4000.pinctrl: 171 pins, size 684
[    1.062773] Serial: 8250/16550 driver, 4 ports, IRQ sharing enabled
[    1.072920] loop: module loaded
[    1.073801] megasas: 07.727.03.00-rc1
[    1.078620] tun: Universal TUN/TAP device driver, 1.6
[    1.079843] VFIO - User Level meta-driver version: 0.3
[    1.081233] usbcore: registered new interface driver usb-storage
[    1.082017] i2c_dev: i2c /dev entries driver
[    1.082695] sdhci: Secure Digital Host Controller Interface driver
[    1.082698] sdhci: Copyright(c) Pierre Ossman
[    1.083114] sdhci-pltfm: SDHCI platform and OF driver helper
[    1.083907] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[    1.084750] usbcore: registered new interface driver usbhid
[    1.084754] usbhid: USB HID core driver
[    1.085601] optee: probing for conduit method.
[    1.085640] optee: revision 4.2
[    1.086071] optee: dynamic shared memory is enabled
[    1.086781] optee: initialized driver
[    1.087270] random: crng init done
[    1.089014] NET: Registered PF_PACKET protocol family
[    1.089116] Key type dns_resolver registered
[    1.099753] Loading compiled-in X.509 certificates
[    1.110652] ti-sci 44043000.system-controller: ABI: 4.0 (firmware rev 0x000a '10.0.8--v10.00.08 (Fiery Fox)')
[    1.167993] ti-sci-clk 44043000.system-controller:clock-controller: recalc-rate failed for dev=81, clk=20, ret=-19
[    1.192167] omap_i2c 4900000.i2c: bus 0 rev0.12 at 400 kHz
[    1.193300] platform connector: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
[    1.193399] platform 30200000.dss: Fixed dependency cycle(s) with /bus@f0000/i2c@20000000/sii9022@3b
[    1.193469] i2c 1-003b: Fixed dependency cycle(s) with /connector
[    1.193533] i2c 1-003b: Fixed dependency cycle(s) with /bus@f0000/dss@30200000
[    1.194393] i2c 1-003c: Fixed dependency cycle(s) with /bus@f0000/ticsi2rx@30102000/csi-bridge@30101000
[    1.194539] omap_i2c 20000000.i2c: bus 1 rev0.12 at 100 kHz
[    1.196504] omap_i2c 20010000.i2c: bus 2 rev0.12 at 400 kHz
[    1.198103] omap_i2c 20030000.i2c: bus 3 rev0.12 at 400 kHz
[    1.198600] ti-sci-intr 4210000.interrupt-controller: Interrupt Router 5 domain created
[    1.198761] ti-sci-intr bus@f0000:interrupt-controller@a00000: Interrupt Router 3 domain created
[    1.199109] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
[    1.200699] ti-udma 485c0100.dma-controller: Number of rings: 82
[    1.204331] ti-udma 485c0100.dma-controller: Channels: 48 (bchan: 18, tchan: 12, rchan: 18)
[    1.207836] ti-udma 485c0000.dma-controller: Number of rings: 150
[    1.214412] ti-udma 485c0000.dma-controller: Channels: 35 (tchan: 20, rchan: 15)
[    1.218083] printk: legacy console [ttyS2] disabled
[    1.501602] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 238, base_baud = 3000000) is a 8250
[    1.510506] printk: legacy console [ttyS2] enabled
[    1.510506] printk: legacy console [ttyS2] enabled
[    1.510512] printk: legacy bootconsole [ns16550a0] disabled
[    1.510512] printk: legacy bootconsole [ns16550a0] disabled
[    1.538151] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 240, base_baud = 3000000) is a 8250
[    1.541551] spi-nor spi0.0: unrecognized JEDEC id bytes: ff ff ff ff ff ff
[    1.542707] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
[    1.575982] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
[    1.580187] davinci_mdio 8000f00.mdio: phy[1]: device 8000f00.mdio:01, driver YT8531S Gigabit Ethernet
[    1.580199] davinci_mdio 8000f00.mdio: phy[5]: device 8000f00.mdio:05, driver YT8531S Gigabit Ethernet
[    1.580247] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA01103, cpsw version 0x6BA81103 Ports: 3 quirks:00000002
[    1.580546] am65-cpsw-nuss 8000000.ethernet: Use random MAC address
[    1.580665] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.5
[    1.580673] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512, Policers 32
[    1.581504] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:0
[    1.651554] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
[    1.656898] dwc3-am62 f900000.dwc3-usb: error -EINVAL: invalid resource (null)
[    1.656920] dwc3-am62 f900000.dwc3-usb: can't map PHY IOMEM resource. Won't apply i2409 fix.
[    1.657413] platform 31000000.usb: Fixed dependency cycle(s) with /bus@f0000/i2c@20030000/ptn5150@3d/connector
[    1.658311] xhci-hcd xhci-hcd.0.auto: xHCI Host Controller
[    1.658361] xhci-hcd xhci-hcd.0.auto: new USB bus registered, assigned bus number 1
[    1.658525] xhci-hcd xhci-hcd.0.auto: USB3 root hub has no ports
[    1.658532] xhci-hcd xhci-hcd.0.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000808000000010
[    1.658765] xhci-hcd xhci-hcd.0.auto: irq 244, io mem 0x31000000
[    1.660396] dwc3-am62 f910000.dwc3-usb: error -EINVAL: invalid resource (null)
[    1.660416] dwc3-am62 f910000.dwc3-usb: can't map PHY IOMEM resource. Won't apply i2409 fix.
[    1.660855] hub 1-0:1.0: USB hub found
[    1.661005] hub 1-0:1.0: 1 port detected
[    1.662419] xhci-hcd xhci-hcd.1.auto: xHCI Host Controller
[    1.662443] xhci-hcd xhci-hcd.1.auto: new USB bus registered, assigned bus number 2
[    1.662601] xhci-hcd xhci-hcd.1.auto: USB3 root hub has no ports
[    1.662608] xhci-hcd xhci-hcd.1.auto: hcc params 0x0258fe6d hci version 0x110 quirks 0x0000808000000010
[    1.662817] xhci-hcd xhci-hcd.1.auto: irq 245, io mem 0x31100000
[    1.663716] hub 2-0:1.0: USB hub found
[    1.663746] hub 2-0:1.0: 1 port detected
[    1.667409] mmc0: CQHCI version 5.10
[    1.668451] mmc1: CQHCI version 5.10
[    1.681006] 2840000.serial: ttyS0 at MMIO 0x2840000 (irq = 428, base_baud = 3000000) is a 8250
[    1.683313] 2860000.serial: ttyS1 at MMIO 0x2860000 (irq = 429, base_baud = 3000000) is a 8250
[    1.688438] mmc2: CQHCI version 5.10
[    1.688823] input: gpio-keys as /devices/platform/gpio-keys/input/input0
[    1.690463] clk: Disabling unused clocks
[    1.696070] ti-sci-clk 44043000.system-controller:clock-controller: is_prepared failed for dev=81, clk=20, ret=-19
[    1.702225] PM: genpd: Disabling unused power domains
[    1.702401] ALSA device list:
[    1.702407]   No soundcards found.
[    1.715378] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
[    1.719459] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
[    1.733307] mmc2: SDHCI controller on fa20000.mmc [fa20000.mmc] using ADMA 64-bit
[    1.760580] mmc1: new high speed SDHC card at address 0001
[    1.761942] mmc2: new high speed SDIO card at address 0001
[    1.762318] mmcblk1: mmc1:0001 EB1QT 29.8 GiB
[    1.765083]  mmcblk1: p1 p2
[    1.866800] mmc0: Command Queue Engine enabled
[    1.866822] mmc0: new HS200 MMC card at address 0001
[    1.868531] mmcblk0: mmc0:0001 8GUF4R 7.28 GiB
[    1.870130]  mmcblk0: p1 p2
[    1.870706] mmcblk0boot0: mmc0:0001 8GUF4R 31.9 MiB
[    1.872047] mmcblk0boot1: mmc0:0001 8GUF4R 31.9 MiB
[    1.873298] mmcblk0rpmb: mmc0:0001 8GUF4R 4.00 MiB, chardev (241:0)
[    1.904010] usb 2-1: new high-speed USB device number 2 using xhci-hcd
[    2.079369] hub 2-1:1.0: USB hub found
[    2.079506] hub 2-1:1.0: 4 ports detected
[    2.093736] EXT4-fs (mmcblk1p2): recovery complete
[    2.096049] EXT4-fs (mmcblk1p2): mounted filesystem 68f40984-a2ae-40c1-8cde-c7fba1606f0e r/w with ordered data mode. Quota mode: none.
[    2.096148] VFS: Mounted root (ext4 filesystem) on device 179:2.
[    2.096788] devtmpfs: mounted
[    2.097595] Freeing unused kernel memory: 1152K
[    2.097674] Run /sbin/init as init process
[    2.477757] systemd[1]: System time before build time, advancing clock.
[    2.654840] NET: Registered PF_INET6 protocol family
[    2.657179] Segment Routing with IPv6
[    2.657219] In-situ OAM (IOAM) with IPv6
[    2.697146] systemd[1]: systemd 256.5 running in system mode (-PAM -AUDIT -SELINUX -APPARMOR +IMA -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 +XKBCOMMON +UTMP -SYSVINIT -LIBARCHIVE)
[    2.697186] systemd[1]: Detected architecture arm64.

Appreciate any help solving this.

  • I discovered this is also happening when accessing the SD card.  But only on the AM6252, not the AM6254.

  • Hi Jason,

    It appears you use community kernel 6.12, which is not supported by TI processor SDK yet.

    Which U-Boot version do you use? Please try to use the SDK10.0 U-Boot to see if the issue still happen in Linux.

    Please enable CONFIG_KALLSYMS_ALL in your kernel config, so that the kernel crash log would provide some symbols to help understand the log.

  • Thank you for your response.  I do realize I am using an unsupported kernel. 

    I am using u-boot 2024.04 (TI's version)

    SYSFW ABI: 4.0 (firmware rev 0x000a '10.0.8--v10.00.08 (Fiery Fox)')

    Thank you for the CONFIG_KALLSYMS_ALL . I am incorporating that change and will report back.

  • I was able to enable symbols and reproduce the error.

    Here are the details.

    [  164.733235] Unable to handle kernel paging request at virtual address 000000040021ae1b
    [  164.733262] Mem abort info:
    [  164.733264]   ESR = 0x0000000096000045
    [  164.733268]   EC = 0x25: DABT (current EL), IL = 32 bits
    [  164.733275]   SET = 0, FnV = 0
    [  164.733277]   EA = 0, S1PTW = 0
    [  164.733280]   FSC = 0x05: level 1 translation fault
    [  164.733284] Data abort info:
    [  164.733286]   ISV = 0, ISS = 0x00000045, ISS2 = 0x00000000
    [  164.733289]   CM = 0, WnR = 1, TnD = 0, TagAccess = 0
    [  164.733293]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
    [  164.733299] user pgtable: 4k pages, 48-bit VAs, pgdp=00000000851cd000
    [  164.733304] [000000040021ae1b] pgd=0800000087590003, p4d=0800000087590003, pud=0000000000000000
    [  164.733320] Internal error: Oops: 0000000096000045 [#1] PREEMPT_RT SMP
    [  164.733326] Modules linked in:
    [  164.733336] CPU: 1 UID: 0 PID: 77 Comm: irq/206-8000000 Not tainted 6.12.0-rc5 #2
    [  164.733345] Hardware name: Texas Instruments K3 AM625 SoC (DT)
    [  164.733350] pstate: 00000005 (nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    [  164.733358] pc : __build_skb_around+0x58/0xd8
    [  164.733379] lr : build_skb+0x4c/0xa8
    [  164.733388] sp : ffff00000179fa50
    [  164.733391] x29: ffff00000179fa50 x28: ffff00007b4d4700 x27: ffff0000038a56c8
    [  164.733401] x26: ffff000003516080 x25: 0000000000000040 x24: ffff0000038e1000
    [  164.733410] x23: 0000000000000000 x22: 0000000000000000 x21: 000000040021a673
    [  164.733419] x20: 00000000000009e8 x19: ffff0000019b0100 x18: 000000265a15ef6b
    [  164.733428] x17: 0000000000000000 x16: 0000000000000000 x15: ffff00007f5b0540
    [  164.733437] x14: 00b4fbe3d79fd785 x13: 0000000000000000 x12: 00000179d77682a0
    [  164.733446] x11: ffff80008130a000 x10: ffff800080aa37a0 x9 : 0000000000000000
    [  164.733455] x8 : ffff0000019b01b8 x7 : 0000000000000000 x6 : 000000000000003f
    [  164.733464] x5 : 0000000000000040 x4 : 0000000000000000 x3 : 00000000ffffffff
    [  164.733472] x2 : 0000000000000001 x1 : 0000000000000001 x0 : 000000040021ae1b
    [  164.733481] Call trace:
    [  164.733485]  __build_skb_around+0x58/0xd8
    [  164.733493]  build_skb+0x4c/0xa8
    [  164.733502]  am65_cpsw_nuss_rx_poll+0x1ec/0x938
    [  164.733518]  __napi_poll.constprop.0+0x34/0x174
    [  164.733529]  net_rx_action+0x140/0x268
    [  164.733537]  handle_softirqs.isra.0+0xdc/0x1d0
    [  164.733548]  __local_bh_enable_ip+0x90/0xe0
    [  164.733555]  irq_forced_thread_fn+0x94/0xa8
    [  164.733566]  irq_thread+0x1cc/0x280
    [  164.733575]  kthread+0x10c/0x110
    [  164.733586]  ret_from_fork+0x10/0x20
    [  164.733598] Code: b900d274 b900d661 b9401042 79011262 (a9007c1f)
    [  164.733605] ---[ end trace 0000000000000000 ]---
    [  164.733611] Kernel panic - not syncing: Oops: Fatal exception in interrupt
    [  164.733616] SMP: stopping secondary CPUs
    [  164.733625] Kernel Offset: disabled
    [  164.733628] CPU features: 0x00,00000080,00000000,4200400b
    [  164.733634] Memory Limit: none
    [  164.988917] ---[ end Kernel panic - not syncing: Oops: Fatal exception in interrupt ]---
    

    I ran this a second time to see if the results were any different but they are not.

  • Hi Jason,

    Thanks for the new log. It is helpful.

    The log shows the problem seems to be in the CPSW ethernet driver. Since we don't validate mainline kernel 6.12 yet, can you please test with the kernel 6.6 in SDK10.0 to see if the issue also happens?

  • Hello,

    Thank you for the response.  I apologize for taking a couple of days to answer the question. I implemented the kernel in SDK 10:

    Kernel 6.6.32-rt32 on an aarch6

    I am still experiencing the issue with a 6252 processor.  I have tried to reproduce this with 6254, but I cannot. I even loaded a device tree to only enable 2 processors on the 6254, but it was still not reproducible.

    [   55.317991] Unable to handle kernel paging request at virtual address 17ffffebf90009bc
    [   55.318033] Mem abort info:
    [   55.318036]   ESR = 0x0000000096000044
    [   55.318040]   EC = 0x25: DABT (current EL), IL = 32 bits
    [   55.318046]   SET = 0, FnV = 0
    [   55.318049]   EA = 0, S1PTW = 0
    [   55.318052]   FSC = 0x04: level 0 translation fault
    [   55.318056] Data abort info:
    [   55.318058]   ISV = 0, ISS = 0x00000044, ISS2 = 0x00000000
    [   55.318062]   CM = 0, WnR = 1, TnD = 0, TagAccess = 0
    [   55.318066]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
    [   55.318070] [17ffffebf90009bc] address between user and kernel address ranges
    [   55.318077] Internal error: Oops: 0000000096000044 [#1] PREEMPT_RT SMP
    [   55.318083] Modules linked in: overlay rpmsg_ctrl rpmsg_char pru_rproc irq_pruss_intc mwifiex_sdio mwifiex snd_soc_simple_card cfg80211 snd_soc_simple_card_utils rfkill crct10dif_ce display_connector k3_j72xx_bandgap ti_k3_r5_remoteproc ov5640 v4l2_fwnode tidss v4l2_async snd_soc_davinci_mcasp at24 sa2ul rtc_ti_k3 rti_wdt sii902x videodev drm_dma_helper ti_k3_m4_remoteproc snd_soc_ti_udma authenc cdns_dphy_rx snd_soc_ti_edma pruss snd_soc_ti_sdma mc extcon_ptn5150 drm_kms_helper snd_soc_sgtl5000 m_can_platform m_can can_dev fuse drm drm_panel_orientation_quirks backlight ipv6
    [   55.318220] CPU: 0 PID: 77 Comm: irq/207-8000000 Not tainted 6.6.32-rt32 #1
    [   55.318230] Hardware name: Texas Instruments K3 AM625 SoC (DT)
    [   55.318234] pstate: 00000005 (nzcv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    [   55.318242] pc : __build_skb_around+0x60/0xe0
    [   55.318264] lr : build_skb+0x4c/0xa4
    [   55.318271] sp : ffff0000018afaf0
    [   55.318274] x29: ffff0000018afaf0 x28: 000000000a1e03e3 x27: ffff0000018d1080
    [   55.318285] x26: 0000000000000007 x25: ffff0000018d4000 x24: 0000000000000040
    [   55.318295] x23: ffff0000018efec8 x22: 17ffffebf9000214 x21: 17ffffebf9000214
    [   55.318305] x20: 00000000000009e8 x19: ffff00000696c400 x18: ffff800080d37280
    [   55.318315] x17: 0000000000000002 x16: 0000000000000000 x15: ffff00007f69f680
    [   55.318325] x14: 0000000000000002 x13: 0000008b17072d42 x12: ffff000001a4ae1c
    [   55.318335] x11: ffff800081299000 x10: ffff800080b22e90 x9 : 0000000000000000
    [   55.318345] x8 : ffff00000696c4b4 x7 : 0000000000000000 x6 : 000000000000003f
    [   55.318354] x5 : 0000000000000040 x4 : 0000000000000000 x3 : 17ffffebf90009bc
    [   55.318364] x2 : ffff800080e16008 x1 : 0000000000000000 x0 : 0000000000000001
    [   55.318374] Call trace:
    [   55.318378]  __build_skb_around+0x60/0xe0
    [   55.318387]  build_skb+0x4c/0xa4
    [   55.318394]  am65_cpsw_nuss_rx_poll+0x220/0x904
    [   55.318408]  __napi_poll.constprop.0+0x34/0x170
    [   55.318417]  net_rx_action+0x110/0x234
    [   55.318423]  __do_softirq+0xe0/0x1ec
    [   55.318432]  __local_bh_enable_ip+0x90/0xe4
    [   55.318442]  irq_forced_thread_fn+0x94/0xa8
    [   55.318452]  irq_thread+0x128/0x1cc
    [   55.318459]  kthread+0x10c/0x110
    [   55.318470]  ret_from_fork+0x10/0x20
    [   55.318483] Code: b900d660 d538d081 b8616841 79010e61 (a9007c7f)
    [   55.318489] ---[ end trace 0000000000000000 ]---
    [   55.318496] Kernel panic - not syncing: Oops: Fatal exception in interrupt
    [   55.596464] SMP: stopping secondary CPUs
    [   55.600385] Kernel Offset: disabled
    [   55.603861] CPU features: 0x0,00000008,00000000,1000400b
    [   55.609161] Memory Limit: none
    [   55.612207] ---[ end Kernel panic - not syncing: Oops: Fatal exception in interrupt ]---
    

  • I did some additional testing.  The ethernet driver is not causing this.   I removed the driver from the kernel ,and booted without  modules.  This time I get a different crash.

    [   94.001223] mmc0: running CQE recovery
    [   94.002157] Unable to
    [   94.002157] Unable to handle kernel paging request at virtual address 54fff181f240086e
    [   94.002168] Mem abort info:
    [   94.002171]   ESR = 0x0000000096000004
    [   94.002174]   EC = 0x25: DABT (current EL), IL = 32 bits
    [   94.002179]   SET = 0, FnV = 0
    [   94.002182]   EA = 0, S1PTW = 0
    [   94.002185]   FSC = 0x04: level 0 translation fault
    [   94.002189] Data abort info:
    [   94.002192]   ISV = 0, ISS = 0x00000004, ISS2 = 0x00000000
    [   94.002195]   CM = 0, WnR = 0, TnD = 0, TagAccess = 0
    [   94.002199]   GCS = 0, Overlay = 0, DirtyBit = 0, Xs = 0
    [   94.002204] [54fff181f240086e] address between user and kernel address ranges
    [   94.002212] Internal error: Oops: 0000000096000004 [#1] PREEMPT_RT SMP
    [   94.002217] Modules linked in:
    [   94.002229] CPU: 0 PID: 115 Comm: systemd-journal Not tainted 6.6.32-rt32-01501-g04a9ad081f0f-dirty #2
    [   94.002237] Hardware name: Texas Instruments K3 AM625 SoC (DT)
    [   94.002242] pstate: 20000005 (nzCv daif -PAN -UAO -TCO -DIT -SSBS BTYPE=--)
    [   94.002250] pc : __d_lookup_rcu+0x64/0x14c
    [   94.002267] lr : lookup_fast+0x30/0x138
    [   94.002276] sp : ffff000003637b00
    [   94.002279] x29: ffff000003637b00 x28: ffff0000035669c0 x27: 0000000000000000
    [   94.002289] x26: 2f2f2f2f2f2f2f2f x25: 0000000000000003 x24: ffff00000384c021
    [   94.002299] x23: ffff000003637ce4 x22: 000000035d24b713 x21: 0000000000000003
    [   94.002308] x20: ffff000001c62e10 x19: 54fff181f240087e x18: 0000000000000000
    [   94.002317] x17: 0000000000000000 x16: 0000000000000000 x15: 0000000000000000
    [   94.002326] x14: 0000000000000000 x13: 0000000000000000 x12: 0000000000000000
    [   94.002335] x11: fefefefefefefeff x10: a4a3a9a3ffbea5a2 x9 : 0000000000000000
    [   94.002344] x8 : 0b6c51718f2e65d5 x7 : ffff000001c62e10 x6 : 0000000000200000
    [   94.002353] x5 : ffff800080f8c000 x4 : 0000000000017492 x3 : ffff00007b400000
    [   94.002362] x2 : ffff000003637ce4 x1 : ffff000003637cb0 x0 : 54fff181f240087f
    [   94.002371] Call trace:
    [   94.002376]  __d_lookup_rcu+0x64/0x14c
    [   94.002382]  lookup_fast+0x30/0x138
    [   94.002389]  walk_component+0x24/0x184
    [   94.002395]  link_path_walk.part.0.constprop.0+0x224/0x354
    [   94.002403]  path_lookupat+0x38/0x19c
    [   94.002410]  filename_lookup+0x98/0x184
    [   94.002417]  user_path_at_empty+0x48/0x6c
    [   94.002424]  do_faccessat+0xec/0x2cc
    [   94.002435]  __arm64_sys_faccessat+0x20/0x28
    [   94.002444]  el0_svc_common.constprop.0+0x58/0x124
    [   94.002454]  do_el0_svc+0x18/0x20
    [   94.002461]  el0_svc+0x24/0xd0
    [   94.002470]  el0t_64_sync_handler+0x118/0x124
    [   94.002478]  el0t_64_sync+0x14c/0x150
    [   94.002490] Code: d360fed9 14000003 f9400273 b40005f3 (b85f0265)
    [   94.002495] ---[ end trace 0000000000000000 ]---
    

  • Hi Jason,

    Can you once try the lower speed modes for both eMMC/SD & if the issue still occurs?

    This patch disables the 1.8V modes & keep the speed to High Speed 3.3V only.

    diff --git a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
    index 8be252991799..968467bee360 100644
    --- a/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
    +++ b/arch/arm64/boot/dts/ti/k3-am62-main.dtsi
    @@ -589,8 +589,8 @@ sdhci0: mmc@fa10000 {
     		ti,clkbuf-sel = <0x7>;
     		ti,otap-del-sel-legacy = <0x0>;
     		ti,otap-del-sel-mmc-hs = <0x0>;
    -		ti,otap-del-sel-ddr52 = <0x5>;
    -		ti,otap-del-sel-hs200 = <0x5>;
    +		// ti,otap-del-sel-ddr52 = <0x5>;
    +		// ti,otap-del-sel-hs200 = <0x5>;
     		ti,itap-del-sel-legacy = <0xa>;
     		ti,itap-del-sel-mmc-hs = <0x1>;
     		status = "disabled";
    @@ -607,11 +607,11 @@ sdhci1: mmc@fa00000 {
     		ti,clkbuf-sel = <0x7>;
     		ti,otap-del-sel-legacy = <0x8>;
     		ti,otap-del-sel-sd-hs = <0x0>;
    -		ti,otap-del-sel-sdr12 = <0x0>;
    -		ti,otap-del-sel-sdr25 = <0x0>;
    -		ti,otap-del-sel-sdr50 = <0x8>;
    -		ti,otap-del-sel-sdr104 = <0x7>;
    -		ti,otap-del-sel-ddr50 = <0x4>;
    +		// ti,otap-del-sel-sdr12 = <0x0>;
    +		// ti,otap-del-sel-sdr25 = <0x0>;
    +		// ti,otap-del-sel-sdr50 = <0x8>;
    +		// ti,otap-del-sel-sdr104 = <0x7>;
    +		// ti,otap-del-sel-ddr50 = <0x4>;
     		ti,itap-del-sel-legacy = <0xa>;
     		ti,itap-del-sel-sd-hs = <0x1>;
     		ti,itap-del-sel-sdr12 = <0xa>;
    

    Thanks!

  • I have solved this but I do not understand the solution.

    First, I am using a board by MYIR and they provide their own kernel and u-boot.  Unfortunately, it's just in a github repo without any form of documentation.

    Both of these were a little dated and I wanted to bring them up to speed.

    So Ive worked on my own yocto distribution and u-boot and kernel.

    After a TON of diagnostics I discovered the issue seems to be in u-boot. So I pulled their version down and started going over everything.  Finally, I found what they are doing.  In fdtdec.c they've added a blurb of code:

    			autosize = ofnode_read_bool(mem, "auto-size");
    			if(autosize){
    				u64 new_size;
    				u64 start = gd->bd->bi_dram[bank].start;
    				u64 size = gd->bd->bi_dram[bank].size;
    
    
    				debug("Auto-sizing %llx, size %llx: ", start, size);
    				new_size = get_ram_size((long *)(uintptr_t)start, size);
    				if (new_size == size) {
    					debug("OK\n");
    					printf("OK\n");
    				} else {
    					debug("sized to %llx\n", new_size);
    
    					size = new_size;
    					gd->bd->bi_dram[bank].size = size;
    				}
    			}

    I found a thread about it here:

    https://e2echina.ti.com/support/machine-translation/mt-processors/f/mt-processors-forum/784369/sk-am62-ddr-1g

    (translated to English here)

    https://e2e-ti-com.translate.goog/support/processors-group/processors/f/processors-forum/1247172/sk-am62-how-to-change-ddr-to-1g?_x_tr_sl=zh-CN&_x_tr_tl=en&_x_tr_hl=en&_x_tr_pto=sc

    But this author is trying to get this to work with 1GB of RAM, while my system has 2GB. [Edit: I was wrong, My 6252 has 1GB.  I haven't checked the 6254 based board]

    I also don't know why this occurs on the 6252 but not the 6254.

    But this is what solved it.  As I mentioned I do not quite understand why this is here or what it is doing.

  • As I mentioned I do not quite understand why this is here or what it is doing.

    I think this is best answered by MYIR since it's their U-Boot you are using.

  • Well, I am not using their u-boot.   That was the issue.  But I discovered further.

    The 6254 board has 2GB of memory on it.  The 6252 has 1GB.   Seems like they wanted to use a single u-boot device tree so they made a patch the detect the memory and resize it, and then ignore the "reg" setting in the device tree.

    If only they provided documentation. Slight smile

  • Hi Jason,

    Thanks for the update.

    Since both boards use different DDR, the same U-Boot binaries by default won't run on both boards. As you have figured out, the board vendor patched U-Boot to detect the DDR size. So you would have to do something similar if you want a single U-Boot build to run on both boards.