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.

AM62A7: Can't configure to boot from eMMC

Part Number: AM62A7
Other Parts Discussed in Thread: UNIFLASH

Tool/software:

Hello,

I'm following the Academy page https://dev.ti.com/tirex/explore/node?node=A__AQkwMvG9F0GKWPdIDOFokg__AM62A-ACADEMY__WeZ9SsL__LATEST

I'd managed to execute all stages including the 

=> setenv mmcdev 0
=> setenv bootpart 0

last command, which is saveenv - not relevant and not exist.

I'm stuck at " switch to eMMC boot mode by changing the EVM bootmode switches"

I'm configuring the switches accordingly and removing the SDCARD. As a result - nothing on UARTs (all of them)

But, when I'm configuring the switches to SDCARD boot mode:

U-Boot SPL 2023.04-gb0d717b732 (Dec 06 2023 - 15:11:45 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.1.8--v09.01.08 (Kool Koala)')
am62a_init: board_init_f done
SPL initial stack usage: 17040 bytes
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Trying to boot from MMC2
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Authentication passed
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Authentication passed
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Authentication passed
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Authentication passed
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Authentication passed
Starting ATF on ARM64 core...

NOTICE:  BL31: v2.9(release):v2.9.0-614-gd7a7135d32-dirty
NOTICE:  BL31: Built : 09:34:15, Aug 24 2023

U-Boot SPL 2023.04-gb0d717b732 (Dec 06 2023 - 15:11:45 +0000)
SYSFW ABI: 3.1 (firmware rev 0x0009 '9.1.8--v09.01.08 (Kool Koala)')
am62a_init: board_init_f done
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Trying to boot from MMC2
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Authentication passed
am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
Authentication passed


U-Boot 2023.04-gb0d717b732 (Dec 06 2023 - 15:11:45 +0000)

SoC:   AM62AX SR1.0 HS-FS
Model: Texas Instruments AM62A7 SK
DRAM:  2 GiB (effective 4 GiB)
Core:  58 devices, 28 uclasses, devicetree: separate
MMC:   mmc@fa10000: 0, mmc@fa00000: 1
Loading Environment from nowhere... OK
In:    serial@2800000
Out:   serial@2800000
Err:   serial@2800000
Net:   eth0: ethernet@8000000port@1
Hit any key to stop autoboot:  0 
 

Next, in UBOOT I'm running the following command:

=> mmc partconf 0 1 1 1
=> mmc bootbus 0 2 0 0
=> setenv mmcdev 0
=> setenv bootpart 0
=> setenv boot_targets ti_mmc
Removing the SDCARD
=> boot
switch to partitions #0, OK
mmc0(part 0) is current device
SD/MMC found on device 0
Failed to load 'boot.scr'
Can't set block device
## Error: "main_cpsw0_qsgmii_phyinit" not defined
15442432 bytes read in 107 ms (137.6 MiB/s)
58257 bytes read in 23 ms (2.4 MiB/s)
Working FDT set to 88000000
## Flattened Device Tree blob at 88000000
   Booting using the fdt blob at 0x88000000
Working FDT set to 88000000
   Loading Device Tree to 000000008feee000, end 000000008fffffff ... OK
Working FDT set to 8feee000

Starting kernel ...

[    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
[    0.000000] Linux version 6.1.80-rt26-ti-rt-g3c08dbfd7bfd (oe-user@oe-host) (aarch64-oe-linux-gcc (GCC) 11.4.0, GNU ld (GNU Binutils) 2.38.20220708) #1 SMP PREEMPT_RT Wed Mar 20 14:44:35 UTC 2024
[    0.000000] Machine model: Texas Instruments AM62A7 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 CMA memory pool at 0x00000000c0000000, size 576 MiB
[    0.000000] OF: reserved mem: initialized node linux,cma, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x0000000099800000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node c7x-dma-memory@99800000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x0000000099900000, size 30 MiB
[    0.000000] OF: reserved mem: initialized node c7x-memory@99900000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009b800000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9b800000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009b900000, size 15 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9b900000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009c800000, size 1 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9c800000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x000000009c900000, size 30 MiB
[    0.000000] OF: reserved mem: initialized node r5f-dma-memory@9c900000, compatible id shared-dma-pool
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 32 MiB
[    0.000000] OF: reserved mem: initialized node edgeai-dma-memory@a1000000, compatible id shared-dma-pool
[    0.000000] OF: reserved mem: initialized node edgeai_shared-memories, compatible id dma-heap-carveout
[    0.000000] Reserved memory: created DMA memory pool at 0x00000000ae000000, size 288 MiB
[    0.000000] OF: reserved mem: initialized node edgeai-core-heap-memory@ae000000, compatible id shared-dma-pool
[    0.000000] Zone ranges:
[    0.000000]   DMA      [mem 0x0000000080000000-0x00000000ffffffff]
[    0.000000]   DMA32    empty
[    0.000000]   Normal   [mem 0x0000000100000000-0x00000008ffffffff]
[    0.000000] Movable zone start for each node
[    0.000000] Early memory node ranges
[    0.000000]   node   0: [mem 0x0000000080000000-0x00000000997fffff]
[    0.000000]   node   0: [mem 0x0000000099800000-0x000000009b7fefff]
[    0.000000]   node   0: [mem 0x000000009b800000-0x000000009e6fffff]
[    0.000000]   node   0: [mem 0x000000009e700000-0x000000009e77ffff]
[    0.000000]   node   0: [mem 0x000000009e780000-0x00000000a2ffffff]
[    0.000000]   node   0: [mem 0x00000000a3000000-0x00000000adffffff]
[    0.000000]   node   0: [mem 0x00000000ae000000-0x00000000bfffffff]
[    0.000000]   node   0: [mem 0x00000000c0000000-0x00000000ffffffff]
[    0.000000]   node   0: [mem 0x0000000880000000-0x00000008ffffffff]
[    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000008ffffffff]
[    0.000000] On node 0, zone DMA: 1 pages in unavailable ranges
[    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.4
[    0.000000] percpu: Embedded 20 pages/cpu s44928 r8192 d28800 u81920
[    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] Built 1 zonelists, mobility grouping on.  Total pages: 1032191
[    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=4d8ab904-01 rw rootfstype=ext4 rootwait
[    0.000000] Dentry cache hash table entries: 524288 (order: 10, 4194304 bytes, linear)
[    0.000000] Inode-cache hash table entries: 262144 (order: 9, 2097152 bytes, linear)
[    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
[    0.000000] software IO TLB: area num 4.
[    0.000000] software IO TLB: mapped [mem 0x00000000fbfff000-0x00000000fffff000] (64MB)
[    0.000000] Memory: 2819960K/4194300K available (9792K kernel code, 1192K rwdata, 2244K rodata, 1728K init, 422K bss, 784516K reserved, 589824K cma-reserved)
[    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 restricting CPUs from NR_CPUS=256 to nr_cpu_ids=4.
[    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=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: 0xffff800008411560
[    0.000000] GICv3: GICv3 features: 16 PPIs
[    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 @880800000 (flat, esz 8, psz 64K, shr 0)
[    0.000000] ITS: using cache flushing for cmd queue
[    0.000000] GICv3: using LPI property table @0x0000000880030000
[    0.000000] GIC: using cache flushing for LPI property table
[    0.000000] GICv3: CPU0: using allocated LPI pending table @0x0000000880040000
[    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.000227] Console: colour dummy device 80x25
[    0.590236] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=200000)
[    0.590244] pid_max: default: 32768 minimum: 301
[    0.590316] LSM: Security Framework initializing
[    0.590414] Mount-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.590431] Mountpoint-cache hash table entries: 8192 (order: 4, 65536 bytes, linear)
[    0.591731] rcu: Hierarchical SRCU implementation.
[    0.591736] rcu:     Max phase no-delay instances is 400.
[    0.591773] printk: bootconsole [ns16550a0] printing thread started
[    0.644180] Platform MSI: msi-controller@1820000 domain created
[    0.644363] PCI/MSI: /bus@f0000/interrupt-controller@1800000/msi-controller@1820000 domain created
[    0.644439] EFI services will not be available.
[    0.644626] smp: Bringing up secondary CPUs ...
[    0.645188] Detected VIPT I-cache on CPU1
[    0.645273] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
[    0.645287] GICv3: CPU1: using allocated LPI pending table @0x0000000880050000
[    0.645327] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
[    0.695312] Detected VIPT I-cache on CPU2
[    0.695387] GICv3: CPU2: found redistributor 2 region 0:0x00000000018c0000
[    0.695399] GICv3: CPU2: using allocated LPI pending table @0x0000000880060000
[    0.695429] CPU2: Booted secondary processor 0x0000000002 [0x410fd034]
[    0.721187] Detected VIPT I-cache on CPU3
[    0.721258] GICv3: CPU3: found redistributor 3 region 0:0x00000000018e0000
[    0.721269] GICv3: CPU3: using allocated LPI pending table @0x0000000880070000
[    0.721296] CPU3: Booted secondary processor 0x0000000003 [0x410fd034]
[    0.721345] smp: Brought up 1 node, 4 CPUs
[    0.721350] SMP: Total of 4 processors activated.
[    0.755534] CPU features: detected: 32-bit EL0 Support
[    0.755538] CPU features: detected: CRC32 instructions
[    0.755577] CPU: All CPU(s) started at EL2
[    0.755579] alternatives: applying system-wide alternatives
[    0.756758] devtmpfs: initialized
[    0.767851] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 1911260446275000 ns
[    0.767869] futex hash table entries: 1024 (order: 4, 65536 bytes, linear)
[    0.785151] pinctrl core: initialized pinctrl subsystem
[    0.785654] DMI not present or invalid.
[    0.786088] NET: Registered PF_NETLINK/PF_ROUTE protocol family
[    0.813196] DMA: preallocated 512 KiB GFP_KERNEL pool for atomic allocations
[    0.813374] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA pool for atomic allocations
[    0.813547] DMA: preallocated 512 KiB GFP_KERNEL|GFP_DMA32 pool for atomic allocations
[    0.813608] audit: initializing netlink subsys (disabled)
[    0.813704] audit: type=2000 audit(0.811:1): state=initialized audit_enabled=0 res=1
[    0.814196] thermal_sys: Registered thermal governor 'step_wise'
[    0.814361] ASID allocator initialised with 65536 entries
[    0.824658] platform a40000.pinctrl: Fixed dependency cycle(s) with /bus@f0000/pinctrl@a40000/cpsw-cpts
[    0.835798] HugeTLB: registered 1.00 GiB page size, pre-allocated 0 pages
[    0.835806] HugeTLB: 0 KiB vmemmap can be freed for a 1.00 GiB page
[    0.835810] HugeTLB: registered 32.0 MiB page size, pre-allocated 0 pages
[    0.835813] HugeTLB: 0 KiB vmemmap can be freed for a 32.0 MiB page
[    0.835817] HugeTLB: registered 2.00 MiB page size, pre-allocated 0 pages
[    0.835819] HugeTLB: 0 KiB vmemmap can be freed for a 2.00 MiB page
[    0.835824] HugeTLB: registered 64.0 KiB page size, pre-allocated 0 pages
[    0.835826] HugeTLB: 0 KiB vmemmap can be freed for a 64.0 KiB page
[    0.837306] k3-chipinfo 43000014.chipid: Family:AM62AX rev:SR1.0 JTAGID[0x0bb8d02f] Detected
[    0.838881] iommu: Default domain type: Translated 
[    0.838887] iommu: DMA domain TLB invalidation policy: strict mode 
[    0.839168] SCSI subsystem initialized
[    0.839497] usbcore: registered new interface driver usbfs
[    0.839534] usbcore: registered new interface driver hub
[    0.839562] usbcore: registered new device driver usb
[    0.840010] pps_core: LinuxPPS API ver. 1 registered
[    0.840013] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
[    0.840028] PTP clock support registered
[    0.840162] EDAC MC: Ver: 3.0.0
[    0.840866] omap-mailbox 29000000.mailbox: omap mailbox rev 0x66fca100
[    0.841046] omap-mailbox 29010000.mailbox: omap mailbox rev 0x66fca100
[    0.841193] omap-mailbox 29020000.mailbox: omap mailbox rev 0x66fca100
[    0.841253] omap-mailbox 29030000.mailbox: no available mbox devices found
[    0.841513] FPGA manager framework
[    0.841598] Advanced Linux Sound Architecture Driver Initialized.
[    0.842469] clocksource: Switched to clocksource arch_sys_counter
[    0.842662] VFS: Disk quotas dquot_6.6.0
[    0.842695] VFS: Dquot-cache hash table entries: 512 (order 0, 4096 bytes)
[    0.849130] Carveout Heap: Exported 176 MiB at 0x00000000a3000000
[    1.0[47954] printk: console [ttyS2] printing thread started
    0.849226] NET: Registered PF_INET protocol family
[    1.047970] printk: console [ttyS2] enabled
[    1.047974] printk: bootconsole [ns16550a0] disabled
[    1.058509] printk: bootconsole [ns16550a0] printing thread stopped
[    1.061097] spi-nand spi0.0: Winbond SPI NAND was found.
[    1.061106] spi-nand spi0.0: 128 MiB, block size: 256 KiB, page size: 4096, OOB size: 128
[    1.061329] 7 fixed-partitions partitions found on MTD device spi0.0
[    1.061337] Creating 7 MTD partitions on "spi0.0":
[    1.061342] 0x000000000000-0x000000080000 : "ospi_nand.tiboot3"
[    1.062914] 0x000000080000-0x000000280000 : "ospi_nand.tispl"
[    1.065087] 0x000000280000-0x000000680000 : "ospi_nand.u-boot"
[    1.068107] 0x000000680000-0x0000006c0000 : "ospi_nand.env"
[    1.069382] 0x0000006c0000-0x000000700000 : "ospi_nand.env.backup"
[    1.070686] 0x000002000000-0x000007fc0000 : "ospi_nand.rootfs"
[    1.116270] 0x000007fc0000-0x000008000000 : "ospi_nand.phypattern"
[    1.152499] davinci_mdio 8000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
[    1.154443] davinci_mdio 8000f00.mdio: phy[0]: device 8000f00.mdio:00, driver TI DP83867
[    1.154497] am65-cpsw-nuss 8000000.ethernet: initializing am65 cpsw nuss version 0x6BA01103, cpsw version 0x6BA81103 Ports: 3 quirks:00000006
[    1.154613] am65-cpsw-nuss 8000000.ethernet: initialized cpsw ale version 1.5
[    1.154619] am65-cpsw-nuss 8000000.ethernet: ALE Table size 512
[    1.155049] pps pps0: new PPS source ptp0
[    1.155287] am65-cpsw-nuss 8000000.ethernet: CPTS ver 0x4e8a010c, freq:500000000, add_val:1 pps:1
[    1.181869] am65-cpsw-nuss 8000000.ethernet: set new flow-id-base 19
[    1.184516] mmc0: CQHCI version 5.10
[    1.226039] mmc0: SDHCI controller on fa10000.mmc [fa10000.mmc] using ADMA 64-bit
[    1.306784] mmc0: Command Queue Engine enabled
[    1.306798] mmc0: new HS200 MMC card at address 0001
[    1.307295] mmcblk0: mmc0:0001 S0J56X 14.8 GiB 
[    1.308826]  mmcblk0: p1
[    1.309249] mmcblk0boot0: mmc0:0001 S0J56X 31.5 MiB 
[    1.310274] mmcblk0boot1: mmc0:0001 S0J56X 31.5 MiB 
[    1.311215] mmcblk0rpmb: mmc0:0001 S0J56X 4.00 MiB, chardev (240:0)
[    1.474566] tps6594-rtc tps6594-rtc.4.auto: registered as rtc0
[    1.474709] tps6594-rtc tps6594-rtc.4.auto: hctosys: unable to read the hardware clock
[    1.475037] pca953x 1-0022: supply vcc not found, using dummy regulator
[    1.475155] pca953x 1-0022: using AI
[    1.482278] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
[    1.482767] mmc1: CQHCI version 5.10
[    1.483802] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
[    1.483815] debugfs: Directory 'pd:182' with parent 'pm_genpd' already present!
[    1.490630] ALSA device list:
[    1.490639]   No soundcards found.
[    2.995475] sdhci-am654 fa00000.mmc: Power on failed
[    3.026092] mmc1: SDHCI controller on fa00000.mmc [fa00000.mmc] using ADMA 64-bit
[    3.032777] EXT4-fs (mmcblk0p1): mounted filesystem with ordered data mode. Quota mode: none.
[    3.032839] VFS: Mounted root (ext4 filesystem) on device 179:1.
[    3.033570] devtmpfs: mounted
[    3.034139] Freeing unused kernel memory: 1728K
[    3.043541] Run /sbin/init as init process
[    3.121281] systemd[1]: System time before build time, advancing clock.
[    3.141149] NET: Registered PF_INET6 protocol family
[    3.142140] Segment Routing with IPv6
[    3.142172] In-situ OAM (IOAM) with IPv6
[    3.154440] systemd[1]: systemd 250.5+ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LI
BCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=hybrid)

Welcome to Arago 2023.10!

[    3.155037] systemd[1]: Detected architecture arm64.
[    3.194780] systemd[1]: Hostname set to <am62axx-evm>.
[    3.461599] systemd[1]: /etc/systemd/system/sync-clocks.service:11: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the s
etting altogether.
[    3.506055] systemd[1]: Queued start job for default target Multi-User System.
[    3.535209] systemd[1]: Created slice Slice /system/getty.
[  OK  ] Created slice Slice /system/getty.
[  OK  ] Created slice Slice /system/modprob[    3.550862] systemd[1]: Created slice Slice /system/modprobe.
e.
[  OK  ] Created slice Slice /system/serial-[    3.565856] systemd[1]: Created slice Slice /system/serial-getty.
getty.
[    3.581431] systemd[1]: Created slice User and Session Slice.
[  OK  ] Created slice User and Session Slice.
[  OK  ] Started Dispatch Password …ts to [    3.595888] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
Console Directory Watch.
[  OK  ] Started Forward Password R…uests [    3.612824] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
to Wall Directory Watch.
[  OK  ] Reached target Path Units.
[    3.631844] systemd[1]: Reached target Path Units.
[  OK  ] Reached target Remote File Systems   3.642198] systemd[1]: Reached target Remote File Systems.
[0m.
[  OK  ] Reached target Slice Units.
[    3.655584] systemd[1]: Reached target Slice Units.
[  OK  ] Reached target Swaps.
[    3.666083] systemd[1]: Reached target Swaps.
[  OK  ] Listening on Process Core Dump Sock[    3.683484] systemd[1]: Listening on Process Core Dump Socket.
et.
[  OK  ] Listening on initctl Compatibility [    3.697921] systemd[1]: Listening on initctl Compatibility Named Pipe.
Named Pipe.
[    3.713327] systemd[1]: Listening on Journal Audit Socket.
[  OK  ] Listening on Journal Audit Socket.
[  OK  ] Listening on Journal Socket (/dev/l[    3.728098] systemd[1]: Listening on Journal Socket (/dev/log).
og).
[  OK  ] Listening on Journal Socket.
[    3.743088] systemd[1]: Listening on Journal Socket.
[    3.754449] systemd[1]: Listening on Network Service Netlink Socket.
[  OK  ] Listening on Network Service Netlink Socket.
[  OK  ] Listening on udev Control Socket    3.772536] systemd[1]: Listening on udev Control Socket.
m.
[  OK  ] Listening on udev Kernel Socket[    3.787039] systemd[1]: Listening on udev Kernel Socket.
.
[  OK  ] Listening on User Database Manager [    3.801067] systemd[1]: Listening on User Database Manager Socket.
Socket.
         Mounting Huge Pages File System...
[    3.829889] systemd[1]: Mounting Huge Pages File System...
         Mounting POSIX Message Queue File System..[    3.843672] systemd[1]: Mounting POSIX Message Queue File System...
.
         Mounting Kernel Debug File System...
[    3.861601] systemd[1]: Mounting Kernel Debug File System...
[    3.873257] systemd[1]: Kernel Trace File System was skipped because of a failed condition check (ConditionPathExists=/sys/kernel/tracing).
         Mounting Temporary Directory /tmp...
[    3.876822] systemd[1]: Mounting Temporary Directory /tmp...
[    3.897407] systemd[1]: Create List of Static Device Nodes was skipped because of a failed condition check (ConditionFileNotEmpty=/lib/modules/6.1.80-rt26-ti-rt-g3c08dbfd7bfd/modules.devname).
         Starting Load Kernel Module configfs...
[    3.900699] systemd[1]: Starting Load Kernel Module configfs...
         Starting Load Kernel Module drm...
[    3.929519] systemd[1]: Starting Load Kernel Module drm...
         Starting Load Kernel Module fuse...
[    3.943588] systemd[1]: Starting Load Kernel Module fuse...
[    3.954791] systemd[1]: File System Check on Root Device was skipped because of a failed condition check (ConditionPathIsReadWrite=!/).
         Starting Journal Service...[    3.955579] systemd[1]: systemd-journald.service: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.

[    3.955592] systemd[1]: (This warning is only shown for the first unit using IP firewalling.)
[    3.959765] systemd[1]: Starting Journal Service...
[    3.995604] systemd[1]: Load Kernel Modules was skipped because all trigger condition checks failed.
         Starting Generate network …ts from Kernel co[    3.998739] systemd[1]: Starting Generate network units from Kernel command line...
mmand line...
         Starting Remount Root and Kernel File Systems   4.041143] systemd[1]: Starting Remount Root and Kernel File Systems...
[0m...
[    4.057200] EXT4-fs (mmcblk0p1): re-mounted. Quota mode: none.
[    4.060823] systemd[1]: Starting Apply Kernel Variables...
         Starting Apply Kernel Variables...
         Starting Coldplug All udev Devices...
[    4.085173] systemd[1]: Starting Coldplug All udev Devices...
[  OK  ] Started Journal Service.
[    4.104246] systemd[1]: Started Journal Service.
[  OK  ] Mounted Huge Pages File System.
[  OK  ] Mounted POSIX Message Queue File System.
[  OK  ] Mounted Kernel Debug File System.
[  OK  ] Mounted Temporary Directory /tmp.
[  OK  ] Finished Load Kernel Module configfs.
[  OK  ] Finished Load Kernel Module drm.
[  OK  ] Finished Load Kernel Module fuse.
[  OK  ] Finished Generate network units from Kernel command line.
[  OK  ] Finished Remount Root and Kernel File Systems.
[  OK  ] Finished Apply Kernel Variables.
[  OK  ] Reached target Preparation for Network.
         Mounting Kernel Configuration File System...
         Starting Flush Journal to Persistent Storage...
         Starting Create Static Device Nodes in /dev    4.294511] systemd-journald[183]: Received client request to flush runtime journal.
m...
[  OK  ] Mounted Kernel Configuration File System.
[  OK  ] Finished Flush Journal to Persistent Storage.
[  OK  ] Finished Create Static Device Nodes in /dev.
[  OK  ] Reached target Preparation for Local File Systems.
         Mounting /media/ram...
         Mounting /var/volatile...
         Starting Rule-based Manage…for Device Events and Files...
[  OK  ] Mounted /media/ram.
[  OK  ] Mounted /var/volatile.
         Starting Load/Save Random Seed...
[  OK  ] Reached target Local File Systems.
         Starting Create Volatile Files and Directories...
[  OK  ] Started Rule-based Manager for Device Events and Files.
         Starting Network Configuration...
[  OK  ] Finished Create Volatile Files and Directories.
         Starting Network Time Synchronization...
         Starting Record System Boot/Shutdown in UTMP...
[  OK  ] Finished Coldplug All udev Devices.
[  OK  ] Finished Record System Boot/Shutdown in UTMP.
[    4.675562] random: crng init done
[  OK  ] Finished Load/Save Random Seed.
[  OK  ] Found device /dev/ttyS2.
[  OK  ] Started Network Configuration.
[    4.864862] am65-cpsw-nuss 8000000.ethernet eth0: PHY [8000f00.mdio:00] driver [TI DP83867] (irq=POLL)
         Starting Network Name Resolution...[    4.864885] am65-cpsw-nuss 8000000.ethernet eth0: configuring for phy/rgmii-rxid link mode

[    4.931837] mtdblock: MTD device 'ospi_nand.tiboot3' is NAND, please consider using UBI block devices instead.
[    4.942987] mtdblock: MTD device 'ospi_nand.tispl' is NAND, please consider using UBI block devices instead.
[    4.948965] mtdblock: MTD device 'ospi_nand.u-boot' is NAND, please consider using UBI block devices instead.
[    4.948972] mtdblock: MTD device 'ospi_nand.env' is NAND, please consider using UBI block devices instead.
[    4.950393] mtdblock: MTD device 'ospi_nand.env.backup' is NAND, please consider using UBI block devices instead.
[    4.957834] mtdblock: MTD device 'ospi_nand.phypattern' is NAND, please consider using UBI block devices instead.
[    4.963015] mtdblock: MTD device 'ospi_nand.rootfs' is NAND, please consider using UBI block devices instead.
[  OK  ] Started Network Time Synchronization.
[  OK  ] Reached target System Initialization.
[  OK  ] Started Daily Cleanup of Temporary Directories.
[  OK  ] Reached target System Time Set.
[  OK  ] Reached target Timer Units.
[  OK  ] Listening on D-Bus System Message Bus Socket.
[  OK  ] Reached target Socket Units.
[  OK  ] Reached target Basic System.
         Starting D-Bus System Message Bus...
         Starting User Login Management...
[  OK  ] Started Network Name Resolution.
[  OK  ] Started D-Bus System Message Bus.
[  OK  ] Reached target Network.
[  OK  ] Reached target Host and Network Name Lookups.
         Starting Permit User Sessions...
[  OK  ] Finished Permit User Sessions.
[  OK  ] Started Getty on tty1.
[  OK  ] Started Serial Getty on ttyS2.
[  OK  ] Reached target Login Prompts.
         Starting Synchronize System and HW clocks...
[  OK  ] Finished Synchronize System and HW clocks.
[  OK  ] Started User Login Management.
[  OK  ] Reached target Multi-User System.
         Starting Record Runlevel Change in UTMP...
[  OK  ] Finished Record Runlevel Change in UTMP.

 _____                    _____           _         _   
|  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
|     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
|__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
              |___|                    |___|            

Arago Project am62axx-evm -

Arago 2023.10 am62axx-evm -

am62axx-evm login: [    8.995028] am65-cpsw-nuss 8000000.ethernet eth0: Link is Up - 1Gbps/Full - flow control rx/tx
[    8.995068] IPv6: ADDRCONF(NETDEV_CHANGE): eth0: link becomes ready
[   11.746059] platform 2b300050.target-module: deferred probe pending

am62axx-evm login: root
[   19.853425] audit: type=1006 audit(1651247843.785:2): pid=256 uid=0 old-auid=4294967295 auid=0 tty=(none) old-ses=4294967295 ses=1 res=1
[   19.853446] audit: type=1300 audit(1651247843.785:2): arch=c00000b7 syscall=64 success=yes exit=1 a0=8 a1=ffffd19ac608 a2=1 a3=ffffb2e4f020 items=0 ppid=1 pid=256 auid=0 uid=0 gid=0 euid=0 suid=0 fsuid
=0 egid=0 sgid=0 fsgid=0 tty=(none) ses=1 comm="(systemd)" exe="/lib/systemd/systemd" key=(null)
[   19.853458] audit: type=1327 audit(1651247843.785:2): proctitle="(systemd)"


Please advice
  • Hi Daniel,

    If I understand correctly, the U-Boot booted from the SD card is able to boot the Linux from eMMC. So, the only issue is the U-Boot is not booting from eMMC. Is my understanding correct?

    Regards,

    Prashant

  • Hello Prashant,

    You are correct. I'm investigating an issue a bit and what I suspect right now, is that the Academy documentation missing one crucial step.

    Which is the burning of an appropriate SBL. 

    That is a problem, while having 2 SDKs.

    The Academy is explaining Linux SDK for A53 and MCU SDK for all others.

    The SBL flashing is a part of MCU SDK.

    My suggestion is to flash by using the command:

    cd <MCU_PATH/tools/boot>

    sudo python3 uart_uniflash.py -p /dev/ttyUSB0 --cfg=sbl_prebuilt/am62ax-sk/default_sbl_emmc_linux_hs_fs.cfg

    After this stage, it should work.

    I'll update you later with the actual results.

    Regards

  • Hello Prashant,

    I have an update.

    After I flashed SBL with default_sbl_emmc_linux_hs_fs.cfg and changed the switches to EMMC BOOT MODE. I removed SDCARD and I can see UBoot booting.

    In the UBoot I executed the following commands:

    mmc partconf 0 1 1 1
    mmc bootbus 0 2 0 0
    setenv mmcdev 0
    setenv bootpart 0
    setenv boot_targets ti_mmc
    boot

    The EVM is booted.

    BTW, in EMMC BOOT MODE the reset button on EVN is not working as expected, but it's just a note, not a big deal, the power button makes its magic)

    After the Power cycle, each time I need to set 3 UBoot env variables:

    setenv mmcdev 0
    setenv bootpart 0
    setenv boot_targets ti_mmc
    boot

    Is there any way to make the boot process fully automatic?

    Since there is no saveenv and I think that I can make some changes to uEnv.txt, but still not fully automatic.

    Please advice

    Regards

  • Hello Daniel,

    Good to know things are working.

    BTW, in EMMC BOOT MODE the reset button on EVN is not working as expected, but it's just a note, not a big deal, the power button makes its magic)

    This is probably because the eMMC RST_N signal is not configured

    (+) [FAQ] AM62x: How to check and configure eMMC flash RST_N signal to support WARM_RESET from eMMC booting on AM62x-SK E2 - Processors forum - Processors - TI E2E support forums

    Is there any way to make the boot process fully automatic?

    You can modify the U-Boot source code itself like so

    diff --git a/board/ti/am62ax/am62ax.env b/board/ti/am62ax/am62ax.env
    index 9d44c80c..952303e4 100644
    --- a/board/ti/am62ax/am62ax.env
    +++ b/board/ti/am62ax/am62ax.env
    @@ -17,8 +17,8 @@ args_all=setenv optargs ${optargs} earlycon=ns16550a,mmio32,0x02800000
     run_kern=booti ${loadaddr} ${rd_spec} ${fdtaddr}
     
     boot=mmc
    -mmcdev=1
    -bootpart=1:2
    +mmcdev=0
    +bootpart=0:1
     bootdir=/boot
     rd_spec=-
     rproc_fw_binaries= 0 /lib/firmware/am62a-mcu-r5f0_0-fw 1 /lib/firmware/am62a-c71_0-fw
    

    Regards,

    Prashant

  • Hi Prashant,

    The eMMC RST_N signal is solved as suggested in the link.

    I tried to make a change to UBoot source and recompiled it.

    Copied a u-boot.img from ti-processor-sdk-linux-rt-edgeai-am62axx-evm-09_02_00_01/board-support/ti-u-boot-2023.04+gitAUTOINC+f9b966c674/build/r5 to Linux with ssh.

    Last with dd command, tried to flash a new binary

    dd if=/home/root/u-boot.img of=/dev/mmcblk0boot0 seek=5120

    After reboot/power cycle:

    U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
    am62a_init: board_init_f done
    SPL initial stack usage: 17064 bytes
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Trying to boot from MMC1
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b87-dirty
    NOTICE:  BL31: Built : 16:09:05, Feb  9 2024
    
    U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
    am62a_init: board_init_f done
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Trying to boot from MMC1
    mmc_load_image_raw_sector: mmc block read error
    ** Partition 1 not valid on device 0 **
    spl_register_fat_device: fat register err - -1
    spl_load_image_fat: error reading image u-boot.img, err - -1
    SPL: failed to boot from all boot devices
    ### ERROR ### Please RESET the board ###
    

    Please advice

  • Hi Daniel,

    Copied a u-boot.img from ti-processor-sdk-linux-rt-edgeai-am62axx-evm-09_02_00_01/board-support/ti-u-boot-2023.04+gitAUTOINC+f9b966c674/build/r5

    The tispl.bin and u-boot.img comes from the a53 directory while tiboot3.bin comes from the r5 directory.

    ❯ pwd
    /home/p-shivhare/ti/psdk/am62a/09.02.00.05/board-support/ti-u-boot-2023.04+gitAUTOINC+f9b966c674
    ❯ ls -l build/r5/tiboot3.bin
    lrwxrwxrwx 1 p-shivhare p-shivhare 30 Apr 30 09:54 build/r5/tiboot3.bin -> ./tiboot3-am62ax-hs-fs-evm.bin
    ❯ ls -l build/a53/tispl.bin build/a53/u-boot.img
    -rw-r--r-- 1 p-shivhare p-shivhare 1338771 Apr 30 09:54 build/a53/tispl.bin
    -rw-r--r-- 1 p-shivhare p-shivhare 1112699 Apr 30 09:54 build/a53/u-boot.img

    Use the images from the correct paths should resolve the issue.

    Regards,

    Prashant

  • Hi Prashant,

    Thanks for the fast reply!

    I did the following:

    Changed the switches to boot from SDCARD.

    As a result managed to boot to Linux.

    From my PC:

    scp PATH/ti-processor-sdk-linux-rt-edgeai-am62axx-evm-09_02_00_01/board-support/ti-u-boot-2023.04+gitAUTOINC+f9b966c674/build/a53/u-boot.bin root@ENV_BRRD_IP:

    Then on ENV board:

    echo 0 > /sys/block/mmcblk0boot0/force_ro

    dd if=/home/root/u-boot.img of=/dev/mmcblk0boot0 seek=5120 

    Power down.

    Reconfigured switches to boot from "EMMC BOOT MODE"

    The UBoot output now:

    U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
    am62a_init: board_init_f done
    am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
    Trying to boot from MMC2
    am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0x243 bootmedia = 0x8 bo
    U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
    am62a_init: board_init_f done
    SPL initial stack usage: 17064 bytes
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Trying to boot from MMC1
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Authentication passed
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.10.0(release):v2.10.0-367-g00f1ec6b87-dirty
    NOTICE:  BL31: Built : 16:09:05, Feb  9 2024
    
    U-Boot SPL 2023.04-ti-gf9b966c67473 (Mar 19 2024 - 20:31:40 +0000)
    SYSFW ABI: 3.1 (firmware rev 0x0009 '9.2.7--v09.02.07 (Kool Koala)')
    am62a_init: board_init_f done
    am62a_init: spl_boot_device: devstat = 0xcb bootmedia = 0x9 bootindex = 0
    Trying to boot from MMC1
    Warning: Did not detect image signing certificate. Skipping authentication to prevent boot failure. This will fail on Security Enforcing(HS-SE) devices
    Warning: Did not detect image signing certificate. Skipping authentication to prevent boot failure. This will fail on Security Enforcing(HS-SE) devices
    
    
    U-Boot 2022.10-rc1 (Apr 01 2024 - 12:27:39 +0300)
    
    SoC:   Unknown Silicon SR1.0
    Model: Texas Instruments AM642 EVM
    

    Please advice

  • Hi Daniel,

    scp PATH/ti-processor-sdk-linux-rt-edgeai-am62axx-evm-09_02_00_01/board-support/ti-u-boot-2023.04+gitAUTOINC+f9b966c674/build/a53/u-boot.bin root@ENV_BRRD_IP:

    You have copied the u-boot.bin instead of the u-boot.img. Please try flashing the a53/u-boot.img and see if the issue still comes.

  • Hello Prashant,

    You are correct. It was my fault, tried to burn the wrong file.

    Now, I'm able to boot from eMMC all the way from UBoot to Linux automatically.

    Also the reset button working.

    Thanks for your support!

  • Hello Prashant,

    I have an additional task.

    Could you please direct me to the resource, explaining Flash to OSPI ( like in the academy there is a page " Flash Linux to eMMC). I'm looking for something similar to that page.

    Thanks in advance

  • Hi Daniel,

    Unfortunately, there is no Academy page for the NOR/NAND flashing.

    I see you already have a thread ongoing regarding this. Let's continue there. Please ping on the thread again so that it comes under the attention of the expert.

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/1347865/sk-am62-lp-processors-forum

    Thanks!

  • Hello Prashant,

    Thank you for your support and your tip.

    I'll start my journey there:-)

    Regards