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.

SK-AM64B: Prebuilt image fails to boot

Part Number: SK-AM64B

Hello everyone,

I am using an SK-AM64B ( SL#37221000333, ASSY#PROC100A(002) ) starter kit, and trying to boot it with the prebuilt linux image. I followed the official start guide for the board (link), downloaded the official prebuilt image mentioned in the guide (SDK ver. 08.06.00.42, default image), flashed to an SD card, the boot fails with this error message:

U-Boot SPL 2021.01-g2ee8efd654 (Feb 27 2023 - 13:51:27 +0000)
EEPROM not available at 80, trying to read at 81
Resetting on cold boot to workaround ErrataID:i2331
resetting ...

U-Boot SPL 2021.01-g2ee8efd654 (Feb 27 2023 - 13:51:27 +0000)
EEPROM not available at 80, trying to read at 81
SYSFW ABI: 3.1 (firmware rev 0x0008 '8.6.4--v08.06.04 (Chill Capybar')
SPL initial stack usage: 13424 bytes
Trying to boot from MMC2
Authentication passed
Authentication passed
Authentication passed
Authentication passed
Starting ATF on ARM64 core...

NOTICE:  BL31: v2.8(release):v2.8-226-g2fcd408bb3-dirty
NOTICE:  BL31: Built : 13:46:23, Feb 27 2023
I/TC: 
I/TC: OP-TEE version: 3.20.0 (gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (a4
I/TC: WARNING: This OP-TEE configuration might be insecure!
I/TC: WARNING: Please check https://optee.readthedocs.io/en/latest/architecture/porting_guidelines.html
I/TC: Primary CPU initializing
I/TC: SYSFW ABI: 3.1 (firmware rev 0x0008 '8.6.4--v08.06.04 (Chill Capybar')
I/TC: HUK Initialized
I/TC: Activated SA2UL device
I/TC: Enabled firewalls for SA2UL TRNG device
I/TC: SA2UL TRNG initialized
I/TC: SA2UL Drivers initialized
I/TC: Primary CPU switching to normal world boot

U-Boot SPL 2021.01-g2ee8efd654 (Feb 27 2023 - 13:49:29 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0008 '8.6.4--v08.06.04 (Chill Capybar')
Trying to boot from MMC2
Authentication passed
Authentication passed


U-Boot 2021.01-g2ee8efd654 (Feb 27 2023 - 13:49:29 +0000)

SoC:   AM64X SR2.0 HS-FS
Model: Texas Instruments AM642 SK
Board: AM64B-SKEVM rev A
DRAM:  2 GiB
NAND:  0 MiB
MMC:   mmc@fa00000: 1
Loading Environment from FAT... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
Net:   eth0: ethernet@8000000port@1
Warning: ethernet@8000000port@2 MAC addresses don't match:
Address in ROM is               34:08:e1:80:ad:74
Address in environment is       70:ff:76:1e:bd:b7
, eth1: ethernet@8000000port@2
Hit any key to stop autoboot:  0 
switch to partitions #0, OK
mmc1 is current device
SD/MMC found on device 1
Failed to load 'boot.scr'
1490 bytes read in 2 ms (727.5 KiB/s)
Loaded env from uEnv.txt
Importing environment from mmc1 ...
Running uenvcmd ...
1 bytes read in 2 ms (0 Bytes/s)
Already setup.
18862592 bytes read in 752 ms (23.9 MiB/s)
54920 bytes read in 5 ms (10.5 MiB/s)
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
   Loading Device Tree to 000000008feef000, end 000000008fffffff ... OK

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 5.10.168-rt83-gc1a1291911 (oe-user@oe-host) (aarch64-none-linux-gnu-gcc (GNU Toolchain f3
[    0.000000] Machine model: Texas Instruments AM642 SK
[    0.000000] earlycon: ns16550a0 at MMIO32 0x0000000002800000 (options '')
[    0.000000] printk: bootconsole [ns16550a0] enabled
[    0.000000] efi: UEFI not found.
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a0000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB
[    0.000000] OF: reserved mem: initialized node r5f-memory@a0100000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a1000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 15 MiB
[    0.000000] OF: reserved mem: initialized node r5f-memory@a1100000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a2000000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a2000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a2100000, size 15 MiB
[    0.000000] OF: reserved mem: initialized node r5f-memory@a2100000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3000000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a3000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a3100000, size 15 MiB
[    0.000000] OF: reserved mem: initialized node r5f-memory@a3100000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a4000000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node m4f-dma-memory@a4000000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a4100000, size 15 MiB
[    0.000000] OF: reserved mem: initialized node m4f-memory@a4100000, compatible id shared-dma-pool
[    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-0x000000009e7fffff]
[    0.000000]   node   0: [mem 0x000000009e800000-0x00000000a57fffff]
[    0.000000]   node   0: [mem 0x00000000a5800000-0x00000000ffffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000ffffffff]
[    0.000000] On node 0 totalpages: 524288
[    0.000000]   DMA zone: 8192 pages used for memmap
[    0.000000]   DMA zone: 0 pages reserved
[    0.000000]   DMA zone: 524288 pages, LIFO batch:63
[    0.000000] cma: Reserved 512 MiB at 0x00000000dd000000
[    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.2
[    0.000000] percpu: Embedded 18 pages/cpu s35392 r8192 d30144 u73728
[    0.000000] pcpu-alloc: s35392 r8192 d30144 u73728 alloc=18*4096
[    0.000000] pcpu-alloc: [0] 0 [0] 1 
[    0.000000] Detected VIPT I-cache on CPU0
[    0.000000] CPU features: detected: ARM erratum 845719
[    0.000000] CPU features: detected: GIC system register CPU interface
[    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 516096
[    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16550a,mmio32,0x02800000 mtdparts=fc40000.spi.0t
[    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] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] Memory: 1399144K/2097152K available (11008K kernel code, 1204K rwdata, 4272K rodata, 1792K init, 438K )
[    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 event tracing is enabled.
[    0.000000] rcu:     RCU restricting CPUs from NR_CPUS=256 to nr_cpu_ids=2.
[    0.000000] rcu:     RCU priority boosting: priority 1 delay 500 ms.
[    0.000000] rcu:     RCU_SOFTIRQ processing moved to rcuc kthreads.
[    0.000000]  No expedited grace period (rcu_normal_after_boot).
[    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=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] GICv3: Distributor has no Range Selector support
[    0.000000] GICv3: 16 PPIs implemented
[    0.000000] GICv3: CPU0: found redistributor 0 region 0:0x0000000001840000
[    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 @80800000 (flat, esz 8, psz 64K, shr 0)
[    0.000000] ITS: using cache flushing for cmd queue
[    0.000000] GICv3: using LPI property table @0x0000000080030000
[    0.000000] GIC: using cache flushing for LPI property table
[    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000080040000
[    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
[    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210s
[    0.000001] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
[    0.008593] Console: colour dummy device 80x25
[    0.013195] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
[    0.023871] pid_max: default: 32768 minimum: 301
[    0.028723] LSM: Security Framework initializing
[    0.033533] Mount-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.041111] Mountpoint-cache hash table entries: 4096 (order: 3, 32768 bytes, linear)
[    0.051389] rcu: Hierarchical SRCU implementation.
[    0.056963] Platform MSI: msi-controller@1820000 domain created
[    0.063466] PCI/MSI: /bus@f4000/interrupt-controller@1800000/msi-controller@1820000 domain created
[    0.072837] EFI services will not be available.
[    0.077847] smp: Bringing up secondary CPUs ...
I/TC: Secondary CPU 1 initializing
I/TC: Secondary CPU 1 switching to normal world boot
[    0.091689] Detected VIPT I-cache on CPU1
[    0.095833] GICv3: CPU1: found redistributor 1 region 0:0x0000000001860000
[    0.102865] GICv3: CPU1: using allocated LPI pending table @0x0000000080050000
[    0.110299] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.117133] smp: Brought up 1 node, 2 CPUs
[    0.121365] SMP: Total of 2 processors activated.
[    0.126187] CPU features: detected: 32-bit EL0 Support
[    0.131454] CPU features: detected: CRC32 instructions
[    0.144713] CPU: All CPU(s) started at EL2
[    0.148923] alternatives: patching kernel code
[    0.154815] devtmpfs: initialized
[    0.168147] KASLR disabled due to lack of seed
[    0.172970] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
[    0.182950] futex hash table entries: 512 (order: 4, 65536 bytes, linear)
[    0.207975] pinctrl core: initialized pinctrl subsystem
[    0.214051] DMI not present or invalid.
[    0.218836] NET: Registered protocol family 16
[    0.225721] DMA: preallocated 256 KiB GFP_KERNEL pool for atomic allocations
[    0.233153] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.241304] DMA: preallocated 256 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.250262] thermal_sys: Registered thermal governor 'step_wise'
[    0.250994] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
[    0.264173] ASID allocator initialised with 65536 entries
[    0.301091] HugeTLB registered 1.00 GiB page size, pre-allocated 0 pages
[    0.308028] HugeTLB registered 32.0 MiB page size, pre-allocated 0 pages
[    0.314899] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
[    0.321826] HugeTLB registered 64.0 KiB page size, pre-allocated 0 pages
[    0.330113] cryptd: max_cpu_qlen set to 1000
[    0.338781] k3-chipinfo 43000014.chipid: Family:AM64X rev:SR2.0 JTAGID[0x1bb3802f] Detected
[    0.348151] vcc_3v3_sys: supplied by vusb_main5v0
[    0.354912] iommu: Default domain type: Translated 
[    0.360483] SCSI subsystem initialized
[    0.365100] mc: Linux media interface: v0.10
[    0.369589] videodev: Linux video capture interface: v2.00
[    0.375339] pps_core: LinuxPPS API ver. 1 registered
[    0.380498] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.389852] PTP clock support registered
[    0.393925] EDAC MC: Ver: 3.0.0
[    0.398118] omap-mailbox 29020000.mailbox: omap mailbox rev 0x66fc9100
[    0.405094] omap-mailbox 29040000.mailbox: omap mailbox rev 0x66fc9100
[    0.411941] omap-mailbox 29060000.mailbox: omap mailbox rev 0x66fc9100
[    0.419511] FPGA manager framework
[    0.423169] Advanced Linux Sound Architecture Driver Initialized.
[    0.430695] clocksource: Switched to clocksource arch_sys_counter
[    0.437232] VFS: Disk quotas dquot_6.6.0
[    0.441323] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.455983] NET: Registered protocol family 2
[    0.460816] IP idents hash table entries: 32768 (order: 6, 262144 bytes, linear)
[    0.469972] tcp_listen_portaddr_hash hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.478846] TCP established hash table entries: 16384 (order: 5, 131072 bytes, linear)
[    0.487139] TCP bind hash table entries: 16384 (order: 7, 917504 bytes, linear)
[    0.495736] TCP: Hash tables configured (established 16384 bind 16384)
[    0.502884] UDP hash table entries: 1024 (order: 5, 131072 bytes, linear)
[    0.510044] UDP-Lite hash table entries: 1024 (order: 5, 131072 bytes, linear)
[    0.517914] NET: Registered protocol family 1
[    0.523163] RPC: Registered named UNIX socket transport module.
[    0.529288] RPC: Registered udp transport module.
[    0.534098] RPC: Registered tcp transport module.
[    0.538905] RPC: Registered tcp NFSv4.1 backchannel transport module.
[    0.545493] NET: Registered protocol family 44
[    0.550051] PCI: CLS 0 bytes, default 64
[    0.555068] hw perfevents: enabled with armv8_cortex_a53 PMU driver, 7 counters available
[    0.568572] Initialise system trusted keyrings
[    0.573538] workingset: timestamp_bits=46 max_order=19 bucket_order=0
[    0.586200] squashfs: version 4.0 (2009/01/31) Phillip Lougher
[    0.593097] NFS: Registering the id_resolver key type
[    0.598400] Key type id_resolver registered
[    0.602706] Key type id_legacy registered
[    0.606965] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
[    0.613832] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
[    0.621751] 9p: Installing v9fs 9p2000 file system support
[    0.670954] Key type asymmetric registered
[    0.675198] Asymmetric key parser 'x509' registered
[    0.680286] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 243)
[    0.687877] io scheduler mq-deadline registered
[    0.692508] io scheduler kyber registered
[    0.699675] pinctrl-single 4084000.pinctrl: 33 pins, size 132
[    0.706230] pinctrl-single f4000.pinctrl: 180 pins, size 720
[    0.713324] pinctrl-single a40000.timesync-router: 512 pins, size 2048
[    0.731494] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
[    0.757157] brd: module loaded
[    0.771547] loop: module loaded
[    0.775957] megasas: 07.714.04.00-rc1
[    0.785072] tun: Universal TUN/TAP device driver, 1.6
[    0.791258] igbvf: Intel(R) Gigabit Virtual Function Network Driver
[    0.797705] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
[    0.803843] sky2: driver version 1.30
[    0.809097] VFIO - User Level meta-driver version: 0.3
[    0.815836] i2c /dev entries driver
[    0.821049] sdhci: Secure Digital Host Controller Interface driver
[    0.827469] sdhci: Copyright(c) Pierre Ossman
[    0.832800] sdhci-pltfm: SDHCI platform and OF driver helper
[    0.840557] SMCCC: SOC_ID: ARCH_SOC_ID not implemented, skipping ....
[    0.849276] optee: probing for conduit method.
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.853991] optee: revision 3.20 (8e74d476)
[    0.870733] optee: dynamic shared memory is enabled
[    0.880479] optee: initialized driver
[    0.887331] NET: Registered protocol family 17
[    0.892173] 9pnet: Installing 9P2000 support
[    0.896682] Key type dns_resolver registered
[    0.901579] printk: bootconsole [ns16550a0]: printing thread started
[    0.901652] Loading compiled-in X.509 certificates
[    0.923441] ti-sci 44043000.dmsc: lpm region is required for suspend but not provided.
[    0.923550] ti-sci 44043000.dmsc: ABI: 3.1 (firmware rev 0x0008 '8.6.4--v08.06.04 (Chill Capybar')
[    0.975899] omap-gpmc 3b000000.memory-controller: GPMC revision 6.0
[    0.975923] gpmc_mem_init: disabling cs 0 mapped at 0x0-0x1000000
[    0.983567] omap_i2c 20000000.i2c: bus 0 rev0.12 at 100 kHz
[    0.985482] pca953x 1-0070: supply vcc not found, using dummy regulator
[    0.985674] pca953x 1-0070: using no AI
[    1.007747] omap_i2c 20010000.i2c: bus 1 rev0.12 at 400 kHz
[    1.009331] omap_i2c 20020000.i2c: bus 2 rev0.12 at 100 kHz
[    1.009855] ti-sci-intr bus@f4000:bus@4000000:interrupt-controller1: Interrupt Router 5 domain created
[    1.010094] ti-sci-intr bus@f4000:interrupt-controller0: Interrupt Router 3 domain created
[    1.010496] ti-sci-inta 48000000.interrupt-controller: Interrupt Aggregator domain 28 created
[    1.023767] ti-udma 485c0100.dma-controller: Number of rings: 68
[    1.025300] ti-udma 485c0100.dma-controller: Channels: 24 (bchan: 12, tchan: 6, rchan: 6)
[    1.055591] printk: console [ttyS2]: printing thread started
[    1.027589] ti-udma 485c0000.dma-controller: Number of rings: 288
[    1.055630] printk: console [ttyS2] enabled
[    1.055634] printk: bootconsole [ns16550a0] disabled
[    1.076086] printk: bootconsole [ns16550a0]: printing thread stopped
[    1.081522] omap8250 2840000.serial: PM domain pd:155 will not be powered off
[    1.082017] 2840000.serial: ttyS6 at MMIO 0x2840000 (irq = 17, base_baud = 3000000) is a 8250
[    1.082222] serial serial0: tty port ttyS6 registered
[    1.092710] spi-nor spi0.0: s28hs512t (65536 Kbytes)
[    1.092760] 7 cmdlinepart partitions found on MTD device fc40000.spi.0
[    1.092766] Creating 7 MTD partitions on "fc40000.spi.0":
[    1.092804] 0x000000000000-0x000000100000 : "ospi.tiboot3"
[    1.094475] 0x000000100000-0x000000300000 : "ospi.tispl"
[    1.096006] 0x000000300000-0x000000700000 : "ospi.u-boot"
[    1.097389] 0x000000700000-0x000000740000 : "ospi.env"
[    1.098952] 0x000000740000-0x000000780000 : "ospi.env.backup"
[    1.100453] 0x000000800000-0x000003fc0000 : "ospi.rootfs"
[    1.101888] 0x000003fc0000-0x000004000000 : "ospi.phypattern"
[    1.136479] davinci_mdio 8000f00.mdio: Configuring MDIO in manual mode
[    1.174667] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
[    1.177699] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
[    1.177719] davinci_mdio 8000f00.mdio: phy[1]: device 8000f00.mdio:01, driver TI DP83867
[    1.177855] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA00903, cpsw version 0x6BA8096
[    1.178097] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.4
[    1.178105] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
[    1.179136] pps pps0: new PPS source ptp0
[    1.179619] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1
[    1.181950] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 16
    1.194873] am65-cpts 39000000.cpts: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:0
[    1.195900] k3-j72xx-soc-thermal b00000.temperature-sensor: invalid resource
[    1.195955] k3-j72xx-soc-thermal: probe of b00000.temperature-sensor failed with error -22
[    1.201603] gpio-478 (btuart_rts_sel): hogged as output/high
[    1.210480] vdd_mmc1: supplied by vcc_3v3_sys
[    1.211934] wlan_en: supplied by com8_ls_en
[    1.217380] mmc0: CQHCI version 5.10
[    1.217653] debugfs: Directory 'pd:114' with parent 'pm_genpd' already present!
[    1.218188] mmc1: CQHCI version 5.10
[    1.230902] ALSA device list:
[    1.230918]   No soundcards found.
[    1.263323] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
[    1.263772] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
[    1.270261] sdhci-am654 fa10000.mmc: card claims to support voltages below defined range
[    1.272297] Waiting for root device PARTUUID=a974ccb8-02...
[    1.282257] mmc0: new SDIO card at address 0001
[    1.306969] mmc1: error -110 whilst initialising SD card
[    1.486886] mmc1: error -110 whilst initialising SD card
[    1.659773] mmc1: error -110 whilst initialising SD card
[    1.837060] mmc1: error -110 whilst initialising SD card

The end of the log is similar to ticket https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1222144/sk-am64b-sk-am64b-with-prebuild-wic-image-sdk8-6-cannot-boot/4636716#4636716.

I tried with several different SD cards made by different manufacturers (Samsung, Kingston, Sandisk, Hama) and all of them fails to boot. They are known and used SD cards, functioning properly in different environments. A comment in the ticket above suggests to use Sandisk SDSQUAR-016G-GN6MA or SDSQUNS-016G-GN3MN. Are they other suggested SD cards which boots with this board? What could be the solution?

BR,

András

  • Hi Andras

    This is still under debug and investigation. 

    Can you share pictures of some of your failing SD cards. 

  • Using Sandisk 32GB High Endurance U3 card, it hangs at the mmc1 error.  Known good card, working in NextBase dashcam and PC.

    Using Sandisk Ultra 16GB, older slower U1 card (sorry, don't know which one).  Again, known good.  UBoot works, but only gets as far as:

    Trying to boot from MMC2

    Error reading cluster

    ** Unable to read file tispl.bin **

    No matching DT out of these options:

    No matching DT out of these options:

    SPL: failed to boot from all boot devices

    ### ERROR ### Please RESET the board ###

    I have another board, which I'll try tomorrow.  I don't hold out much hope, though.

  • Hello Marcus

    We think the failures on the EVM are related to not having the right pu/pd as recommended in our schematic checklist 

    https://www.ti.com/lit/an/spracu5b/spracu5b.pdf

    Have you included the correct pull resistors for the MMC1 interface ? An approximately 50 KΩ Pull-down resistor is recommended for SD-CARD implementations on the MMC1_CLK pin. Pull-ups of approximately 50 KΩ should be used for each of the CMD and DAT signals as per the SD Card specification

    We modified a few EVMs and all previously reported failing cards that we could find are passing. We are still finalizing our observations and assessment on this, but if you have the ability to populate the DNIs on the EVM, you can try this yourself too.

    Regards

    Mukul 

  • HI Mukul,

    Unfortunately, I can barely see the resistors, let alone solder them on NerdDisappointed  I don't suppose it's possible to enable weak pull-up/downs on those lines in U-Boot and maybe run the card slower..?  (U-Boot seems to run from the card, presumably in some default low-speed mode?)

  • Hi Marcus

    For this issue for the failing SD cards, they failed even in legacy mode - so you will need the board mods or use SD cards that are not susceptible to this

    The rework on the EVM snapshotted below 

  • Thanks, but they're way too small for me to solder.  Even with air reflow, it's more likely to blow the existing components off the board.  Especially the way I solder Slight smile

    As for the SD cards, I'm loathed to fork out for random cards which may or may not work, depending on whether Sandisk have changed the insides, or whether the 3rd-party vendors on Amazon have really got genuine ones for sale, with the same spec as the ones TI have tested...  one of mine looks like it's the same model, but it doesn't work.

    How do I go about returning the boards to be fixed?

  • Marcus

    How do I go about returning the boards to be fixed?

    I will check with our EVM team. The current EVM does not have this fix, so either you can make these changes or try the SD cards that work. I understand and appreciate the challenges and nuisance it may be causing you - however I do not think we have a schema for you to send a board to us and we making these changes tec. 

    Have you tried the ones that were suggested working

    A comment in the ticket above suggests to use Sandisk SDSQUAR-016G-GN6MA or SDSQUNS-016G-GN3MN.  

  • Unfortunately, as these are obsolete cards, I could only find the first one on Amazon UK.  When I went to order it, we're blocked as it's sold by a 3rd party (our Amazon Business store is somewhat limited...)  Thwarted at every turn.

  • We recently bought a few of the following 

    https://www.amazon.co.uk/SanDisk-Ultra-Android-MicroSDHC-Memory/dp/B074B4P7KD/

    let me confirm to you if these work without modifying the board

  • These are also not sold directly by Amazon, so we can't order it.  However, I have a 32GB card which looks identical to that one, and it doesn't work.  I've ordered one of the SDSQUAR cards on my personal account, so I'll see if that makes a difference. 

    I hope I'm proved wrong, but I think it's just the luck of the draw whether a card works or not.  If it starts the boot process, then it must be able to access the card in some way?  Once it gets configured for full-speed access (which is presumably where the error -110 comes in), it's entirely luck as to whether it will work with different gate and board capacitances etc.  I can't see Sandisk building in 50k pull resistors...

  • Hello Marcus

    Thanks for the update

    SanDisk Ultra SDSQUNS-016G-GN3MN 16GB 80MB/s UHS-I Class 10 microSDHCCard

    We were able to test this and confirmed that it works with the unmodified EVM. 

    Assuming your issue is the same as other posters reported, you will need to either modify the board or find a SD card that works. The failures happened even in legacy mode , so speed did not make a difference much. 

    I can see that all of this is a lot of inconvenience for you, but this is the best guidance I have at the moment on this. 

    Regards

    Mukul 

  • The new card arrived. I thought it was completely dead, but it turns out I was flashing the wrong image to it.  Once I realised that I shouldn't be using the HS image and just the normal Linux SDK image (which now includes HS-FS support) it booted and it works!

    I'll order another card for the other board, and hopefully it'll be the same.

  • Awesome. Great to hear that. Yes if your original issue was more to do with picking the right image to manage the GP to HS transition , it may never have been related to the problems we were working on other threads that showed SD card to card variability. 

    I am hoping you will be up and running now. 

    I am marking this thread resolved. Feel free to reopen if you run into any issue on this topic.