TMDSIDK437X: Issues with SDK default image on TMDSIDK437X

Part Number: TMDSIDK437X

Hello

We encountered an issue when trying to use the TMDSIDK437X Revision 1.4A with the official SDK release 11.02.05.02 (Nov 21, 2025).
I downloaded the SDK, installed it and ran the create-sdcard.sh to create an image with the tisdk-default-image-am437x-evm.rootfs.tar.xz, see attached creating_image.log:

creating_image.log 

The boot partition contains the following:

ll /mnt/sd/
total 10694
drwxr-xr-x 3 root root    3072 Jan  1  1970 ./
drwxr-xr-x 6 root root    4096 Oct  5 12:31 ../
-rwxr-xr-x 1 root root  158375 Oct 13 09:26 MLO*
-rwxr-xr-x 1 root root   75778 Oct 13 09:26 am437x-cm-t43--6.12.49+git4+1a86d36433-r0_tisdk_5.5-am437x-evm-20251115103026.dtb*
-rwxr-xr-x 1 root root   75778 Oct 13 09:26 am437x-cm-t43-am437x-evm.dtb*
-rwxr-xr-x 1 root root   84206 Oct 13 09:26 am437x-gp-evm--6.12.49+git4+1a86d36433-r0_tisdk_5.5-am437x-evm-20251115103026.dtb*
-rwxr-xr-x 1 root root   84206 Oct 13 09:26 am437x-gp-evm-am437x-evm.dtb*
-rwxr-xr-x 1 root root   85022 Oct 13 09:26 am437x-gp-evm-hdmi--6.12.49+git4+1a86d36433-r0_tisdk_5.5-am437x-evm-20251115103026.dtb*
-rwxr-xr-x 1 root root   85022 Oct 13 09:26 am437x-gp-evm-hdmi-am437x-evm.dtb*
-rwxr-xr-x 1 root root   78821 Oct 13 09:26 am437x-idk-evm--6.12.49+git4+1a86d36433-r0_tisdk_5.5-am437x-evm-20251115103026.dtb*
-rwxr-xr-x 1 root root   78821 Oct 13 09:26 am437x-idk-evm-am437x-evm.dtb*
-rwxr-xr-x 1 root root   77905 Oct 13 09:26 am437x-sbc-t43--6.12.49+git4+1a86d36433-r0_tisdk_5.5-am437x-evm-20251115103026.dtb*
-rwxr-xr-x 1 root root   77905 Oct 13 09:26 am437x-sbc-t43-am437x-evm.dtb*
-rwxr-xr-x 1 root root   81559 Oct 13 09:26 am437x-sk-evm--6.12.49+git4+1a86d36433-r0_tisdk_5.5-am437x-evm-20251115103026.dtb*
-rwxr-xr-x 1 root root   81559 Oct 13 09:26 am437x-sk-evm-am437x-evm.dtb*
-rwxr-xr-x 1 root root   83602 Oct 13 09:26 am43x-epos-evm--6.12.49+git4+1a86d36433-r0_tisdk_5.5-am437x-evm-20251115103026.dtb*
-rwxr-xr-x 1 root root   83602 Oct 13 09:26 am43x-epos-evm-am437x-evm.dtb*
drwxr-xr-x 2 root root     512 Oct 13 09:26 extlinux/
-rwxr-xr-x 1 root root  828572 Oct 13 09:26 u-boot.img*
-rwxr-xr-x 1 root root     717 Oct 13 09:26 uEnv.txt*
-rwxr-xr-x 1 root root 8815104 Oct 13 09:26 zImage*

When trying to boot from the SD card now, it will hang when starting the kernel:

U-Boot SPL 2025.01-00718-ga44465cad8a3 (Nov 14 2025 - 10:48:56 +0000)
Trying to boot from MMC1
SPL: Please implement spl_start_uboot() for your board
SPL: Direct Linux boot not active!


U-Boot 2025.01-00718-ga44465cad8a3 (Nov 14 2025 - 10:48:56 +0000)

CPU  : AM437X-GP rev 1.2
Model: TI AM437x Industrial Development Kit
DRAM:  1 GiB
Core:  37 devices, 18 uclasses, devicetree: separate
PMIC:  TPS62362
NAND:  0 MiB
MMC:   OMAP SD/MMC: 0
Loading Environment from FAT... Unable to read "uboot.env" from mmc0:1...
Net:   eth2: ethernet@4a100000
Hit any key to stop autoboot:  0
=> run findfdt
=> printenv fdtfile
fdtfile=am437x-idk-evm.dtb
=> boot
switch to partitions #0, OK
mmc0 is current device
Scanning mmc 0:1...
Found /extlinux/extlinux.conf
Retrieving file: /extlinux/extlinux.conf
1:      Arago
Retrieving file: /extlinux/../zImage
append: root=PARTUUID=329c02d3-02 rootwait rw console=ttyO0,115200n8,115200
Retrieving file: /extlinux/../am437x-idk-evm.dtb
Skipping fdtdir ../ for failure retrieving dts
Kernel image @ 0x82000000 [ 0x000000 - 0x868200 ]
## Flattened Device Tree blob at bdf2c550
   Booting using the fdt blob at 0xbdf2c550
Working FDT set to bdf2c550
   Loading Device Tree to 8ffed000, end 8ffff957 ... OK
Working FDT set to 8ffed000

Starting kernel ...


As we can see from fdtfile=am437x-idk-evm.dtb, the device tree on the SD card is named different than what UBoot is trying to load. I therefore renamed am437x-idk-evm-am437x-evm.dtb to am437x-idk-evm.dtb. The system now boots. Next I wanted to test the bridge mode according to PRU-ICSS_Ethernet.html#enabling-switch-mode. I used the following commands:

ip link set dev eth1 down
ip link set dev eth2 down
ip link add name br0 type bridge
ip link set dev eth1 master br0
ip link set dev eth2 master br0
ip link set dev br0 up
ip link set dev eth1 up
ip link set dev eth2 up

You can see the full log file of kernel boot and bridge setup in boot_and_bridge.log:
boot_and_bridge.log 

So to summarize:
- Why is the device tree in the SDK default image missing? Is the devicetree I renamed the intended device tree?
- Why is the prusw firmware loaded, even though it is not included in the image? 
- Can I prevent prusw loading and use prueth instead, using Linux to bridge? (without changing the kernel code?)

My goal is to run tests against the official release to see, if I can replicate an issue we are having on our own board. Therefore I'd like to avoid modifying the setup, as to not introduce possible bugs from my side.

Regards, Robin

 

  • Hi Robin,

    Device tree: U-Boot’s findfdt expects am437x-idk-evm.dtb, but this SDK’s boot partition only contains am437x-idk-evm-am437x-evm.dtb and the versioned file.

    Because the DTB load fails, U-Boot passes its own control DTB to the kernel, which is why it stops at “Starting kernel”.

    Your rename is correct: it is the same file (identical size) under the name U-Boot expects. Alternatively, point extlinux.conf at the -am437x-evm name. I’ll raise the missing symlink with the SDK team.

    prusw firmware loading: The PRU firmware is loaded from /lib/firmware/ti-pruss/ when the ports come up. Since the prusw firmware booted, the file is in your rootfs.

    Please check with opkg search to see which package ships it.

    ls -l /lib/firmware/ti-pruss/ | grep am437x
    dmesg | grep -i -E "remoteproc|prueth"
    opkg search /lib/firmware/ti-pruss/am437x-pru0-prusw-fw.elf # if opkg is present

    Preventing prusw / forcing prueth with bridging: The documentation confirms the switch-mode trigger is automatic — adding both interfaces to a bridge switches firmware, and removing the last bridged interface reverts to Dual EMAC.

    Bridging the ports is what enables Switch mode, so I don’t believe you can bridge them with Linux and keep Dual EMAC firmware without driver changes. For testing the official release, Switch mode is the supported configuration.

    Refer: https://software-dl.ti.com/processor-sdk-linux-rt/esd/AM437X/latest/exports/docs/linux/Foundational_Components/Kernel/Kernel_Drivers/Network/PRUSS.html

    Regards,
    Vinu

  • Hello Vinu

    Thanks for the quick answer. Regarding the prusw firmware, I must have forgot to include the contents of the  /lib/firmware/ti-pruss folder when redoing the log file, the prusw file does not exist:

    root@am437x-evm:~# ls -alh /lib/firmware/ti-pruss/am437x-pru*
    -rw-r--r-- 1 root root 6.9K Mar  9  2018 /lib/firmware/ti-pruss/am437x-pru0-prueth-fw.elf
    -rw-r--r-- 1 root root 8.9K Mar  9  2018 /lib/firmware/ti-pruss/am437x-pru0-pruhsr-fw.elf
    -rw-r--r-- 1 root root 8.4K Mar  9  2018 /lib/firmware/ti-pruss/am437x-pru0-pruprp-fw.elf
    -rw-r--r-- 1 root root 6.8K Mar  9  2018 /lib/firmware/ti-pruss/am437x-pru1-prueth-fw.elf
    -rw-r--r-- 1 root root 8.5K Mar  9  2018 /lib/firmware/ti-pruss/am437x-pru1-pruhsr-fw.elf
    -rw-r--r-- 1 root root 8.1K Mar  9  2018 /lib/firmware/ti-pruss/am437x-pru1-pruprp-fw.elf
    root@am437x-evm:~# opkg search /lib/firmware/ti-pruss/am437x-pru0-prusw-fw.elf
     * opkg_search_cmd: no path found matching pattern '/lib/firmware/ti-pruss/am437x-pru0-prusw-fw.elf'
    

    In terms of manually switching between prusw or prueth when having a bridge configured, I was asking since the parameter l2-fwd-offload exists and is set to on, non-fixed:

    root@am437x-evm:~# ethtool -k eth1
    Features for eth1:
    rx-checksumming: off [fixed]
    tx-checksumming: off
            tx-checksum-ipv4: off [fixed]
            tx-checksum-ip-generic: off [fixed]
            tx-checksum-ipv6: off [fixed]
            tx-checksum-fcoe-crc: off [fixed]
            tx-checksum-sctp: off [fixed]
    scatter-gather: off
            tx-scatter-gather: off [fixed]
            tx-scatter-gather-fraglist: off [fixed]
    tcp-segmentation-offload: off
            tx-tcp-segmentation: off [fixed]
            tx-tcp-ecn-segmentation: off [fixed]
            tx-tcp-mangleid-segmentation: off [fixed]
            tx-tcp6-segmentation: off [fixed]
    generic-segmentation-offload: off [requested on]
    generic-receive-offload: on
    large-receive-offload: off [fixed]
    rx-vlan-offload: off [fixed]
    tx-vlan-offload: off [fixed]
    ntuple-filters: off [fixed]
    receive-hashing: off [fixed]
    highdma: off [fixed]
    rx-vlan-filter: on
    vlan-challenged: off [fixed]
    tx-gso-robust: off [fixed]
    tx-fcoe-segmentation: off [fixed]
    tx-gre-segmentation: off [fixed]
    tx-gre-csum-segmentation: off [fixed]
    tx-ipxip4-segmentation: off [fixed]
    tx-ipxip6-segmentation: off [fixed]
    tx-udp_tnl-segmentation: off [fixed]
    tx-udp_tnl-csum-segmentation: off [fixed]
    tx-gso-partial: off [fixed]
    tx-tunnel-remcsum-segmentation: off [fixed]
    tx-sctp-segmentation: off [fixed]
    tx-esp-segmentation: off [fixed]
    tx-udp-segmentation: off [fixed]
    tx-gso-list: off [fixed]
    tx-nocache-copy: off
    loopback: off [fixed]
    rx-fcs: off [fixed]
    rx-all: off [fixed]
    tx-vlan-stag-hw-insert: off [fixed]
    rx-vlan-stag-hw-parse: off [fixed]
    rx-vlan-stag-filter: off [fixed]
    l2-fwd-offload: on
    hw-tc-offload: on [fixed]
    esp-hw-offload: off [fixed]
    esp-tx-csum-hw-offload: off [fixed]
    rx-udp_tunnel-port-offload: off [fixed]
    tls-hw-tx-offload: off [fixed]
    tls-hw-rx-offload: off [fixed]
    rx-gro-hw: off [fixed]
    tls-hw-record: off [fixed]
    rx-gro-list: off
    macsec-hw-offload: off [fixed]
    rx-udp-gro-forwarding: off
    hsr-tag-ins-offload: off [fixed]
    hsr-tag-rm-offload: off
    hsr-fwd-offload: off
    hsr-dup-offload: off
    


    So I was wondering if I could use this to swap the mode. As you mentioned, when removing the ports from the bridge, it successfully swaps back to prueth. I wanted to test something in bridge mode, however I managed to replicate the issue on a single port with prueth, so I do not need prusw for my test anymore. Still it is confusing to me that the SDK ships in this state, or am I missing something? 
    I will open a separate ticket for my prueth issue soon.

    Regards,
    Robin

  • Hi Robin,

    Somehow, I couldn't access your boot_and_bridge.log file.

    Can you share it again? May be rename it as a .txt file too.

    Regards,
    Vinu

  • Hi Vinu

    You are right, I can't access it either. I will paste both file contents here in a text block:


    creating_image.log

    ################################################################################
    
    This script will create a bootable SD card from custom or pre-built binaries.
    
    The script must be run with root permissions and from the bin directory of
    the SDK
    
    Example:
     $ sudo ./create-sdcard.sh
    
    Formatting can be skipped if the SD card is already formatted and
    partitioned properly.
    
    ################################################################################
    
    
    Available Drives to write images to:
    
    #  major   minor    size   name
    1:   8        0     397940 sda
    2:   8       16     190508 sdb
    3:   8       32    4194308 sdc
    4:   8       80   15558144 sdf
    
    Enter Device Number or n to exit: 4
    
    sdf was selected
    
    /dev/sdf is an sdx device
    Current size of sdf1 131072 bytes
    Current size of sdf2 15426048 bytes
    
    ################################################################################
    
       Detected device has 2 partitions already
    
       Re-partitioning will allow the choice of 2 or 3 partitions
    
    ################################################################################
    
    Would you like to re-partition the drive anyways [y/n] : y
    
    
    Now partitioning sdf ...
    
    
    ################################################################################
    
            Select 2 partitions if only need boot and rootfs (most users).
            Select 3 partitions if need SDK & other content on SD card.  This is
            usually used by device manufacturers with access to partition tarballs.
    
            ****WARNING**** continuing will erase all data on sdf
    
    ################################################################################
    
    Number of partitions needed [2/3] : 2
    
    
    Now partitioning sdf with 2 partitions...
    
    
    ################################################################################
    
                    Now making 2 partitions
    
    ################################################################################
    
    1024+0 records in
    1024+0 records out
    1048576 bytes (1.0 MB, 1.0 MiB) copied, 0.478829 s, 2.2 MB/s
    DISK SIZE - 15931539456 bytes
    
    Welcome to fdisk (util-linux 2.39.3).
    Changes will remain in memory only, until you decide to write them.
    Be careful before using the write command.
    
    Device does not contain a recognized partition table.
    Created a new DOS (MBR) disklabel with disk identifier 0x329c02d3.
    
    Command (m for help): Partition type
       p   primary (0 primary, 0 extended, 4 free)
       e   extended (container for logical partitions)
    Select (default p): Partition number (1-4, default 1): First sector (2048-31116287, default 2048): Last sector, +/-sectors or +/-size{K,M,G,T,P} (2048-31116287, default 31116287):
    Created a new partition 1 of type 'Linux' and of size 128 MiB.
    Partition #1 contains a vfat signature.
    
    Command (m for help): Partition type
       p   primary (1 primary, 0 extended, 3 free)
       e   extended (container for logical partitions)
    Select (default p): Partition number (2-4, default 2): First sector (264192-31116287, default 264192): Last sector, +/-sectors or +/-size{K,M,G,T,P} (264192-31116287, default 31116287):
    Created a new partition 2 of type 'Linux' and of size 14.7 GiB.
    Partition #2 contains a ext3 signature.
    
    Command (m for help): Partition number (1,2, default 2): Hex code or alias (type L to list all):
    Changed type of partition 'Linux' to 'W95 FAT32 (LBA)'.
    
    Command (m for help): Partition number (1,2, default 2):
    The bootable flag on partition 1 is enabled now.
    
    Command (m for help): The partition table has been altered.
    Calling ioctl() to re-read partition table.
    Syncing disks.
    
    
    ################################################################################
    
                    Partitioning Boot
    
    ################################################################################
    mkfs.fat 4.2 (2021-01-31)
    mkfs.fat: Warning: lowercase labels might not work properly on some systems
    
    ################################################################################
    
                    Partitioning rootfs
    
    ################################################################################
    mke2fs 1.47.0 (5-Feb-2023)
    /dev/sdf2 contains a ext3 file system labelled 'rootfs'
            last mounted on / on Tue Oct 13 09:15:10 2026
    Proceed anyway? (y,N) y
    Creating filesystem with 3856512 4k blocks and 964768 inodes
    Filesystem UUID: d6253734-5c34-41cb-a3f3-84701802d2d8
    Superblock backups stored on blocks:
            32768, 98304, 163840, 229376, 294912, 819200, 884736, 1605632, 2654208
    
    Allocating group tables: done
    Writing inode tables: done
    Creating journal (16384 blocks): done
    Writing superblocks and filesystem accounting information: done
    
    
    
    ################################################################################
    
       Partitioning is now done
       Continue to install filesystem or select 'n' to safe exit
    
       **Warning** Continuing will erase files any files in the partitions
    
    ################################################################################
    
    
    Would you like to continue? [y/n] : y
    
    
    
    Mount the partitions
    
    Emptying partitions
    
    
    Syncing....
    
    ################################################################################
    
            Choose file path to install from
    
            1 ) Install pre-built images from SDK
            2 ) Enter in custom boot and rootfs file paths
    
    ################################################################################
    
    Choose now [1/2] : 1
    
    
    Will now install from SDK pre-built images
    now installing:  ti_sdk
    
    ################################################################################
    
       Multiple rootfs Tarballs found
    
    ################################################################################
    
             1:tisdk-default-image-am437x-evm.rootfs.tar.xz
             2:tisdk-thinlinux-image-am437x-evm.rootfs.tar.xz
             3:tisdk-base-image-am437x-evm.rootfs.tar.xz
    Enter Number of rootfs Tarball: 1
    
    ################################################################################
    
            Copying files now... will take minutes
    
    ################################################################################
    
    Copying boot partition
    
    
    
    Kernel image copied
    
    
    extlinux.conf copied
    
    
    dtb copied
    
    
    MLO copied
    
    
    u-boot.img copied
    
    uEnv.txt copied
    
    
    Copying rootfs System partition
    
    
    
    Syncing...
    
    Un-mount the partitions
    
    Remove created temp directories
    
    Operation Finished
    



    boot_and_bridge.log

    U-Boot SPL 2025.01-00718-ga44465cad8a3 (Nov 14 2025 - 10:48:56 +0000)
    Trying to boot from MMC1
    SPL: Please implement spl_start_uboot() for your board
    SPL: Direct Linux boot not active!
    
    
    U-Boot 2025.01-00718-ga44465cad8a3 (Nov 14 2025 - 10:48:56 +0000)
    
    CPU  : AM437X-GP rev 1.2
    Model: TI AM437x Industrial Development Kit
    DRAM:  1 GiB
    Core:  37 devices, 18 uclasses, devicetree: separate
    PMIC:  TPS62362
    NAND:  0 MiB
    MMC:   OMAP SD/MMC: 0
    Loading Environment from FAT... Unable to read "uboot.env" from mmc0:1... 
    Net:   eth2: ethernet@4a100000
    Hit any key to stop autoboot:  2  1  0 
    switch to partitions #0, OK
    mmc0 is current device
    Scanning mmc 0:1...
    
    Found /extlinux/extlinux.conf
    Retrieving file: /extlinux/extlinux.conf
    1:Arago
    Retrieving file: /extlinux/ ../zImage
    append: root=PARTUUID=329c02d3-02 rootwait rw console=ttyO0,115200n8,115200
    Retrieving file: /extlinux/ ../am437x-idk-evm.dtb
    Kernel image @ 0x82000000 [ 0x000000 - 0x868200 ]
    
    ## Flattened Device Tree blob at 88000000
       Booting using the fdt blob at 0x88000000
    Working FDT set to 88000000
       Loading Device Tree to 8ffe9000, end 8ffff3e4 ... OK
    Working FDT set to 8ffe9000
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0
    [    0.000000] Linux version 6.12.49-ti-g1a86d36433ea (oe-user@oe-host) (arm-oe-linux-gnueabi-gcc (GCC) 13.4.0, GNU ld (GNU Binutils) 2.42.0.20240723) #1 SMP PREEMPT Fri Nov 14 06:06:38 UTC 2025
    [    0.000000] CPU: ARMv7 Processor [412fc09a] revision 10 (ARMv7), cr=10c5387d
    [    0.000000] CPU: PIPT / VIPT nonaliasing data cache, VIPT aliasing instruction cache
    [    0.000000] OF: fdt: Machine model: TI AM437x Industrial Development Kit
    [    0.000000] Memory policy: Data cache writeback
    [    0.000000] efi: UEFI not found.
    [    0.000000] cma: Reserved 64 MiB at 0xbc000000 on node -1
    [    0.000000] Zone ranges:
    [    0.000000]   Normal   [mem 0x0000000080000000-0x00000000afffffff]
    [    0.000000]   HighMem  [mem 0x00000000b0000000-0x00000000bfffffff]
    [    0.000000] Movable zone start for each node
    [    0.000000] Early memory node ranges
    [    0.000000]   node   0: [mem 0x0000000080000000-0x00000000bfffffff]
    [    0.000000] Initmem setup node 0 [mem 0x0000000080000000-0x00000000bfffffff]
    [    0.000000] OF: reserved mem: Reserved memory: No reserved-memory node in the DT
    [    0.000000] CPU: All CPU(s) started in SVC mode.
    [    0.000000] AM437x ES1.2 (sgx neon)
    [    0.000000] percpu: Embedded 17 pages/cpu s40460 r8192 d20980 u69632
    [    0.000000] Kernel command line: root=PARTUUID=329c02d3-02 rootwait rw console=ttyO0,115200n8,115200
    [    0.000000] Dentry cache hash table entries: 131072 (order: 7, 524288 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 262144
    [    0.000000] mem auto-init: stack:all(zero), heap alloc:off, heap free:off
    [    0.000000] SLUB: HWalign=64, Order=0-3, MinObjects=0, CPUs=1, 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=16 to nr_cpu_ids=1.
    [    0.000000] Trampoline variant of Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 10 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=1
    [    0.000000] RCU Tasks: Setting shift to 0 and lim to 1 rcu_task_cb_adjust=1 rcu_task_cpu_ids=1.
    [    0.000000] NR_IRQS: 16, nr_irqs: 16, preallocated irqs: 16
    [    0.000000] L2C: platform modifies aux control register: 0x0e030000 -> 0x3e430000
    [    0.000000] L2C: DT/platform modifies aux control register: 0x0e030000 -> 0x3e430000
    [    0.000000] L2C-310 erratum 769419 enabled
    [    0.000000] L2C-310 enabling early BRESP for Cortex-A9
    [    0.000000] OMAP L2C310: ROM does not support power control setting
    [    0.000000] L2C-310 dynamic clock gating disabled, standby mode disabled
    [    0.000000] L2C-310 cache controller enabled, 16 ways, 256 kB
    [    0.000000] L2C-310: CACHE_ID 0x410000c9, AUX_CTRL 0x4e430000
    [    0.000000] rcu: srcu_init: Setting srcu_struct sizes based on contention.
    [    0.000000] TI gptimer clocksource: always-on /ocp@44000000/interconnect@44c00000/segment@200000/target-module@31000
    [    0.000001] sched_clock: 32 bits at 24MHz, resolution 41ns, wraps every 89478484971ns
    [    0.000021] clocksource: dmtimer: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 79635851949 ns
    [    0.000178] OMAP clocksource: 32k_counter at 32768 Hz
    [    0.000187] clocksource: 32k_counter: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 58327039986419 ns
    [    0.000534] TI gptimer clockevent: 24000000 Hz at /ocp@44000000/interconnect@48000000/segment@0/target-module@40000
    [    0.002216] Console: colour dummy device 80x30
    [    0.002267] WARNING: Your 'console=ttyO0' has been replaced by 'ttyS0'
    [    0.002275] This ensures that you still see kernel messages. Please
    [    0.002279] update your kernel commandline.
    [    0.002319] Calibrating delay loop... 1993.93 BogoMIPS (lpj=9969664)
    [    0.057717] CPU: Testing write buffer coherency: ok
    [    0.057803] CPU0: Spectre v2: using BPIALL workaround
    [    0.057813] pid_max: default: 32768 minimum: 301
    [    0.058008] Mount-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
    [    0.058037] Mountpoint-cache hash table entries: 2048 (order: 1, 8192 bytes, linear)
    [    0.059139] CPU0: thread -1, cpu 0, socket 0, mpidr 80000000
    [    0.060911] Setting up static identity map for 0x80100000 - 0x80100060
    [    0.061194] rcu: Hierarchical SRCU implementation.
    [    0.061203] rcu: Max phase no-delay instances is 1000.
    [    0.061846] EFI services will not be available.
    [    0.062029] smp: Bringing up secondary CPUs ...
    [    0.062059] smp: Brought up 1 node, 1 CPU
    [    0.062069] SMP: Total of 1 processors activated (1993.93 BogoMIPS).
    [    0.062080] CPU: All CPU(s) started in SVC mode.
    [    0.062201] Memory: 949916K/1048576K available (13312K kernel code, 1562K rwdata, 3784K rodata, 1024K init, 312K bss, 30724K reserved, 65536K cma-reserved, 196608K highmem)
    [    0.062832] devtmpfs: initialized
    [    0.078504] VFP support v0.3: implementor 41 architecture 3 part 30 variant 9 rev 4
    [    0.078824] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 19112604462750000 ns
    [    0.078852] futex hash table entries: 256 (order: 2, 16384 bytes, linear)
    [    0.083856] pinctrl core: initialized pinctrl subsystem
    [    0.084981] DMI not present or invalid.
    [    0.085703] NET: Registered PF_NETLINK/PF_ROUTE protocol family
    [    0.088115] DMA: preallocated 256 KiB pool for atomic coherent allocations
    [    0.089477] thermal_sys: Registered thermal governor 'step_wise'
    [    0.089599] cpuidle: using governor menu
    [    0.118177] No ATAGs?
    [    0.118272] hw-breakpoint: found 5 (+1 reserved) breakpoint and 1 watchpoint registers.
    [    0.118283] hw-breakpoint: maximum watchpoint size is 4 bytes.
    [    0.132157] iommu: Default domain type: Translated
    [    0.132174] iommu: DMA domain TLB invalidation policy: strict mode
    [    0.138533] SCSI subsystem initialized
    [    0.139261] usbcore: registered new interface driver usbfs
    [    0.139314] usbcore: registered new interface driver hub
    [    0.139360] usbcore: registered new device driver usb
    [    0.139899] pps_core: LinuxPPS API ver. 1 registered
    [    0.139909] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.139930] PTP clock support registered
    [    0.140011] EDAC MC: Ver: 3.0.0
    [    0.148000] scmi_core: SCMI protocol bus registered
    [    0.150702] clocksource: Switched to clocksource dmtimer
    [    0.174706] NET: Registered PF_INET protocol family
    [    0.175135] IP idents hash table entries: 16384 (order: 5, 131072 bytes, linear)
    [    0.177190] tcp_listen_portaddr_hash hash table entries: 512 (order: 0, 4096 bytes, linear)
    [    0.177230] Table-perturb hash table entries: 65536 (order: 6, 262144 bytes, linear)
    [    0.177245] TCP established hash table entries: 8192 (order: 3, 32768 bytes, linear)
    [    0.177315] TCP bind hash table entries: 8192 (order: 5, 131072 bytes, linear)
    [    0.177628] TCP: Hash tables configured (established 8192 bind 8192)
    [    0.177827] UDP hash table entries: 512 (order: 2, 16384 bytes, linear)
    [    0.177893] UDP-Lite hash table entries: 512 (order: 2, 16384 bytes, linear)
    [    0.178137] NET: Registered PF_UNIX/PF_LOCAL protocol family
    [    0.178938] RPC: Registered named UNIX socket transport module.
    [    0.178953] RPC: Registered udp transport module.
    [    0.178959] RPC: Registered tcp transport module.
    [    0.178963] RPC: Registered tcp-with-tls transport module.
    [    0.178967] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.178988] PCI: CLS 0 bytes, default 64
    [    0.180301] Initialise system trusted keyrings
    [    0.190830] workingset: timestamp_bits=30 max_order=18 bucket_order=0
    [    0.191307] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.191890] NFS: Registering the id_resolver key type
    [    0.191948] Key type id_resolver registered
    [    0.191955] Key type id_legacy registered
    [    0.191987] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.191997] nfs4flexfilelayout_init: NFSv4 Flexfile Layout Driver Registering...
    [    0.192528] Key type asymmetric registered
    [    0.192541] Asymmetric key parser 'x509' registered
    [    0.192649] bounce: pool size: 64 pages
    [    0.192715] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 245)
    [    0.192726] io scheduler mq-deadline registered
    [    0.192735] io scheduler kyber registered
    [    0.192772] io scheduler bfq registered
    [    0.194773] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.330799] Serial: 8250/16550 driver, 5 ports, IRQ sharing enabled
    [    0.334650] STMicroelectronics ASC driver initialized
    [    0.359913] brd: module loaded
    [    0.377825] loop: module loaded
    [    0.385131] CAN device driver interface
    [    0.385485] e1000e: Intel(R) PRO/1000 Network Driver
    [    0.385491] e1000e: Copyright(c) 1999 - 2015 Intel Corporation.
    [    0.385575] igb: Intel(R) Gigabit Ethernet Network Driver
    [    0.385582] igb: Copyright (c) 2007-2014 Intel Corporation.
    [    0.386448] pegasus: Pegasus/Pegasus II USB Ethernet driver
    [    0.386514] usbcore: registered new interface driver pegasus
    [    0.386562] usbcore: registered new interface driver asix
    [    0.386634] usbcore: registered new interface driver ax88179_178a
    [    0.386684] usbcore: registered new interface driver cdc_ether
    [    0.386731] usbcore: registered new interface driver smsc75xx
    [    0.386778] usbcore: registered new interface driver smsc95xx
    [    0.386832] usbcore: registered new interface driver net1080
    [    0.386890] usbcore: registered new interface driver cdc_subset
    [    0.386937] usbcore: registered new interface driver zaurus
    [    0.386983] usbcore: registered new interface driver cdc_ncm
    [    0.388093] usbcore: registered new interface driver usb-storage
    [    0.401524] i2c_dev: i2c /dev entries driver
    [    0.403850] cpuidle: enable-method property 'ti,am4372' found operations
    [    0.404602] sdhci: Secure Digital Host Controller Interface driver
    [    0.404612] sdhci: Copyright(c) Pierre Ossman
    [    0.404822] Synopsys Designware Multimedia Card Interface Driver
    [    0.405013] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.406028] usbcore: registered new interface driver usbhid
    [    0.406037] usbhid: USB HID core driver
    [    0.408990] NET: Registered PF_INET6 protocol family
    [    0.421853] Segment Routing with IPv6
    [    0.421935] In-situ OAM (IOAM) with IPv6
    [    0.422040] sit: IPv6, IPv4 and MPLS over IPv4 tunneling driver
    [    0.422870] NET: Registered PF_PACKET protocol family
    [    0.422883] can: controller area network core
    [    0.422974] NET: Registered PF_CAN protocol family
    [    0.422985] can: raw protocol
    [    0.422996] can: broadcast manager protocol
    [    0.423009] can: netlink gateway - max_hops=1
    [    0.423424] Key type dns_resolver registered
    [    0.423690] ThumbEE CPU extension supported.
    [    0.423711] Registering SWP/SWPB emulation handler
    [    0.424317] omap_voltage_late_init: Voltage driver support not added
    [    0.446056] Loading compiled-in X.509 certificates
    [    0.540926] OMAP GPIO hardware version 0.1
    [    0.542731] omap8250 44e09000.serial: No clock speed specified: using default: 48000000
    [    0.544435] 44e09000.serial: ttyS0 at MMIO 0x44e09000 (irq = 62, base_baud = 3000000) is a 8250
    [    0.544516] printk: legacy console [ttyS0] enabled
    [    2.483504] pinctrl-single 44e10800.pinmux: 199 pins, size 796
    [    2.494706] ti-sysc 44e31000.target-module: probe with driver ti-sysc failed with error -16
    [    2.520421] ti-sysc 48040000.target-module: probe with driver ti-sysc failed with error -16
    [    2.539734] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000 microseconds (-22)
    [    2.548806] sdhci-omap 48060000.mmc: Got CD GPIO
    [    2.553744] sdhci-omap 48060000.mmc: supply pbias not found, using dummy regulator
    [    2.564863] omap-mailbox 480c8000.mailbox: omap mailbox rev 0x400
    [    2.571711] sdhci-omap 48060000.mmc: supply vqmmc not found, using dummy regulator
    [    2.592123] omap_i2c 4819c000.i2c: bus 2 rev0.12 at 100 kHz
    [    2.614577] 48000000.interconnect:segment@200000:target-module@0:mpu@0:fck: device ID is greater than 24
    [    2.636003] omap_rng 48310000.rng: Random Number Generator ver. 20
    [    2.642480] random: crng init done
    [    2.660919] 483a8000.target-module:ocp2scp@0:fck: device ID is greater than 24
    [    2.671952] 483e8000.target-module:ocp2scp@0:fck: device ID is greater than 24
    [    2.730726] davinci_mdio 4a101000.mdio: davinci mdio revision 1.6, bus freq 1000000
    [    2.742193] davinci_mdio 4a101000.mdio: phy[0]: device 4a101000.mdio:00, driver Micrel KSZ9031 Gigabit PHY
    [    2.752583] cpsw-switch 4a100000.switch: initialized cpsw ale version 1.4
    [    2.759428] cpsw-switch 4a100000.switch: ALE Table size 1024, Policers 0
    [    2.766460] cpsw-switch 4a100000.switch: cpts: overflow check period 500 (jiffies)
    [    2.774169] cpsw-switch 4a100000.switch: CPTS: ref_clk_freq:250000000 calc_mult:2147483648 calc_shift:29 error:0 nsec/sec
    [    2.785284] cpsw-switch 4a100000.switch: Detected MACID = 9c:1d:58:7c:b5:c4
    [    2.793929] cpsw-switch 4a100000.switch: initialized (regs 0x4a100000, pool size 256) hw_ver:0019010F 1.15 (0)
    [    2.813157] debugfs: Directory '49000000.dma' with parent 'dmaengine' already present!
    [    2.821287] edma 49000000.dma: TI EDMA DMA engine driver
    [    2.849453] at24 0-0050: supply vcc not found, using dummy regulator
    [    2.871327] at24 0-0050: 32768 byte 24c256 EEPROM, writable, 64 bytes/write
    [    2.879513] omap_i2c 44e0b000.i2c: bus 0 rev0.12 at 400 kHz
    [    2.888270] omap_gpio 44e07000.gpio: Could not set line 6 debounce to 200000 microseconds (-22)
    [    2.898490] sdhci-omap 48060000.mmc: Got CD GPIO
    [    2.904424] input: gpio-keys as /devices/platform/gpio-keys/input/input0
    [    2.911626] sdhci-omap 48060000.mmc: supply pbias not found, using dummy regulator
    [    2.922024] clk: Disabling unused clocks
    [    2.926259] PM: genpd: Disabling unused power domains
    [    2.931552] sdhci-omap 48060000.mmc: supply vqmmc not found, using dummy regulator
    [    2.968541] mmc0: SDHCI controller on 48060000.mmc [48060000.mmc] using External DMA
    [    2.977200] Waiting for root device PARTUUID=329c02d3-02...
    [    3.143822] mmc0: new high speed SDHC card at address aaaa
    [    3.150586] mmcblk0: mmc0:aaaa SC16G 14.8 GiB
    [    3.161259]  mmcblk0: p1 p2
    [    3.184338] EXT4-fs (mmcblk0p2): mounting ext3 file system using the ext4 subsystem
    [    4.055900] EXT4-fs (mmcblk0p2): recovery complete
    [    4.063861] EXT4-fs (mmcblk0p2): mounted filesystem d6253734-5c34-41cb-a3f3-84701802d2d8 r/w with ordered data mode. Quota mode: disabled.
    [    4.076563] VFS: Mounted root (ext3 filesystem) on device 179:2.
    [    4.092850] devtmpfs: mounted
    [    4.097760] Freeing unused kernel image (initmem) memory: 1024K
    [    4.104029] Run /sbin/init as init process
    [    4.671312] systemd[1]: System time before build time, advancing clock.
    [    4.737386] systemd[1]: systemd 255.21^ running in system mode (+PAM -AUDIT -SELINUX -APPARMOR +IMA -SMACK +SECCOMP -GCRYPT -GNUTLS -OPENSSL +ACL +BLKID -CURL -ELFUTILS -FIDO2 -IDN2 -IDN -IPTC +KMOD -LIBCRYPTSETUP +LIBFDISK -PCRE2 -PWQUALITY -P11KIT -QRENCODE -TPM2 -BZIP2 -LZ4 -XZ -ZLIB +ZSTD -BPF_FRAMEWORK -XKBCOMMON +UTMP +SYSVINIT default-hierarchy=unified)
    [    4.770134] systemd[1]: Detected architecture arm.
    
    Welcome to Arago 2025.01!
    
    
    [    4.808341] systemd[1]: Hostname set to <am437x-evm>.
    [    5.672981] systemd[1]: /usr/lib/systemd/system/bt-enable.service:9: Standard output type syslog is obsolete, automatically updating to journal. Please update your unit file, and consider removing the setting altogether.
    [    6.052723] systemd[1]: Queued start job for default target Graphical Interface.
    [    6.092883] systemd[1]: Created slice Slice /system/getty.
    [  OK  ] Created slice Slice /system/getty.
    
    [    6.123622] systemd[1]: Created slice Slice /system/modprobe.
    [  OK  ] Created slice Slice /system/modprobe.
    
    [    6.153627] systemd[1]: Created slice Slice /system/serial-getty.
    [  OK  ] Created slice Slice /system/serial-getty.
    
    [    6.182879] systemd[1]: Created slice User and Session Slice.
    [  OK  ] Created slice User and Session Slice.
    
    [    6.211645] systemd[1]: Started Dispatch Password Requests to Console Directory Watch.
    [  OK  ] Started Dispatch Password Requests to Console Directory Watch.
    
    [    6.241556] systemd[1]: Started Forward Password Requests to Wall Directory Watch.
    [  OK  ] Started Forward Password Requests to Wall Directory Watch.
    
    [    6.271312] systemd[1]: Expecting device /dev/ttyS0...
             Expecting device /dev/ttyS0...
    
    [    6.301513] systemd[1]: Reached target Path Units.
    [  OK  ] Reached target Path Units.
    
    [    6.331230] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    
    [    6.361304] systemd[1]: Reached target Slice Units.
    [  OK  ] Reached target Slice Units.
    
    [    6.391292] systemd[1]: Reached target Swaps.
    [  OK  ] Reached target Swaps.
    
    [    6.423348] systemd[1]: Listening on RPCbind Server Activation Socket.
    [  OK  ] Listening on RPCbind Server Activation Socket.
    
    [    6.451249] systemd[1]: Reached target RPC Port Mapper.
    [  OK  ] Reached target RPC Port Mapper.
    
    [    6.501628] systemd[1]: Listening on Process Core Dump Socket.
    [  OK  ] Listening on Process Core Dump Socket.
    
    [    6.531708] systemd[1]: Listening on initctl Compatibility Named Pipe.
    [  OK  ] Listening on initctl Compatibility Named Pipe.
    
    [    6.574322] systemd[1]: Journal Audit Socket was skipped because of an unmet condition check (ConditionSecurity=audit).
    [    6.586997] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    
    [    6.612318] systemd[1]: Listening on Journal Socket.
    [  OK  ] Listening on Journal Socket.
    
    [    6.643061] systemd[1]: Listening on Network Service Netlink Socket.
    [  OK  ] Listening on Network Service Netlink Socket.
    
    [    6.675766] systemd[1]: Listening on udev Control Socket.
    [  OK  ] Listening on udev Control Socket.
    
    [    6.702215] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    
    [    6.732498] systemd[1]: Listening on User Database Manager Socket.
    [  OK  ] Listening on User Database Manager Socket.
    
    [    6.761925] systemd[1]: Huge Pages File System was skipped because of an unmet condition check (ConditionPathExists=/sys/kernel/mm/hugepages).
    [    6.776182] systemd[1]: POSIX Message Queue File System was skipped because of an unmet condition check (ConditionPathExists=/proc/sys/fs/mqueue).
    [    6.821457] systemd[1]: Mounting Kernel Debug File System...
             Mounting Kernel Debug File System...
    
    [    6.892972] systemd[1]: Mounting Kernel Trace File System...
             Mounting Kernel Trace File System...
    
    [    6.921649] systemd[1]: Mounting Temporary Directory /tmp...
             Mounting Temporary Directory /tmp...
    
    [    7.001786] systemd[1]: Starting Create List of Static Device Nodes...
             Starting Create List of Static Device Nodes...
    
    [    7.045441] systemd[1]: Starting Load Kernel Module configfs...
             Starting Load Kernel Module configfs...
    
    [    7.091159] systemd[1]: Starting Load Kernel Module drm...
             Starting Load Kernel Module drm...
    
    [    7.171855] systemd[1]: Starting Load Kernel Module fuse...
             Starting Load Kernel Module fuse...
    
    [    7.232202] systemd[1]: Starting Start psplash boot splash screen...
             Starting Start psplash boot splash screen...
    
    [    7.301883] systemd[1]: Starting RPC Bind...
             Starting RPC Bind...
    
    [    7.311765] systemd[1]: File System Check on Root Device was skipped because of an unmet condition check (ConditionPathIsReadWrite=!/).
    [    7.343066] systemd[1]: systemd-journald.service: unit configures an IP firewall, but the local system does not support BPF/cgroup firewalling.
    [    7.362689] systemd[1]: systemd-journald.service: (This warning is only shown for the first unit using IP firewalling.)
    [    7.413353] systemd[1]: Starting Journal Service...
             Starting Journal Service...
    
    [    7.491722] systemd[1]: Starting Load Kernel Modules...
             Starting Load Kernel Modules...
    
    [    7.571903] systemd[1]: Starting Generate network units from Kernel command line...
             Starting Generate network units from Kernel command line...
    
    [    7.619227] systemd[1]: Starting Remount Root and Kernel File Systems...
             Starting Remount Root and Kernel File Systems...
    
    [    7.741726] cryptodev: loading out-of-tree module taints kernel.
    [    7.751876] systemd[1]: Starting Coldplug All udev Devices...
             Starting Coldplug All udev Devices...
    
    [    7.770331] sysctl table check failed: ioctl/(null) procname is nu ll
    [    7.800336] systemd[1]: Started RPC Bind.
    [    7.810944] sysctl table check failed: ioctl/(null) No proc_handler
    [    7.817292] cryptodev: driver 1.14 loaded.
    [  OK  ] Started RPC Bind.
    
    [    7.852380] systemd[1]: Mounted Kernel Debug File System.
    [  OK  ] Mounted Kernel Debug File System.
    
    [    7.892423] systemd[1]: Mounted Kernel Trace File System.
    [  OK  ] Mounted Kernel Trace File System.
    
    [    7.918168] systemd-journald[82]: Collecting audit messages is disabled.
    [    7.926450] systemd[1]: Mounted Temporary Directory /tmp.
    [  OK  ] Mounted Temporary Directory /tmp.
    
    [    7.991528] systemd[1]: Finished Create List of Static Device Nodes.
    [  OK  ] Finished Create List of Static Device Nodes.
    
    [    8.016047] EXT4-fs (mmcblk0p2): re-mounted d6253734-5c34-41cb-a3f3-84701802d2d8.
    [    8.035726] systemd[1]: modprobe@configfs.service: Deactivated successfully.
    [    8.072533] systemd[1]: Finished Load Kernel Module configfs.
    [  OK  ] Finished Load Kernel Module configfs.
    
    [    8.115788] systemd[1]: modprobe@drm.service: Deactivated successfully.
    [    8.142329] systemd[1]: Finished Load Kernel Module drm.
    [  OK  ] Finished Load Kernel Module drm.
    
    [    8.163382] systemd[1]: modprobe@fuse.service: Deactivated successfully.
    [    8.191480] systemd[1]: Finished Load Kernel Module fuse.
    [  OK  ] Finished Load Kernel Module fuse.
    
    [    8.212578] systemd[1]: psplash-start.service: Main process exited, code=exited, status=255/EXCEPTION
    [    8.251815] systemd[1]: psplash-start.service: Failed with result 'exit-code'.
    [    8.281222] systemd[1]: Failed to start Start psplash boot splash screen.
    [FAILED] Failed to start Start psplash boot splash screen.
    
    See 'systemctl status psplash-start.service' for details.
    
    [    8.321219] systemd[1]: Dependency failed for Start psplash-systemd progress communication helper.
    [DEPEND] Dependency failed for Start psplastemd progress communication helper.
    
    [    8.371010] systemd[1]: psplash-systemd.service: Job psplash-systemd.service/start failed with result 'dependency'.
    [    8.391965] systemd[1]: Started Journal Service.
    [  OK  ] Started Journal Service.
    
    [  OK  ] Finished Load Kernel Modules.
    
    [  OK  ] Finished Generate network units from Kernel command line.
    
    [  OK  ] Finished Remount Root and Kernel File Systems.
    
             Mounting Kernel Configuration File System...
    
             Starting Flush Journal to Persistent Storage...
    
             Starting Apply Kernel Variables...
    
             Starting Create Static Device Nodes in /dev gracefully...
    
    [  OK  ] Mounted Kernel Configuration File System.
    
    [    8.909874] systemd-journald[82]: Received client request to flush runtime journal.
    [  OK  ] Finished Flush Journal to Persistent Storage.
    
    [  OK  ] Finished Apply Kernel Variables.
    
    [  OK  ] Finished Create Static Device Nodes in /dev gracefully.
    
             Starting Create Static Device Nodes in /dev...
    
    [  OK  ] Finished Create Static Device Nodes in /dev.
    
    [  OK  ] Reached target Preparation for Local File Systems.
    
             Mounting /var/volatile...
    
             Starting Rule-based Manager for Device Events and Files...
    
    [  OK  ] Mounted /var/volatile.
    
             Starting Load/Save OS Random Seed...
    
    [  OK  ] Reached target Local File Systems.
    
             Starting Create System Files and Directories...
    
    [  OK  ] Finished Load/Save OS Random Seed.
    
    [  OK  ] Finished Create System Files and Directories.
    
             Starting Network Name Resolution...
    
             Starting Network Time Synchronization...
    
             Starting Record System Boot/Shutdown in UTMP...
    
             Starting User Database Manager...
    
    [  OK  ] Finished Record System Boot/Shutdown in UTMP.
    
    [  OK  ] Started Rule-based Manager for Device Events and Files.
    
    [  OK  ] Started User Database Manager.
    
    [  OK  ] Finished Coldplug All udev Devices.
    
    [  OK  ] Started Network Time Synchronization.
    
    [  OK  ] Reached target System Time Set.
    
    [  OK  ] Started Network Name Resolution.
    
    [  OK  ] Reached target Host and Network Name Lookups.
    
    [  OK  ] Reached target System Initialization.
    
    [  OK  ] Started Daily rotation of log files.
    
    [  OK  ] Started Daily Cleanup of Temporary Directories.
    
    [  OK  ] Reached target Timer Units.
    
    [  OK  ] Listening on Avahi mDNS/DNS-SD Stack Activation Socket.
    
    [  OK  ] Listening on D-Bus System Message Bus Socket.
    
             Starting Docker Socket for the API...
    
    [  OK  ] Listening on dropbear.socket.
    
    [  OK  ] Listening on PC/SC Smart Card Daemon Activation Socket.
    
             Starting D-Bus System Message Bus...
    
             Starting Reboot and dump vmcore via kexec...
    
    [  OK  ] Listening on Docker Socket for the API.
    
    [  OK  ] Finished Reboot and dump vmcore via kexec.
    
    [  OK  ] Started D-Bus System Message Bus.
    
    [  OK  ] Found device /dev/ttyS0.
    
    [   20.164048] omap_wdt: OMAP Watchdog Timer Rev 0x01: initial timeout 60 sec
    [   20.195689] omap_rtc 44e3e000.rtc: already running
    [   20.202006] remoteproc remoteproc0: wkup_m3 is available
    [   20.226767] omap_rtc 44e3e000.rtc: registered as rtc0
    [   20.330189] 7 fixed-partitions partitions found on MTD device spi0.0
    [   20.336818] remoteproc remoteproc0: powering up wkup_m3
    [   20.417632] Creating 7 MTD partitions on "spi0.0":
    [   20.430543] remoteproc remoteproc0: Booting fw image am335x-pm-firmware.elf, size 120008
    [   20.490951] 0x000000000000-0x000000080000 : "QSPI.U_BOOT"
    [   20.551644] remoteproc remoteproc0: remote processor wkup_m3 is now up
    [   20.558248] wkup_m3_ipc 44e11324.wkup_m3_ipc: CM3 Firmware Version = 0x192
    [   20.591706] 0x000000080000-0x000000100000 : "QSPI.U_BOOT.backup"
    [   20.698868] 0x000000100000-0x000000110000 : "QSPI.U-BOOT-SPL_OS"
    [   20.785797] 0x000000110000-0x000000120000 : "QSPI.U_BOOT_ENV"
    [   20.862378] 0x000000120000-0x000000130000 : "QSPI.U-BOOT-ENV.backup"
    [   20.952771] 0x000000130000-0x000000930000 : "QSPI.KERNEL"
    [   21.041613] 0x000000930000-0x000004000000 : "QSPI.FILESYSTEM"
    [   21.869878] PM: bootloader does not support rtc-only!
    [   21.942825] omap-sham 53100000.sham: hw accel on OMAP rev 0.0
    [   21.957955] omap-des 53701000.des: OMAP DES hw accel rev: 0.33
    [   21.978965] omap-aes 53501000.aes: OMAP AES hw accel rev: 0.1
    [   22.029692] omap-sham 53100000.sham: will run requests pump with realtime priority
    [   22.040923] omap-aes 53501000.aes: will run requests pump with realtime priority
    [   22.062293] omap-des 53701000.des: will run requests pump with realtime priority
    [   22.141115] davinci_mdio 54432400.mdio: davinci mdio revision 1.6, bus freq 1000000
    [   22.268713] [drm] Initialized pvr 1.17.4948957 for 56000000.gpu on minor 0
    [   22.405711] davinci_mdio 54432400.mdio: phy[0]: device 54432400.mdio:00, driver unknown
    [   22.479701] davinci_mdio 54432400.mdio: phy[1]: device 54432400.mdio:01, driver unknown
    [   22.662175] remoteproc remoteproc1: 54434000.pru is available
    [   22.746303] remoteproc remoteproc2: 54438000.pru is available
    [   22.841002] remoteproc remoteproc3: 54474000.pru is available
    [   22.902160] remoteproc remoteproc4: 54478000.pru is available
    [   23.997651] prueth pruss1-eth: port 1: using random MAC addr: d2:2e:15:c1:22:4c
    [   24.095742] prueth pruss1-eth: port 2: using random MAC addr: f2:67:31:85:b7:47
    [   24.219179] prueth pruss1-eth: TI PRU ethernet driver initialized: dual EMAC mode
    [   24.316957] PVR_K: UM DDK-(4948957) and KM DDK-(4948957) match. [ OK ]
    [  OK  ] Created slice Slice /system/systemd-fsck.
    
    [  OK  ] Reached target Socket Units.
    
    [  OK  ] Reached target Basic System.
    
    [  OK  ] Listening on Load/Save RF Kill Switch Status /dev/rfkill Watch.
    
    [  OK  ] Started Job spooling tools.
    
             Starting Avahi mDNS/DNS-SD Stack...
    
    [  OK  ] Started Periodic Command Scheduler.
    
             Starting Print notice about GPLv3 packages...
    
             Starting IPv6 Packet Filtering Framework...
    
             Starting IPv4 Packet Filtering Framework...
    
    [  OK  ] Started Multiple Spanning Tree Protocol Daemon.
    
             Starting Telephony service...
    
             Starting Expand the rootfs partitito full size of the boot device....
    
             Starting File System Check on /dev/mmcblk0p1...
    
             Starting User Login Management...
    
             Starting Virtual Console Setup...
    
             Starting Telnet Server...
    
    [  OK  ] Finished IPv6 Packet Filtering Framework.
    
    [  OK  ] Finished IPv4 Packet Filtering Framework.
    
    [  OK  ] Reached target Preparation for Network.
    
             Starting Network Configuration...
    
    [  OK  ] Finished Telnet Server.
    
    [  OK  ] Started Avahi mDNS/DNS-SD Stack.
    
    [  OK  ] Started Telephony service.
    
    [   28.634317] Bluetooth: Core ver 2.22
    [   28.655607] NET: Registered PF_BLUETOOTH protocol family
    [   28.691541] Bluetooth: HCI device and connection manager initialized
    [   28.718009] Bluetooth: HCI socket layer initialized
    [   28.731063] Bluetooth: L2CAP socket layer initialized
    [   28.762987] Bluetooth: SCO socket layer initialized
    [  OK  ] Started User Login Management.
    
    [  OK  ] Finished Expand the rootfs partition to full size of the boot device..
    
    [  OK  ] Finished Virtual Console Setup.
    
    [   29.492840] cfg80211: Loading compiled-in X.509 certificates for regulatory database
    [  OK  ] Finished File System Check on /dev/mmcblk0p1.
    
    [   29.864808] Loaded X.509 cert 'sforshee: 00b28ddf47aef9cea7'
    [   29.903460] Loaded X.509 cert 'wens: 61c038651aabdcf94bd0ac7ff06c7248db18c600'
             Mounting /run/media/boot-mmcblk0p1...
    
    [  OK  ] Started Network Configuration.
    
    [  OK  ] Reached target Network.
    
    [   30.275452] cpsw-switch 4a100000.switch: starting ndev. mode: dual_mac
             Starting Enable and configure wl18xx bluetooth stack...
    
             Starting containerd container runtime...
    
    [   30.473895] Micrel KSZ9031 Gigabit PHY 4a101000.mdio:00: attached PHY driver (mii_bus:phy_addr=4a101000.mdio:00, irq=POLL)
             Starting LLDP daemon...
    
    [   30.601482] remoteproc remoteproc1: powering up 54434000.pru
    [   30.657891] remoteproc remoteproc1: Booting fw image ti-pruss/am437x-pru0-prueth-fw.elf, size 7048
    [  OK  ] Started Netperf Benchmark Server.
    
    [   30.731638] remoteproc remoteproc1: unsupported resource 5
             Starting Simple Network Management Protocol (SNMP) Daemon....
    
    [   30.782619] remoteproc remoteproc1: remote processor 54434000.pru is now up
             Starting Wait for Network to be Configured...
    
    [   30.906594] remoteproc remoteproc2: powering up 54438000.pru
             Starting Permit User Sessions...
    
    [   31.019725] remoteproc remoteproc2: Booting fw image ti-pruss/am437x-pru1-prueth-fw.elf, size 6872
    [  OK  ] Mounted /run/media/boot-mmcblk0p1.
    
    [   31.084914] remoteproc remoteproc2: unsupported resource 5
    [   31.090627] remoteproc remoteproc2: remote processor 54438000.pru is now up
    [  OK  ] Finished Enable and configure wl18xx bluetooth stack.
    
    [   31.196396] prueth pruss1-eth eth2: Link is Up - 100Mbps/Full - flow control off
    [  OK  ] Finished Permit User Sessions.
    
    [  OK  ] Started emptty display manager.
    
    [  OK  ] Started Getty on tty1.
    
    [  OK  ] Started Serial Getty on ttyS0.
    
    [  OK  ] Reached target Login Prompts.
    
             Starting ti-lvgl-demo service...
    
    [  OK  ] Started LLDP daemon.
    
    [  OK  ] Started Simple Network Management Protocol (SNMP) Daemon..
    
    
    
     _____                    _____           _         _   
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_ 
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|  
                  |___|                    |___|            
    
    Arago Project am437x-evm ttyS0
    
    Arago 2025.01 am437x-evm ttyS0
    
    am437x-evm login: ***************************************************************
    ***************************************************************
    NOTICE: This file system contains the following GPL-3.0 packages:
    adwaita-icon-theme-symbolic
    autoconf
    bash-dev
    bash
    bc
    binutils
    cifs-utils
    coreutils-stdbuf
    coreutils
    cpio
    cpp-symlinks
    cpp
    dosfstools
    elfutils-dev
    elfutils
    findutils
    g++-symlinks
    g++
    gawk
    gcc-symlinks
    gcc
    gdb
    gdbserver
    gettext
    glmark2
    gnu-config
    gzip
    hidapi
    kbd-dev
    kbd-keymaps-pine
    less
    libasm1
    libatomic-dev
    libatomic1
    libbfd
    libdebuginfod1
    libdw1
    libelf1
    libgcc-s-dev
    libgcc1
    libgdbm-compat4
    libgdbm-dev
    libgdbm6
    libgettextlib
    libgettextsrc
    libgmp-dev
    libgmp10
    libgmpxx4
    libgnutls-dev
    libgnutls-openssl27
    libgomp1
    libidn2-0
    libidn2-dev
    libmpc3
    libmpfr6
    libopcodes
    libqt6shadertools-dev
    libqt6shadertools-plugins
    libqt6shadertools-qmlplugins
    libqt6shadertools6
    libreadline-dev
    libreadline8
    libstdc++-dev
    libstdc++6
    libtasn1-dev
    libunistring-dev
    libunistring5
    m4
    make
    nettle-dev
    nettle
    parted
    piglit
    qtbase-dev
    qtbase-examples
    qtbase-plugins
    qtbase-qmlplugins
    qtbase-staticdev
    qtbase
    qtdeclarative-dev
    qtdeclarative-plugins
    qtdeclarative-qmlplugins
    qtdeclarative-staticdev
    qtdeclarative
    qtlanguageserver-dev
    qtlanguageserver-plugins
    qtlanguageserver-qmlplugins
    qtlanguageserver-staticdev
    qtlanguageserver
    qtsvg-dev
    qtsvg-plugins
    qtsvg-qmlplugins
    qtsvg
    qtwayland-dev
    qtwayland-plugins
    qtwayland-qmlplugins
    qtwayland
    tar
    which
    
    If you do not wish to distribute GPL-3.0 components please remove
    the above packages prior to distribution.  This can be done using
    the opkg remove command.  i.e.:
        opkg remove <package>
    Where <package> is the name printed in the list above
    
    NOTE: If the package is a dependency of another package you
          will be notified of the dependent packages.  You should
          use the --force-removal-of-dependent-packages option to
          also remove the dependent packages as well
    ***************************************************************
    ***************************************************************
    
    
    am437x-evm login: root
    
    root@am437x-evm:~# ifconfig
    eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
            ether 9c:1d:58:7c:b5:c4  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    eth1: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
            ether 1e:28:24:c6:02:5f  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    eth2: flags=4163<UP,BROADCAST,RUNNING,MULTICAST>  mtu 1500
            inet6 fe80::440d:f9ff:fefb:2242  prefixlen 64  scopeid 0x20<li nk>
            ether 46:0d:f9:fb:22:42  txqueuelen 1000  (Ethernet)
            RX packets 11  bytes 1674 (1.6 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 27  bytes 4899 (4.7 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 42  bytes 4002 (3.9 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 42  bytes 4002 (3.9 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@am437x-evm:~# ip link set dev eth1 down
    [  102.298272] remoteproc remoteproc1: stopped remote processor 54434000.pru
    root@am437x-evm:~# ip link set dev eth2 down
    [  104.632944] prueth pruss1-eth eth2: Link is Down
    [  104.638249] remoteproc remoteproc2: stopped remote processor 54438000.pru
    root@am437x-evm:~# ip link add name br0 type bridge
    root@am437x-evm:~# ip link set dev eth1 master br0
    [  108.732839] br0: port 1(eth1) entered blocking state
    [  108.737883] br0: port 1(eth1) entered disabled state
    [  108.744338] prueth pruss1-eth eth1: entered allmulticast mode
    [  108.754446] prueth pruss1-eth eth1: entered promiscuous mode
    root@am437x-evm:~# ip link set dev eth2 master br0
    [  110.442851] br0: port 2(eth2) entered blocking state
    [  110.447935] br0: port 2(eth2) entered disabled state
    [  110.453978] prueth pruss1-eth eth2: entered allmulticast mode
    [  110.463859] prueth pruss1-eth: TI PRU ethernet now in Switch mode
    [  110.470039] prueth pruss1-eth eth2: entered promiscuous mode
    root@am437x-evm:~# ip link set dev br0 up
    root@am437x-evm:~# ip link set dev eth1 up
    [  114.323217] remoteproc remoteproc1: powering up 54434000.pru
    [  114.329123] remoteproc remoteproc1: Direct firmware load for ti-pruss/am437x-pru0-prusw-fw.elf failed with error -2
    [  114.361071] remoteproc remoteproc1: request_firmware failed: -2
    [  114.367065] prueth pruss1-eth eth1: failed to boot PRU: -2
    RTNETLINK answers: No such file or directory
    root@am437x-evm:~# ip link set dev eth2 up
    [  116.700925] remoteproc remoteproc1: powering up 54434000.pru
    [  116.706738] remoteproc remoteproc1: Direct firmware load for ti-pruss/am437x-pru0-prusw-fw.elf failed with error -2
    [  116.750869] remoteproc remoteproc1: request_firmware failed: -2
    [  116.756861] prueth pruss1-eth eth2: failed to boot PRU: -2
    RTNETLINK answers: No such file or directory
    root@am437x-evm:~# ifconfig
    br0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
            ether ce:e9:3f:89:57:47  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    eth0: flags=4099<UP,BROADCAST,MULTICAST>  mtu 1500
            ether 9c:1d:58:7c:b5:c4  txqueuelen 1000  (Ethernet)
            RX packets 0  bytes 0 (0.0 B)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 0  bytes 0 (0.0 B)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    lo: flags=73<UP,LOOPBACK,RUNNING>  mtu 65536
            inet 127.0.0.1  netmask 255.0.0.0
            inet6 ::1  prefixlen 128  scopeid 0x10<host>
            loop  txqueuelen 1000  (Local Loopback)
            RX packets 42  bytes 4002 (3.9 KiB)
            RX errors 0  dropped 0  overruns 0  frame 0
            TX packets 42  bytes 4002 (3.9 KiB)
            TX errors 0  dropped 0 overruns 0  carrier 0  collisions 0
    
    root@am437x-evm:~# 


    When trying to paste this log I saw that some character combinations were not accepted, like in line 26 
    Retrieving file: /extlinux/../zImage  The characters /../ were not accepted and I could not paste the text. 
    In line 380 null was not accepted and in line 824 <link>.
    I escaped these sequences by inserting a space now.

    I assume improper escaping also lead to the file being rejected.

    Regards
    Robin

  • Hi Robin,

    Thanks for sharing the logs again.

    Direct firmware load for ti-pruss/am437x-pru0-prusw-fw.elf failed with error -2
    failed to boot PRU: -2
    RTNETLINK answers: No such file or directory

    Enslaving the second PRU port to br0 switches the driver to Switch mode (now in Switch mode). Bringing the ports up then requests ti-pruss/am437x-pru0-prusw-fw.elf, which is missing from this image, so the load fails with error -2 and the interface can’t come up.

    There’s no fallback to the Dual EMAC firmware.

    The prusw firmware exists upstream, so this looks like a packaging issue in the 11.02.05.02 image.

    Can you check if you can find am437x-pru0-prusw-fw.elf and am437x-pru1-prusw-fw.elf files in the SDK?  

    If you can find the firmwares, add it to /lib/firmware/ti-pruss/ and capture the logs again. 

    To go back to Dual EMAC, remove the ports from the bridge first.

    Regards,
    Vinu