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.

AM6548: Software compatibility in Processor SDK Linux between different silicon revisions

Part Number: AM6548
Other Parts Discussed in Thread: TMDX654IDKEVM

Our customer sees the boot hang at Linux kernel (PROCESSOR-SDK-LINUX-AM65X_07.01.00.17) on their custom board with X6580BACD (SR2.1).

How is the SDK required to be modified for SR2.1?

Change is required for different numbers of cores (quad-core → dual-core).

e2e.ti.com/.../3664992

Are there any other required changes?

PRU Ethernet is not supported for SR2.0.

e2e.ti.com/.../3685493

So our customer is using PRU Ethernet firmware for SR2.0 and the firmware works fine on the TMDX654IDKEVM.

git.ti.com/.../ti-pruss

Can the PRU Ethernet firmware for SR2.0 be used for SR2.1?

Best regards,

Daisuke

  • How is the SDK required to be modified for SR2.1?

    Change is required for different numbers of cores (quad-core → dual-core).

    e2e.ti.com/.../3664992

    Are there any other required changes?

    Diasuke-san,

    Are you not able to boot with the changes suggested for dual-core? If not please let us know.

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    Is the X6580BACD a quad-core device or a dual-core device?

    I heard that the X6580BACD is the same or upward compatible with the XAM6548BACDXA.

    Does not SDK 7.1 support the quad-core device for SR 2.1?

    I was misunderstanding about the PRU Ethernet firmware used by our customer. They are using the firmware included in SDK 7.1.

    /linux-devkit/sysroots/aarch64-linux/lib/firmware/ti-pruss

    firmware-name = "ti-pruss/am65x-sr2-pru0-prueth-fw.elf",
    "ti-pruss/am65x-sr2-rtu0-prueth-fw.elf",
    "ti-pruss/am65x-sr2-txpru0-prueth-fw.elf",
    "ti-pruss/am65x-sr2-pru1-prueth-fw.elf",
    "ti-pruss/am65x-sr2-rtu1-prueth-fw.elf",
    "ti-pruss/am65x-sr2-txpru1-prueth-fw.elf";

    Can the PRU Ethernet firmware for SR2.0 be used for SR2.1?

    I heard that the revision change from SR2.0 to SR2.1 fixed an issue related to PRU-ICSSG.

    Best regards,

    Daisuke

  • Hi Daisuke-san,

    I checked internally. The feedback is X6580BACD is a superset GP device.
    That should be working with PG2.0 software. Thus either 7.0 or 7.1 SDK should work out of box for the above.

    Can the PRU Ethernet firmware for SR2.0 be used for SR2.1?

    PRUETH for SR2.0 in u-boot is not yet available on the latest release. This will come this month end in the next release.

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    > PRUETH for SR2.0 in u-boot is not yet available on the latest release. This will come this month end in the next release.

    Should the PRU firmware be removed to boot the Linux kernel (SDK7.1) on SR2.1 device?

    If so, how should we remove it?

    Best regards,

    Daisuke

  • Hi Daisuke-san,

    You can try renaming the pru firmwares under /lib/firmware so as to avoid loading the firmware.

    Share the complete bootlog once you do that.

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    Our customer will try your suggestion.

    > PRUETH for SR2.0 in u-boot is not yet available on the latest release. This will come this month end in the next release.

    Is PRUETH for SR2.0 available in the Linux kernel instead of u-boot on the latest release (SDK7.1)?

    If so, how can we load the PRUETH firmware?

    Does the PRUETH firmware for SR2.0 support the SR2.1 device?

    Best regards,

    Daisuke

  • Hi Keerthy-san,

    I'm sorry to ask you many times.

    Our customer sees that PRUETH firmware for SR2.0 included in SDK7.1 works fine on the TMDX654IDKEVM (SR2.0). So they can not believe that SDK7.1 does not support PRUETH for SR2.0.

    Does not the latest SDK (SDK7.1) really support PRUETH for SR2.0?

    Does the next SDK release support both PRUETH for SR2.0 and PRUETH for SR2.1?

    If so, I will suggest to our customer to wait for the next SDK release.

    Best regards,

    Daisuke

  • Our customer sees that PRUETH firmware for SR2.0 included in SDK7.1 works fine on the TMDX654IDKEVM (SR2.0). So they can not believe that SDK7.1 does not support PRUETH for SR2.0.

    I have clearly mentioned prueth on u-boot is NOT supported on SR2.0 on SDK 7.1.

    Does not the latest SDK (SDK7.1) really support PRUETH for SR2.0?

    Yes in kernel & No in u-boot.

    Please share the complete Logs of pru on 2.1 SR. Without that we can not comment much.

    - Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    > Does the next SDK release support both PRUETH for SR2.0 and PRUETH for SR2.1?
    >
    > If so, I will suggest to our customer to wait for the next SDK release.

    Is not it clear that the next SDK release supports PRUETH for SR2.1?

    If so, I will suggest to our customer that they continue to try with SDK 7.1 and get the logs.

    Best regards,

    Daisuke

  • Is not it clear that the next SDK release supports PRUETH for SR2.1?

    Daisuke-san,

    Yes. SR2.1 will be validated as well for the next SDK release.

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    I will suggest to our customer that they continue to try with SDK 7.1 and get the logs.

    > You can try renaming the pru firmwares under /lib/firmware so as to avoid loading the firmware.

    Does your suggestion mean to rename all the files listed below to any different name?

    /rootfs/lib/firmware/ti-pruss/
            am65x-pru0-prueth-fw.elf
            am65x-pru0-pwm-fw.elf
            am65x-pru1-prueth-fw.elf
            am65x-rtu0-prueth-fw.elf
            am65x-rtu1-prueth-fw.elf
            am65x-sr2-pru0-prueth-fw.elf
            am65x-sr2-pru1-prueth-fw.elf
            am65x-sr2-rtu0-prueth-fw.elf
            am65x-sr2-rtu1-prueth-fw.elf
            am65x-sr2-txpru0-prueth-fw.elf
            am65x-sr2-txpru1-prueth-fw.elf

    Best regards,

    Daisuke

  • Hi Daisuke-san,

    Yes. Try that & let me know if boots to linux kernel prompt.

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    Our customer failed to boot. Attached the logs.

    U-Boot SPL 2020.01-dirty (May 13 2021 - 11:44:07 +0900)
    SYSFW ABI: 3.1 (firmware rev 0x0014 '20.8.5--v2020.08b (Terrific Lla')
    BOARD ID : 0x01
    Trying to boot from MMC2
    Starting ATF on ARM64 core...
    
    NOTICE:  BL31: v2.3():07.01.00.004-1-g52c334fc3-dirty
    NOTICE:  BL31: Built : 15:36:28, Nov 25 2020
    
    U-Boot SPL 2020.01-dirty (May 17 2021 - 16:49:43 +0900)
    SYSFW ABI: 3.1 (firmware rev 0x0014 '20.8.5--v2020.08b (Terrific Lla')
    BOARD ID : 0x01
    Trying to boot from MMC2
    
    
    U-Boot 2020.01-dirty (May 17 2021 - 16:49:43 +0900)
    
    SoC:   AM65X SR2.0
    DRAM:  4 GiB
    MMC:   sdhci@4f80000 - probe failed: -22
    
    Loading Environment from FAT... *** Warning - bad CRC, using default environment
    
    In:    serial
    Out:   serial
    Err:   serial
    
    BOARD LATE INIT:
      BOARD ID : 0x01
      MEM SIZE : 0x01
      DDR BIT WIDTH : 0x02
      ECC : 0x00
      LEDs ON
    Net:
    Warning: ethernet@46000000 using MAC address from ROM
    eth0: ethernet@46000000
    Warning: pruss2_eth (eth1) using random MAC address - 56:6f:3b:ad:51:97
    , eth1: pruss2_eth
    => run distro_bootcmd
    16666632 bytes read in 695 ms (22.9 MiB/s)
    59772 bytes read in 8 ms (7.1 MiB/s)
    ## Flattened Device Tree blob at 82000000
       Booting using the fdt blob at 0x82000000
       Loading Device Tree to 000000008feee000, end 000000008fffffff ... OK
    
    Starting kernel ...
    
    [    0.000000] Booting Linux on physical CPU 0x0000000000 [0x410fd034]
    [    0.000000] Linux version 5.4.74-ti-xplat53-g9574bba32a (root@ubuntu) (gcc version 9.2.1 20191025 (GNU Toolchain for the A-profile Architecture 9.2-2019.12 (arm-9.10))) #7 SMP PREEMPT Mon May 17 16:11:27 JST 2021
    
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a0000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a0100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a0100000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1000000, size 1 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-dma-memory@a1000000, compatible id shared-dma-pool
    [    0.000000] Reserved memory: created DMA memory pool at 0x00000000a1100000, size 15 MiB
    [    0.000000] OF: reserved mem: initialized node r5f-memory@a1100000, compatible id shared-dma-pool
    [    0.000000] cma: Reserved 512 MiB at 0x00000000e0000000
    [    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.0
    [    0.000000] percpu: Embedded 2 pages/cpu s48408 r8192 d74472 u131072
    [    0.000000] Detected VIPT I-cache on CPU0
    [    0.000000] CPU features: detected: ARM erratum 845719
    [    0.000000] CPU features: detected: GIC system register CPU interface
    [    0.000000] Built 1 zonelists, mobility grouping on.  Total pages: 55976
    [    0.000000] Kernel command line: console=ttyS2,115200n8 earlycon=ns16500a,mmio32,0x02800000 mtdparts=47040000.spi.0:512k(ospi.tiboot3),2m(ospi.tispl),4m(ospi.u-boot),128k(ospi.env),128k(ospi.env.backup),1m(ospi.sysfw),57216k@8m(ospi.rootfs),128k(ospi.phypattern) root=/dev/mmcblk0p5 rw roottypefs=ext4 rootwait
    [    0.000000] Dentry cache hash table entries: 524288 (order: 6, 4194304 bytes, linear)
    [    0.000000] Inode-cache hash table entries: 262144 (order: 5, 2097152 bytes, linear)
    [    0.000000] mem auto-init: stack:off, heap alloc:off, heap free:off
    [    0.000000] software IO TLB: mapped [mem 0xbbff0000-0xbfff0000] (64MB)
    [    0.000000] Memory: 3515776K/3586048K available (9598K kernel code, 788K rwdata, 3840K rodata, 1664K init, 683K bss, 18446744073709097600K reserved, 524288K 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]  Tasks RCU enabled.
    [    0.000000] rcu: RCU calculated value of scheduler-enlistment delay is 25 jiffies.
    [    0.000000] rcu: Adjusting geometry for rcu_fanout_leaf=16, nr_cpu_ids=4
    [    0.000000] NR_IRQS: 64, nr_irqs: 64, preallocated irqs: 0
    [    0.000000] GICv3: GIC: Using split EOI/Deactivate mode
    [    0.000000] GICv3: 960 SPIs implemented
    [    0.000000] GICv3: 0 Extended SPIs implemented
    [    0.000000] GICv3: Distributor has no Range Selector support
    [    0.000000] GICv3: 16 PPIs implemented
    [    0.000000] GICv3: no VLPI support, no direct LPI support
    [    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: allocated 1048576 Devices @8c0800000 (flat, esz 8, psz 64K, shr 0)
    [    0.000000] ITS: using cache flushing for cmd queue
    [    0.000000] GICv3: using LPI property table @0x00000008c00d0000
    [    0.000000] GIC: using cache flushing for LPI property table
    [    0.000000] GICv3: CPU0: using allocated LPI pending table @0x00000008c00e0000
    [    0.000000] random: get_random_bytes called from start_kernel+0x2b8/0x43c with crng_init=0
    [    0.000000] arch_timer: cp15 timer(s) running at 200.00MHz (phys).
    [    0.000000] clocksource: arch_sys_counter: mask: 0xffffffffffffff max_cycles: 0x2e2049d3e8, max_idle_ns: 440795210634 ns
    [    0.000005] sched_clock: 56 bits at 200MHz, resolution 5ns, wraps every 4398046511102ns
    [    0.000379] Console: colour dummy device 80x25
    [    0.000434] Calibrating delay loop (skipped), value calculated using timer frequency.. 400.00 BogoMIPS (lpj=800000)
    [    0.000447] pid_max: default: 32768 minimum: 301
    [    0.000567] LSM: Security Framework initializing
    [    0.000648] Mount-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.000672] Mountpoint-cache hash table entries: 8192 (order: 0, 65536 bytes, linear)
    [    0.003048] ASID allocator initialised with 32768 entries
    [    0.003192] rcu: Hierarchical SRCU implementation.
    [    0.003539] Platform MSI: gic-its@1820000 domain created
    [    0.003777] PCI/MSI: /bus@100000/interrupt-controller@1800000/gic-its@1820000 domain created
    [    0.004393] smp: Bringing up secondary CPUs ...
    [    0.005602] Detected VIPT I-cache on CPU1
    [    0.005639] GICv3: CPU1: found redistributor 1 region 0:0x00000000018a0000
    [    0.005653] GICv3: CPU1: using allocated LPI pending table @0x00000008c00f0000
    [    0.005705] CPU1: Booted secondary processor 0x0000000001 [0x410fd034]
    [    0.007123] Detected VIPT I-cache on CPU2
    [    0.007165] GICv3: CPU2: found redistributor 100 region 0:0x00000000018c0000
    [    0.007180] GICv3: CPU2: using allocated LPI pending table @0x00000008c0100000
    [    0.007231] CPU2: Booted secondary processor 0x0000000100 [0x410fd034]
    [    0.008643] Detected VIPT I-cache on CPU3
    [    0.008674] GICv3: CPU3: found redistributor 101 region 0:0x00000000018e0000
    [    0.008687] GICv3: CPU3: using allocated LPI pending table @0x00000008c0110000
    [    0.008724] CPU3: Booted secondary processor 0x0000000101 [0x410fd034]
    [    0.008876] smp: Brought up 1 node, 4 CPUs
    [    0.008915] SMP: Total of 4 processors activated.
    [    0.008927] CPU features: detected: 32-bit EL0 Support
    [    0.008936] CPU features: detected: CRC32 instructions
    [    0.020523] CPU: All CPU(s) started at EL2
    [    0.020568] alternatives: patching kernel code
    [    0.022274] devtmpfs: initialized
    [    0.032287] clocksource: jiffies: mask: 0xffffffff max_cycles: 0xffffffff, max_idle_ns: 7645041785100000 ns
    [    0.032312] futex hash table entries: 1024 (order: 0, 65536 bytes, linear)
    [    0.033783] pinctrl core: initialized pinctrl subsystem
    [    0.034772] NET: Registered protocol family 16
    [    0.041938] DMA: preallocated 256 KiB pool for atomic allocations
    [    0.042833] hw-breakpoint: found 6 breakpoint and 4 watchpoint registers.
    [    0.066711] HugeTLB registered 16.0 GiB page size, pre-allocated 0 pages
    [    0.066725] HugeTLB registered 512 MiB page size, pre-allocated 0 pages
    [    0.066734] HugeTLB registered 2.00 MiB page size, pre-allocated 0 pages
    [    0.069467] cryptd: max_cpu_qlen set to 1000
    [    0.075849] iommu: Default domain type: Translated
    [    0.076302] SCSI subsystem initialized
    [    0.077021] mc: Linux media interface: v0.10
    [    0.077057] videodev: Linux video capture interface: v2.00
    [    0.077089] pps_core: LinuxPPS API ver. 1 registered
    [    0.077096] pps_core: Software ver. 5.3.6 - Copyright 2005-2007 Rodolfo Giometti <giometti@linux.it>
    [    0.077113] PTP clock support registered
    [    0.077142] EDAC MC: Ver: 3.0.0
    [    0.078549] FPGA manager framework
    [    0.078679] Advanced Linux Sound Architecture Driver Initialized.
    [    0.079693] clocksource: Switched to clocksource arch_sys_counter
    [    0.079919] VFS: Disk quotas dquot_6.6.0
    [    0.080026] VFS: Dquot-cache hash table entries: 8192 (order 0, 65536 bytes)
    [    0.087387] thermal_sys: Registered thermal governor 'step_wise'
    [    0.087392] thermal_sys: Registered thermal governor 'power_allocator'
    [    0.088017] NET: Registered protocol family 2
    [    0.088647] tcp_listen_portaddr_hash hash table entries: 4096 (order: 0, 65536 bytes, linear)
    [    0.088768] TCP established hash table entries: 32768 (order: 2, 262144 bytes, linear)
    [    0.089075] TCP bind hash table entries: 32768 (order: 3, 524288 bytes, linear)
    [    0.089663] TCP: Hash tables configured (established 32768 bind 32768)
    [    0.089828] UDP hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.089943] UDP-Lite hash table entries: 2048 (order: 0, 65536 bytes, linear)
    [    0.090259] NET: Registered protocol family 1
    [    0.090939] RPC: Registered named UNIX socket transport module.
    [    0.090951] RPC: Registered udp transport module.
    [    0.090957] RPC: Registered tcp transport module.
    [    0.090963] RPC: Registered tcp NFSv4.1 backchannel transport module.
    [    0.090977] PCI: CLS 0 bytes, default 64
    [    0.092294] hw perfevents: enabled with armv8_pmuv3 PMU driver, 7 counters available
    [    0.098705] Initialise system trusted keyrings
    [    0.098934] workingset: timestamp_bits=46 max_order=16 bucket_order=0
    [    0.105842] squashfs: version 4.0 (2009/01/31) Phillip Lougher
    [    0.106614] NFS: Registering the id_resolver key type
    [    0.106644] Key type id_resolver registered
    [    0.106650] Key type id_legacy registered
    [    0.106665] nfs4filelayout_init: NFSv4 File Layout Driver Registering...
    [    0.106922] 9p: Installing v9fs 9p2000 file system support
    [    0.127154] Key type asymmetric registered
    [    0.127167] Asymmetric key parser 'x509' registered
    [    0.127221] Block layer SCSI generic (bsg) driver version 0.4 loaded (major 244)
    [    0.127230] io scheduler mq-deadline registered
    [    0.127236] io scheduler kyber registered
    [    0.129943] pinctrl-single 4301c000.pinmux: 70 pins, size 280
    [    0.130548] pinctrl-single 11c000.pinmux: 185 pins, size 740
    [    0.130705] pinctrl-single 11c2e8.pinmux: 9 pins, size 36
    [    0.136970] k3-ringacc 2b800000.ringacc: Failed to get MSI domain
    [    0.137076] k3-ringacc 3c000000.ringacc: Failed to get MSI domain
    [    0.141519] Serial: 8250/16550 driver, 10 ports, IRQ sharing enabled
    [    0.159257] brd: module loaded
    [    0.168275] loop: module loaded
    [    0.172222] libphy: Fixed MDIO Bus: probed
    [    0.172861] tun: Universal TUN/TAP device driver, 1.6
    [    0.173671] igbvf: Intel(R) Gigabit Virtual Function Network Driver - version 2.4.0-k
    [    0.173679] igbvf: Copyright (c) 2009 - 2012 Intel Corporation.
    [    0.173732] sky2: driver version 1.30
    [    0.174998] VFIO - User Level meta-driver version: 0.3
    [    0.175926] i2c /dev entries driver
    [    0.177224] sdhci: Secure Digital Host Controller Interface driver
    [    0.177231] sdhci: Copyright(c) Pierre Ossman
    [    0.177719] sdhci-pltfm: SDHCI platform and OF driver helper
    [    0.179015] ledtrig-cpu: registered to indicate activity on CPUs
    [    0.179115] ti-sci bus@100000:bus@28380000:bus@42040000:dmsc: invalid resource
    [    0.180639] optee: probing for conduit method from DT.
    [    0.180670] optee: revision 3.8 (199fca17)
    [    0.181444] optee: initialized driver
    [    0.183168] NET: Registered protocol family 17
    [    0.183340] 9pnet: Installing 9P2000 support
    [    0.183401] Key type dns_resolver registered
    [    0.183864] registered taskstats version 1
    [    0.183872] Loading compiled-in X.509 certificates
    [    0.194235] k3-ringacc 2b800000.ringacc: Failed to get MSI domain
    [    0.194490] k3-ringacc 3c000000.ringacc: Failed to get MSI domain
    [    0.200016] ti-sci bus@100000:bus@28380000:bus@42040000:dmsc: invalid resource
    [    0.200249] ti-sci bus@100000:bus@28380000:bus@42040000:dmsc: ABI: 3.1 (firmware rev 0x0014 '20.8.5--v2020.08b (Terrific Lla')
    [    0.245726] random: fast init done
    [    0.252576] omap_i2c 42120000.i2c: bus 0 rev0.12 at 400 kHz
    [    0.253367] omap_i2c 40b00000.i2c: bus 1 rev0.12 at 100 kHz
    [    0.254286] pca953x 2-0021: 2-0021 supply vcc not found, using dummy regulator
    [    0.254369] pca953x 2-0021: using no AI
    [    0.276400] omap_i2c 2000000.i2c: bus 2 rev0.12 at 400 kHz
    [    0.277180] omap_i2c 2010000.i2c: bus 3 rev0.12 at 400 kHz
    [    0.277918] omap_i2c 2020000.i2c: bus 4 rev0.12 at 400 kHz
    [    0.278614] omap_i2c 2030000.i2c: bus 5 rev0.12 at 100 kHz
    [    0.279594] ti-sci-intr bus@100000:bus@28380000:bus@42040000:interrupt-controller2: Interrupt Router 156 domain created
    [    0.279841] ti-sci-intr bus@100000:interrupt-controller0: Interrupt Router 100 domain created
    [    0.280037] ti-sci-intr bus@100000:navss@30800000:interrupt-controller1: Interrupt Router 182 domain created
    [    0.280362] ti-sci-inta 33d00000.interrupt-controller: Interrupt Aggregator domain 179 created
    [    0.287195] keystone-pcie 5500000.pcie: host bridge /bus@100000/pcie@5500000 ranges:
    [    0.287236] keystone-pcie 5500000.pcie:    IO 0x10020000..0x1002ffff -> 0x00000000
    [    0.287262] keystone-pcie 5500000.pcie:   MEM 0x10030000..0x17ffffff -> 0x10030000
    [    1.287786] keystone-pcie 5500000.pcie: Phy link never came up
    [    1.288023] keystone-pcie 5500000.pcie: PCI host bridge to bus 0000:00
    [    1.288039] pci_bus 0000:00: root bus resource [bus 00-ff]
    [    1.288050] pci_bus 0000:00: root bus resource [io  0x0000-0xffff]
    [    1.288059] pci_bus 0000:00: root bus resource [mem 0x10030000-0x17ffffff]
    [    1.288102] pci 0000:00:00.0: [104c:b00c] type 01 class 0x060400
    [    1.288157] pci 0000:00:00.0: reg 0x38: [mem 0x00000000-0x0000ffff pref]
    [    1.288257] pci 0000:00:00.0: supports D1
    [    1.288267] pci 0000:00:00.0: PME# supported from D0 D1 D3hot
    [    1.294892] pci 0000:00:00.0: BAR 6: assigned [mem 0x10030000-0x1003ffff pref]
    [    1.294908] pci 0000:00:00.0: PCI bridge to [bus 01-ff]
    [    1.295330] pcieport 0000:00:00.0: PME: Signaling with IRQ 39
    [    1.295779] pcieport 0000:00:00.0: AER: enabled with IRQ 39
    [    1.296278] keystone-pcie 5500000.pcie-ep: can't request region for resource [mem 0x05500000-0x05500fff]
    [    1.296304] keystone-pcie: probe of 5500000.pcie-ep failed with error -16
    [    1.297379] keystone-pcie 5600000.pcie: host bridge /bus@100000/pcie@5600000 ranges:
    [    1.297417] keystone-pcie 5600000.pcie:    IO 0x18020000..0x1802ffff -> 0x00000000
    [    1.297442] keystone-pcie 5600000.pcie:   MEM 0x18030000..0x1fffffff -> 0x18030000
    [    2.297749] keystone-pcie 5600000.pcie: Phy link never came up
    [    2.297879] keystone-pcie 5600000.pcie: PCI host bridge to bus 0001:00
    [    2.297893] pci_bus 0001:00: root bus resource [bus 00-ff]
    [    2.297905] pci_bus 0001:00: root bus resource [io  0x10000-0x1ffff] (bus address [0x0000-0xffff])
    [    2.297915] pci_bus 0001:00: root bus resource [mem 0x18030000-0x1fffffff]
    [    2.297952] pci 0001:00:00.0: [104c:b00c] type 01 class 0x060400
    [    2.298002] pci 0001:00:00.0: reg 0x38: [mem 0x00000000-0x0000ffff pref]
    [    2.298097] pci 0001:00:00.0: supports D1
    [    2.298107] pci 0001:00:00.0: PME# supported from D0 D1 D3hot
    [    2.304621] pci 0001:00:00.0: BAR 6: assigned [mem 0x18030000-0x1803ffff pref]
    [    2.304636] pci 0001:00:00.0: PCI bridge to [bus 01-ff]
    [    2.305020] pcieport 0001:00:00.0: PME: Signaling with IRQ 42
    [    2.305340] pcieport 0001:00:00.0: AER: enabled with IRQ 42
    [    2.305719] keystone-pcie 5600000.pcie-ep: can't request region for resource [mem 0x05600000-0x05600fff]
    [    2.305742] keystone-pcie: probe of 5600000.pcie-ep failed with error -16
    [    2.311544] k3-ringacc 2b800000.ringacc: Ring Accelerator probed rings:286, gp-rings[96,160] sci-dev-id:195
    [    2.311558] k3-ringacc 2b800000.ringacc: dma-ring-reset-quirk: disabled
    [    2.311567] k3-ringacc 2b800000.ringacc: RA Proxy rev. 66348100, num_proxies:64
    [    2.325679] k3-ringacc 3c000000.ringacc: Ring Accelerator probed rings:818, gp-rings[304,464] sci-dev-id:187
    [    2.325697] k3-ringacc 3c000000.ringacc: dma-ring-reset-quirk: disabled
    [    2.325707] k3-ringacc 3c000000.ringacc: RA Proxy rev. 66348100, num_proxies:64
    [    2.326861] 40a00000.serial: ttyS1 at MMIO 0x40a00000 (irq = 8, base_baud = 6000000) is a 8250
    [    2.328000] 2800000.serial: ttyS2 at MMIO 0x2800000 (irq = 17, base_baud = 3000000) is a 8250
    [    3.732159] printk: console [ttyS2] enabled
    [    3.737278] 2810000.serial: ttyS3 at MMIO 0x2810000 (irq = 18, base_baud = 3000000) is a 8250
    [    3.746675] 2820000.serial: ttyS4 at MMIO 0x2820000 (irq = 19, base_baud = 3000000) is a 8250
    [    3.807713] davinci_mdio 46000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    3.815383] libphy: 46000f00.mdio: probed
    [    3.820340] davinci_mdio 46000f00.mdio: phy[1]: device 46000f00.mdio:01, driver unknown
    [    3.828397] am65-cpsw-nuss 46000000.ethernet: initializing am65 cpsw nuss version 0x6BA00102, cpsw version 0x6BA80102 Ports: 2 quirks:00000000
    [    3.841279] am65-cpsw-nuss 46000000.ethernet: Failed to request tx dma channel -517
    [    3.851355] am65-cpts 310d0000.cpts: CPTS ver 0x4e8a010b, freq:200000000, add_val:4 pps:0
    [    3.860182] thermal thermal_zone1: failed to read out thermal zone (-22)
    [    3.867818] sdhci-am654: probe of 4f80000.sdhci failed with error -22
    [    3.875230] mmc0: CQHCI version 5.10
    [    4.945358] mmc0: SDHCI controller on 4fa0000.sdhci [4fa0000.sdhci] using ADMA 64-bit
    [    4.965178] omap-mailbox 31f80000.mailbox: omap mailbox rev 0x66fc7100
    [    4.972178] omap-mailbox 31f81000.mailbox: omap mailbox rev 0x66fc7100
    [    4.982520] ti-udma 285c0000.dma-controller: Channels: 96 (tchan: 48, rchan: 48, gp-rflow: 48)
    [    5.005757] ti-udma 31150000.dma-controller: Channels: 267 (tchan: 119, rchan: 148, gp-rflow: 150)
    [    5.056145] cadence-qspi 47040000.spi: PHY calibration failed: -2
    [    5.062257] spi-nor spi7.0: mt35xu512aba (65536 Kbytes)
    [    5.067522] 8 cmdlinepart partitions found on MTD device 47040000.spi.0
    [    5.074152] Creating 8 MTD partitions on "47040000.spi.0":
    [    5.079660] 0x000000000000-0x000000080000 : "ospi.tiboot3"
    [    5.086722] 0x000000080000-0x000000280000 : "ospi.tispl"
    [    5.093503] 0x000000280000-0x000000680000 : "ospi.u-boot"
    [    5.100207] 0x000000680000-0x0000006a0000 : "ospi.env"
    [    5.106762] 0x0000006a0000-0x0000006c0000 : "ospi.env.backup"
    [    5.113893] 0x0000006c0000-0x0000007c0000 : "ospi.sysfw"
    [    5.120745] 0x000000800000-0x000003fe0000 : "ospi.rootfs"
    [    5.127497] 0x000003fe0000-0x000004000000 : "ospi.phypattern"
    [    5.142612] spi-nor spi9.0: n25q128a13 (16384 Kbytes)
    [    5.187718] davinci_mdio 46000f00.mdio: davinci mdio revision 9.7, bus freq 1000000
    [    5.195385] libphy: 46000f00.mdio: probed
    [    5.200732] davinci_mdio 46000f00.mdio: phy[1]: device 46000f00.mdio:01, driver unknown
    [    5.208807] am65-cpsw-nuss 46000000.ethernet: initializing am65 cpsw nuss version 0x6BA00102, cpsw version 0x6BA80102 Ports: 2 quirks:00000000
    [    5.222993] am65-cpsw-nuss 46000000.ethernet: set new flow-id-base 48
    [    5.230153] am65-cpsw-nuss 46000000.ethernet: initialized cpsw ale version 57.4
    [    5.237496] am65-cpsw-nuss 46000000.ethernet: ALE Table size 64
    [    5.244520] am65-cpsw-nuss 46000000.ethernet: CPTS ver 0x4e8a010b, freq:200000000, add_val:4 pps:0
    [    5.255516] debugfs: Directory 'pd:121' with parent 'pm_genpd' already present!
    [    5.262923] debugfs: Directory 'pd:120' with parent 'pm_genpd' already present!
    [    5.272227] hctosys: unable to open rtc device (rtc0)
    [    5.294005] ALSA device list:
    [    5.297007]   No soundcards found.
    [    5.301021] Waiting for root device /dev/mmcblk0p5...
    [    5.583780] mmc0: new ultra high speed DDR50 SDHC card at address 0001
    [    5.591097] mmcblk0: mmc0:0001 SD3.0 7.56 GiB
    [    5.616616]  mmcblk0: p1 p2 p3 p4 < p5 >
    [    5.854996] EXT4-fs (mmcblk0p5): mounted filesystem with ordered data mode. Opts: (null)
    [    5.863185] VFS: Mounted root (ext4 filesystem) on device 179:5.
    [    5.876644] devtmpfs: mounted
    [    5.880450] Freeing unused kernel memory: 1664K
    [    5.885061] Run /sbin/init as init process
    [    6.451438] systemd[1]: System time before build time, advancing clock.
    [    6.567487] NET: Registered protocol family 10
    [    6.573042] Segment Routing with IPv6
    [    6.624992] systemd[1]: systemd 241 running in system mode. (+PAM +AUDIT +SELINUX +IMA +APPARMOR +SMACK +SYSVINIT +UTMP +LIBCRYPTSETUP +GCRYPT +GNUTLS +ACL +XZ +LZ4 +SECCOMP +BLKID +ELFUTILS +KMOD -IDN2 +IDN -PCRE2 default-hierarchy=hybrid)
    [    6.650429] systemd[1]: Detected architecture arm64.
    
    Welcome to Debian GNU/Linux 10 (buster)!
    
    [    6.712857] systemd[1]: Set hostname to <xplat53>.
    [    7.070265] systemd[1]: File /lib/systemd/system/systemd-journald.service:12 configures an IP firewall (IPAddressDeny=any), but the local system does not support BPF/cgroup based firewalling.
    [    7.087343] systemd[1]: Proceeding WITHOUT firewalling in effect! (This warning is only shown for the first loaded unit using IP firewalling.)
    [    7.370203] random: systemd: uninitialized urandom read (16 bytes read)
    [    7.385194] systemd[1]: Condition check resulted in Arbitrary Executable File Formats File System Automount Point being skipped.
    [    7.396883] random: systemd: uninitialized urandom read (16 bytes read)
    [    7.403551] systemd[1]: Reached target Remote File Systems.
    [  OK  ] Reached target Remote File Systems.
    [    7.419858] random: systemd: uninitialized urandom read (16 bytes read)
    [    7.427126] systemd[1]: Listening on Journal Socket (/dev/log).
    [  OK  ] Listening on Journal Socket (/dev/log).
    [    7.469782] systemd[1]: Condition check resulted in Journal Audit Socket being skipped.
    [    7.478541] systemd[1]: Listening on udev Kernel Socket.
    [  OK  ] Listening on udev Kernel Socket.
    [  OK  ] Created slice system-getty.slice.
    [  OK  ] Started Dispatch Password …ts to Console Directory Watch.
    [  OK  ] Listening on udev Control Socket.
    [  OK  ] Created slice system-serial\x2dgetty.slice.
    [  OK  ] Listening on Journal Socket.
             Starting Create list of re…odes for the current kernel...
             Mounting Huge Pages File System...
             Mounting POSIX Message Queue File System...
             Starting Set the console keyboard layout...
             Starting udev Coldplug all Devices...
    [  OK  ] Listening on fsck to fsckd communication Socket.
             Starting Remount Root and Kernel File Systems...
    [  OK  ] Listening on initctl Compatibility Named Pipe.
             Mounting Kernel Debug File System...
    [  OK  ] Started Forward Password R…uests to Wall Directory Watch.
    [  OK  ] Reached target Paths.
    [  OK  ] Reached target Local Encrypted Volumes.
    [  OK  ] Created slice User and Session Slice.
    [  OK  ] Reached target Slices.
    [  OK  ] Listening on Syslog Socket.
             Starting Journal Service...
             Starting Load Kernel Modules...
    [  OK  ] Started Create list of req… nodes for the current kernel.
    [  OK  ] Mounted Huge Pages File System.
    [  OK  ] Mounted POSIX Message Queue File System.
    [  OK  ] Mounted Kernel Debug File System.
    [  OK  ] Started Load Kernel Modules.
             Starting Apply Kernel Variables...
             Mounting Kernel Configuration File System...
    [  OK  ] Mounted Kernel Configuration File System.
    [  OK  ] Started Journal Service.
    [  OK  ] Started Apply Kernel Variables.
    [  OK  ] Started Set the console keyboard layout.
    [  OK  ] Started udev Coldplug all Devices.
             Starting Helper to synchronize boot up for ifupdown...
    [    9.013173] EXT4-fs (mmcblk0p5): re-mounted. Opts: errors=remount-ro
    [  OK  ] Started Remount Root and Kernel File Systems.
             Starting Load/Save Random Seed...
             Starting Create System Users...
             Starting Flush Journal to Persistent Storage...
    [  OK  ] Started Load/Save Random Seed.
    [    9.145152] systemd-journald[188]: Received request to flush runtime journal from PID 1
    [  OK  ] Started Create System Users.
    [  OK  ] Started Flush Journal to Persistent Storage.
             Starting Create Static Device Nodes in /dev...
    [  OK  ] Started Create Static Device Nodes in /dev.
             Starting udev Kernel Device Manager...
    [  OK  ] Reached target Local File Systems (Pre).
    [  OK  ] Reached target Local File Systems.
             Starting Set console font and keymap...
             Starting Create Volatile Files and Directories...
    [  OK  ] Started Set console font and keymap.
    [  OK  ] Started udev Kernel Device Manager.
    [  OK  ] Started Create Volatile Files and Directories.
             Starting Network Time Synchronization...
             Starting Update UTMP about System Boot/Shutdown...
    [  OK  ] Started Update UTMP about System Boot/Shutdown.
    [  OK  ] Started Network Time Synchronization.
    [  OK  ] Found device /dev/ttyS2.
    [    9.882186] ti_am3359-tscadc 40200000.tscadc: Need atleast one channel.
    [    9.890461] ti_am3359-tscadc: probe of 40200000.tscadc failed with error -22
    [    9.912179] ti_am3359-tscadc 40210000.tscadc: Need atleast one channel.
    [    9.933363] ti_am3359-tscadc: probe of 40210000.tscadc failed with error -22
    [    9.949738] cal: Neither port is configured, no point in staying up
    [   10.196489] platform 41000000.r5f: configured R5F for remoteproc mode
    [   10.214281] platform 41000000.r5f: assigned reserved memory node r5f-dma-memory@a0000000
    [   10.225185] remoteproc remoteproc0: 41000000.r5f is available
    [   10.234124] remoteproc remoteproc0: Direct firmware load for am65x-mcu-r5f0_0-fw failed

    The issue may be related to our customer's custom board, so our customer wants to clear that the issue is not related to the silicon revision change.

    > I checked internally. The feedback is X6580BACD is a superset GP device.
    > That should be working with PG2.0 software. Thus either 7.0 or 7.1 SDK should work out of box for the above.

    Has TI validated that the SR2.1 device works fine with the latest SDK 7.1 pre-built image?

    Best regards,

    Daisuke

  • Hi Daisuke-san,

    As told earlier 7.3 SDK should have this validated. One more thing to try - can try below commands from u-boot prompt before boot Linux:

    env default -a
    saveenv

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply. Sorry for the late reply.

    The latest SDK7.3 has been released. So I will ask the same questions again.

    Does the latest SDK7.3 support PRUETH for SR2.1 in kernel and U-Boot?

    Is it validated that the SR2.1 device works fine with the latest SDK7.3 pre-built image?

    Our customer's issue may be related to their custom board, so our customer wants to clear that the issue is not related to the silicon revision change.

    Best regards,

    Daisuke

  • Hi Keerthy-san,

    Thank you for your great support through many threads.

    The release notes for SDK 7.3 do not clarify whether SR2.1 is supported.

    software-dl.ti.com/.../Release_Specific_Release_Notes.html

    Please give me an answer as soon as possible. Your prompt reply would be appreciated.

    Best regards,

    Daisuke

  • Hi Daisuke-san,

    TI has done the complete validation of the RTOS SDK on the SR2.1 - please see https://software-dl.ti.com/processor-sdk-rtos/esd/AM65X/07_03_00_09/exports/docs/processor_sdk_rtos_am65xx_07_03_00_09/docs/user_guide/release_notes_07_03_00_am65xx.html#hardware-support.

    The Linux SDK has been validated only on SR2.0 for the SDK 7.3. For the moment, please consider the validation of PRUETH to be on par between SR2.0 and SR2.1

    The PRUETH functionality works on both u-boot & Linux & has been verified on 2.0.
    If no other questions please click on verify answer.

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    Could you tell me the plans for future Linux SDK?

    When will future Linux SDK officially support SR2.1?

    When will future Linux SDKs officially support PRUETH for SR2.1 in kernel and U-Boot?

    Best regards,

    Daisuke

  • Hi Daisuke-san,

    I am checking with our SDK team on the exact question you have asked. I will get back to you as soon as i hear from them.

    Thanks for your patience,
    Keerthy

  • Hi Daisuke-san,

    The changes between SR 2.0 and 2.1 is quite minimal and limited to ICSS. It should be already working with 7.3 and it has been
    sanity tested. Future 8.x releases will also be sanity tested with 2.1.

    If no further questions please click on verify answer.

    Best Regards,
    Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    I understand that Linux SDK 7.3 has been sanity tested with SR 2.1.

    It is clearly stated that RTOS SDK 7.3 supports SR 2.1 as you mentioned.

    Is there a plan for future Linux SDK 8.x to officially (clearly stated) support SR 2.1?

    Our customer may wait for the future Linux SDK 8.x to be released for SR2.1.

    Best regards,

    Daisuke

  • Hi Daisuke-san,

    As mentioned 7.3 should also be working with 2.1. Is the customer facing issues with PRUETH on 7.3 SDK?
    If not tried then please let us know if that works.

    - Keerthy

  • Hi Keerthy-san,

    Thank you for your reply.

    I will suggest to our customer to try if their board boots successfully with SDK 7.3.

    > Is there a plan for future Linux SDK 8.x to officially (clearly stated) support SR 2.1?

    Could you give us some information about the future Linux SDK 8.x apart from this issue?

    Our customer wants to know when the future Linux SDK 8.x will be released to officially support SR2.1.

    Best regards,

    Daisuke

  • Daisuke-san,

    i checked with internal team & yes SDK 8.x will have official support for SR2.1.

    8.0 release is tentatively July end - August beginning.

    Please click on verify answer if no further questions.

    - Keerthy


  • Hi Keerthy-san,

    Thank you for your reply. I appreciate your support.

    Best regards,

    Daisuke