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.

AM620-Q1: Clarification on Memory Configurations and OSPI-NAND Detection Issue on AM62x LP Board

Part Number: AM620-Q1


Tool/software:

Hello Team,

I am working with the AM62x-LP evaluation board and have encountered some confusion regarding the flash memory interfaces supported and the configuration observed in U-Boot.

       1. Memory Interface Discrepancy:                                             

  •         On the TI AM62x-LP product page SK-AM62-LP Development kit | TI.com, in features list it mention that the flash interface supported Quad Serial Peripheral Interface (QSPI).
  •         In the AM62x-LP User Guide and schematic, the board provides a 512Mb OSPI0 flash interface, 
  •         and the interfacing table lists an eMMC (MTFC16GAPALBH-IT) along with a NAND flash device (16GB).

Could you please clarify the exact supported flash memory interface QSPI or OSPI NAND ? and configuration for the AM62x-LP?

Please provide the steps to access the OSPI-NAND and emmc-NAND from u-boot ?

         2. Issue with OSPI-NAND in U-Boot:

  • I have attached my U-Boot logs for reference. In the U-boot logs, Nand memory is showing as 0 MB 

    U-Boot 2023.04 (Oct 08 2024 - 12:51:44 +0530)

    SoC: AM62X SR1.0 HS-FS
    Model: Texas Instruments AM62x LP SK
    EEPROM not available at 80, trying to read at 81
    Board: AM62-LP-SKEVM rev E2
    DRAM: no bloblist found!2 GiB
    Core: 81 devices, 33 uclasses, devicetree: separate
    NAND: 0 MiB
    MMC: mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In: serial
    Out: serial
    Err: serial
    Net: eth0: ethernet@8000000port@1
    Hit any key to stop autoboot: 0

  • While trying with DFU Nand commands am getting an error as Device nand0 not found!

 Could you please help me resolve the issue and understand why the OSPI-NAND is not being detected in U-Boot?

=> dfu 0 nand 0
DFU entities configuration failed!
(partition table does not match dfu_alt_info?)
dfu - Device Firmware Upgrade

=> dfu 0 nand list
DFU entities configuration failed!
(partition table does not match dfu_alt_info?)
dfu - Device Firmware Upgrade

=> mtdparts
Device spi-nand0 not found!

Thanks & Regards,

Yashavanth Gowda

  • Could someone please provide insights on this issue? I haven't received a response for a few days.

  • U-Boot 2023.04 (Oct 08 2024 - 12:51:44 +0530)

    SoC: AM62X SR1.0 HS-FS
    Model: Texas Instruments AM62x LP SK
    EEPROM not available at 80, trying to read at 81
    Board: AM62-LP-SKEVM rev E2
    DRAM: no bloblist found!2 GiB
    Core: 81 devices, 33 uclasses, devicetree: separate
    NAND: 0 MiB

    Are you using the un-modified SDK image from SDK v9.2 as-is? And it shows NAND as 0 MiB?

    Can you try the latest AM62 SDK images (v10.x, see https://www.ti.com/tool/download/PROCESSOR-SDK-LINUX-AM62X/10.00.07.04) with U-Boot 2024.04. When I look at U-Boot I can see there's an OSPI NAND being defined and fully enabled.

    arch/arm/dts/k3-am62-lp-sk.dts- flash@0{
    arch/arm/dts/k3-am62-lp-sk.dts:         compatible = "spi-nand";
    arch/arm/dts/k3-am62-lp-sk.dts-         reg = <0x0>;
    arch/arm/dts/k3-am62-lp-sk.dts-         spi-tx-bus-width = <8>;
    arch/arm/dts/k3-am62-lp-sk.dts-         spi-rx-bus-width = <8>;
    arch/arm/dts/k3-am62-lp-sk.dts-         spi-max-frequency = <50000000>;
    arch/arm/dts/k3-am62-lp-sk.dts-         cdns,tshsl-ns = <60>;
    arch/arm/dts/k3-am62-lp-sk.dts-         cdns,tsd2d-ns = <60>;
    arch/arm/dts/k3-am62-lp-sk.dts-         cdns,tchsh-ns = <60>;
    arch/arm/dts/k3-am62-lp-sk.dts-         cdns,tslch-ns = <60>;
    arch/arm/dts/k3-am62-lp-sk.dts-         cdns,read-delay = <1>;
    arch/arm/dts/k3-am62-lp-sk.dts-         bootph-all;
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-         partitions {
    arch/arm/dts/k3-am62-lp-sk.dts-                 compatible = "fixed-partitions";
    arch/arm/dts/k3-am62-lp-sk.dts-                 #address-cells = <1>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 #size-cells = <1>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 bootph-all;
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-                 partition@0 {
    arch/arm/dts/k3-am62-lp-sk.dts:                         label = "ospi_nand.tiboot3";
    arch/arm/dts/k3-am62-lp-sk.dts-                         reg = <0x0 0x80000>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 };
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-                 partition@80000 {
    arch/arm/dts/k3-am62-lp-sk.dts:                         label = "ospi_nand.tispl";
    arch/arm/dts/k3-am62-lp-sk.dts-                         reg = <0x80000 0x200000>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 };
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-                 partition@280000 {
    arch/arm/dts/k3-am62-lp-sk.dts:                         label = "ospi_nand.u-boot";
    arch/arm/dts/k3-am62-lp-sk.dts-                         reg = <0x280000 0x400000>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 };
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-                 partition@680000 {
    arch/arm/dts/k3-am62-lp-sk.dts:                         label = "ospi_nand.env";
    arch/arm/dts/k3-am62-lp-sk.dts-                         reg = <0x680000 0x40000>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 };
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-                 partition@6c0000 {
    arch/arm/dts/k3-am62-lp-sk.dts:                         label = "ospi_nand.env.backup";
    arch/arm/dts/k3-am62-lp-sk.dts-                         reg = <0x6c0000 0x40000>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 };
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-                 partition@2000000 {
    arch/arm/dts/k3-am62-lp-sk.dts:                         label = "ospi_nand.rootfs";
    arch/arm/dts/k3-am62-lp-sk.dts-                         reg = <0x2000000 0x5fc0000>;
    arch/arm/dts/k3-am62-lp-sk.dts-                 };
    arch/arm/dts/k3-am62-lp-sk.dts-
    arch/arm/dts/k3-am62-lp-sk.dts-                 partition@7fc0000 {
    arch/arm/dts/k3-am62-lp-sk.dts:                         label = "ospi_nand.phypattern";
    arch/arm/dts/k3-am62-lp-sk.dts-                         reg = <0x7fc0000 0x40000>;
    arch/arm/dts/k3-am62-lp-sk.dts-                         bootph-all;
    arch/arm/dts/k3-am62-lp-sk.dts-                 };
    arch/arm/dts/k3-am62-lp-sk.dts-         };
    arch/arm/dts/k3-am62-lp-sk.dts- };
    arch/arm/dts/k3-am62-lp-sk.dts-};
    

    Regards, Andreas

  • Hello Andreas,

    I have tried with latest AM62 SDK(v10x) build the U-boot with default deconfig files below

    am62x_lpsk_r5_defconfig
    am62x_lpsk_a53_defconfig

    got the result same only & attached the logs

    U-Boot 2024.04 (Oct 17 2024 - 17:32:48 +0530)
     
    SoC:   AM62X SR1.0 HS-FS
    Model: Texas Instruments AM62x LP SK
    EEPROM not available at 0x50, trying to read at 0x51
    Board: AM62-LP-SKEVM rev E2
    DRAM:  2 GiB
    Core:  83 devices, 32 uclasses, devicetree: separate
    NAND:  0 MiB
    MMC:   mmc@fa10000: 0, mmc@fa00000: 1
    Loading Environment from nowhere... OK
    In:    serial
    Out:   serial
    Err:   serial
    Net:   eth0: ethernet@8000000port@1
    Hit any key to stop autoboot:  0

    Could you please help us to know, are we missing anywhere? Do we need to add or remove any configurations/component in deconfig files?

    Thanks & Regards,

    Yashavantha Gowda

  • Yashavantha,

    let me talk to my colleagues to see what should be expected here and get back to you.

    Regards, Andreas