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.

TDA4VM: How to transplant cypress's s28hs512t (OSPI) based on the SDK version 7.2 of the j721e platform

Part Number: TDA4VM

Hi,

How to transplant cypress's s28hs512t (OSPI) based on the SDK version 7.2 of the j721e platform, is there any patch for me? thanks

BR,

Jordon

  • Hi Jordon,

    I recommend going through this FAQ:

    https://e2e.ti.com/support/processors-group/processors/f/processors-forum/946418/faq-tda4vm-is-there-a-guide-to-choosing-the-right-ospi-flash-parts-that-are-supported-on-jacinto-7

    So that is supported. What do you mean by transplant? Are you trying to use a different flash part?

    - Keerthy

  • Hi Keerthy,

    I am using the J721E platform, and the OSPI model supported by default is MT35XU512. But what should I do if OSPI is changed to S28HS512T? My SDK is based on J721E version 7.2.

    The official information tells me that the J7200 platform supports S28HS512T by default. I now port part of the driver to the J721E SDK. Now I can erase and write S28HS512T, and I did a read and write test to verify that the written file and the data I read out are Consistent. But after I set it to OSPI startup, no information was printed. How can I do it? Thank you!

    BR,

    Jordon

  • Hi Keerthy,

    Based on J721E Linux 7.2 SDK, I modified the partition information to adapt to S28HS512T, the information is as follows:

    First boot from the TF card, execute the following command:
    flashcp -v tiboot3.bin /dev/mtd0
    flashcp -v tispl.bin /dev/mtd1
    flashcp -v u-boot.img /dev/mtd2
    flashcp -v sysfw.itb /dev/mtd5
    flashcp -v nor_spi_patterns.bin /dev/mtd7
    Then set the startup mode to OSPI, without any printing information. (I also tried the SPI startup method, because FAE told me that the room code of TDA4 may not support S28HS512T, and the last few letters of our chip are BALF)
    BR,
    Jordon
  • Hi Jordan,

    Can you follow: https://software-dl.ti.com/jacinto7/esd/processor-sdk-linux-jacinto7/08_00_00_08/exports/docs/linux/Foundational_Components/U-Boot/UG-QSPI.html

    Section: 

    3.1.1.7.1. AM654/J721E Support



    Download the phy calibration pattern from the above link as mentioned in the snapshot below:

    Then you need to flash the phy calibration pattern:

    Note that phy calibration pattern is at 0x3fc0000 for the S28HS512T part.

    Could you try and let me know if the OSPI boot works for you?

    - Keerthy

  • Hi Keerthy,

    You can see that I have set the starting address of the pattern partition(ospi.phypattern) to 0x3fc0000, and I did it according to the user manual. My problem is that I have burned the file to the partition, but there is no print information after I set it to OSPI boot mode.

    We need your help to confirm whether the room code of the chip we got (XJ721EGBALF) supports S28HS512T? We also tried the SPI boot method, but did not start successfully.

    BR,

    Jordon

  • Hi Jordon,

    I checked with OSPI expert. The S28HS512T flash part is only supported on silicon revision ES1.1 Silicon for J721e. Can you confirm the
    Silicon revision of your part.

    You can easily check that from your U-Boot logs like below:

    U-Boot 2021.01-00002-gf2b2a890f8 (Sep 16 2021 - 17:56:09 +0530)

    SoC: J721E SR1.0
    Model: Texas Instruments K3 J721E SoC
    Board: J721EX-PM2-SOM rev E6
    DRAM: 4 GiB
    Flash: 0 Bytes

     Also S28HS512T  part works with 8.0 SDK on ES1.1 silicon in xSPI boot mode:

    DIP Switch settings:

    SW8: 10000010
    SW9: 00110000
    SW3: 0111001010

    I confirm that J721e SR1.0 will not work with S28HS512T  both in SPI and xSPI mode.

    Best Regards,
    Keerthy

     

  • Hi Keerthy,

    After I boot from the TF card, u-boot prints the following information:

    -----------------------------------------------------

    SoC: J721E SR2.0
    Model: Texas Instruments K3 J721E SoC
    Reading on-board EEPROM at 0x50 failed 1
    Board: J721EX-PM1-SOM rev E2
    DRAM: 4 GiB
    not found for dev hbmc-mux
    Flash: 0 Bytes
    MMC: sdhci@4f80000: 0, sdhci@4fb0000: 1
    Loading Environment from MMC... OK
    In: serial@2800000
    Out: serial@2800000
    Err: serial@2800000
    Reading on-board EEPROM at 0x50 failed 1
    Net: Could not get PHY for ethernet@46000000: addr 0
    phy_connect() failed
    No ethernet found.

    ---------------------------------------------------------

    The actual situation is that J721e SR2.0 cannot work with S28HS512T  both in OSPI and xSPI mode, no information is printed. 

    But J721e SR2.0 can work with S28HS512T in SPI mode: 

    After about ten seconds, the print information is as follows:

    Still did not start successfully.

    Do you have a patch about J721e SR2.0 work with S28HS512T based on SDK 7.2?  I also tried to replace tiboot3.bin of sdk 8.0, but it still did not start successfully.

    BR,

    Jordon

  • Hi Jordon,

    I recommend taking all the boot binaries from SDK 8.0 i.e tiboot3.bin, sysfw.itb, tispl.bin, u-boot.img.

    Can you try that with xSPI boot mode-

    DIP Switch settings:

    SW8: 10000010
    SW9: 00110000
    SW3: 0111001010

    Let me know if that works.

    Best Regards,
    Keerthy

  • Hi Keerthy,

    I have taked all the boot binaries from SDK 8.0 i.e tiboot3.bin, sysfw.itb, tispl, u-boot.img.

    I tried the boot method of xspi and spi, the log prints the same information, as follows:

    ---------------------------------------------------------------------------------------------------
    U-Boot SPL 2021.01-g53e79d0e89 (Aug 04 2021 - 23:32:00 +0000)
    Model: Texas Instruments K3 J721E SoC
    EEPROM not available at 0x50, trying to read at 0x51
    Reading on-board EEPROM at 0x51 failed 1
    Board: J721EX-PM1-SOM rev E2
    SYSFW ABI: 3.1 (firmware rev 0x0015 '21.5.0--v2021.05 (Terrific Llam')
    EEPROM not available at 0x50, trying to read at 0x51
    Reading on-board EEPROM at 0x51 failed 1
    Trying to boot from SPI
    Loading rproc fw image from device 3 not supported!
    Starting ATF on ARM64 core...

    ti_sci dmsc@44083000: ti_sci_get_response: Message receive failed. ret = -110
    ti_sci dmsc@44083000: Mbox send fail -110
    Failed to put device 262 (-110)

    resetting ...
    ti_sci dmsc@44083000: ti_sci_get_response: Message receive failed. ret = -110
    ti_sci dmsc@44083000: Mbox send fail -110
    ti-sci-sysreset sysreset-controller: ti_sci_sysreset_request: reboot_device failed (-110)
    ti_sci dmsc@44083000: ti_sci_get_response: Message receive failed. ret = -110
    ti_sci dmsc@44083000: Mbox send fail -110
    ti-sci-sysreset sysreset-controller: ti_sci_sysreset_request: reboot_device failed (-110)
    ti_sci dmsc@44083000: ti_sci_get_response: Message receive failed. ret = -110
    ti_sci dmsc@44083000: Mbox send fail -110
    ti-sci-sysreset sysreset-controller: ti_sci_sysreset_request: reboot_device failed (-110)
    System reset not supported on this platform
    ### ERROR ### Please RESET the board ###

    --------------------------------------------------------------------------------------------------

    Have you verified the J721E+S28 solution successfully with the 8.0 SDK?  Can you show me the printed information after your successful boot? 

    BR,

    Jordon

  • Hi Jordon,

    The default TI EVM comes with the Micron flash. I will try to check with other HW & get back to you. It will take some time.

    - Keerthy

  • Hi Jordon,

    Check out: https://www.ti.com/lit/ug/spruj21a/spruj21a.pdf?ts=1633656398436&ref_url=https%253A%252F%252Fwww.google.com%252F

    The SK-TDA4VM has the S28 flash part. It is functional with SDK 8.0.

    The U-Boot device tree for SK-TDA4VM can be found here:

    cd $PSDKLA/board-support/u-boot-2021.01+gitAUTOINC+53e79d0e89-g53e79d0e89

    R5 SPL DTS: arch/arm/dts/k3-j721e-r5-eaik.dts
    A72 SPL/U-Boot: arch/arm/dts/k3-j721e-eaik.dts

    Check out the ospi0 node in arch/arm/dts/k3-j721e-r5-eaik.dts:

    Fullscreen
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    &ospi0 {
    pinctrl-names = "default";
    pinctrl-0 = <&mcu_fss0_ospi0_pins_default>;
    reg = <0x0 0x47040000 0x0 0x100>,
    <0x0 0x50000000 0x0 0x8000000>;
    flash@0{
    compatible = "jedec,spi-nor";
    reg = <0x0>;
    spi-tx-bus-width = <8>;
    spi-rx-bus-width = <8>;
    spi-max-frequency = <25000000>;
    cdns,tshsl-ns = <60>;
    cdns,tsd2d-ns = <60>;
    cdns,tchsh-ns = <60>;
    cdns,tslch-ns = <60>;
    cdns,read-delay = <4>;
    cdns,phy-mode;
    #address-cells = <1>;
    #size-cells = <1>;
    XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX


    Similarly checkout ospi0 node in  arch/arm/dts/k3-j721e-eaik.dts

    This is working combination with S28 + J721E & the support came only in SDK 8.0.

    Best Regards,
    Keerthy