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.

PROCESSOR-SDK-DRA8X-TDA4X: Customization guide for generating Linux Single system image.

Part Number: PROCESSOR-SDK-DRA8X-TDA4X

Hi TI,
We have a custom board using J721E SOC. We are able to boot it with some modifications in the device tree files. But the modified image wont boot on the TI EVK.

  • Is there any guide/documentation for customization that i can follow to achieve single bootable binary for both the platforms.
  • For the custom board we do have some gpio assigned for identifying the revisions. How to differentiate between TI EVK and other boards.
  • This is a useful to us. It help to quickly find if the issue is present on Custom hardware or on TI EVK. Also provides Test teams a reference on each of TI release against our board.

Best regards

Amit

  • Hi,

    Following is confusing.

    > We are able to boot it with some modifications in the device tree files. But the modified image wont boot on the TI EVK

    Can you state your problem in more details?

    What is failing, kernel, uboot, R5, A72, first stage, second stage?

    Regards,

    Nikhil D

  • Hi Nikhil,

    Power supplies to mmc are different in out platform. So we have made changes to the default dts board file from J721. So our build wont work as it is on the EVK and that is as expected.

    We want to make it possible to flash same system image package on both EVK and custom board. This is for application and test teams.

    Let me know if this is not clear to you.

    Best regards

    Amit

  • Hi,

    Have you done board bringup  for your custom board.

    Do you have a working uboot, kernel, etc

    What is failing on the custom board?

    Regards,

    Nikhil D

  • Nikhil,

    Nothing is failing. But i have 2 conflicting changes in same dts file. One is for EVK, other is for our board.

    I want some way to keep both the changes. Without rebuild need to boot EVK and Custom board with same image. How TI detects board variants is the question.

    Best regards

    Amit

  • Hi,

    Device tree is supposed to describe the hardware. If you have two different boards, you must use two different DTBs.

    You can modify the bootloader to select the right DTB file based on the detected board.

    The TI EVMs are programmed with an EEPROM connected over i2c which describes the boards.

    Based on the content, you know if the bootloader is running on TI EVM or the custom board.

    Regards,

    Nikhil D

  • Thanks Nikhil,

    I wanted the board description for TI EVM. Looks like custom board also has populated same data.

    Does the TI has any recommendation about what can be modified by OEM and what is constant in the struct ti_am6_eeprom that is seen in "board-support/u-boot-2019.01+gitAUTOINC+66126341c8-g66126341c8/board/ti/j721e/evm.c"

    Below is the data i see in the uboot.

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

    U-Boot SPL 2019.01-00002-ge8247ddc51-dirty (Apr 07 2020 - 09:15:28 +0530)
    SYSFW ABI: 2.9 (firmware rev 0x0013 '19.12.1-v2019.12a (Terrific Lla')
    Trying to boot from MMC2
    Loading Environment from MMC... *** Warning - No MMC card found, using default environment

    Remoteproc 2 started successfully
    Starting ATF on ARM64 core...

    NOTICE:  BL31: v2.2(release):ti2019.05-rc1
    NOTICE:  BL31: Built : 09:32:00, Feb 17 2020
    I/TC:
    I/TC: OP-TEE version: ti2019.05-rc1-dev (gcc version 8.3.0 (GNU Toolchain for the A-profile Architecture 8.3-2019.03 (arm-rel-8.36))) #1 Mon Feb 17 09:40:16 UTC 2020 aarch64
    I/TC: Initialized

    U-Boot SPL 2019.01-00002-ge8247ddc51-dirty (Apr 07 2020 - 09:15:15 +0530)
    Detected: J7X-BASE-CPB rev E3
    Read from EEPROM
    Trying to boot from MMC2
    i2c_write: error waiting for data ACK (status=0x116)
    Error reading output register


    U-Boot 2019.01-00002-ge8247ddc51-dirty (Apr 07 2020 - 09:15:15 +0530)

    SoC:   J721E PG 1.0
    Model: Texas Instruments K3 J721E SoC
    Board: J721EX-PM2-SOM rev E7

  • Hi,

    You can refer to the format of the EEPROM on the J7 boards at https://git.ti.com/cgit/ti-u-boot/ti-u-boot/tree/board/ti/common/board_detect.h#n247

    Most important field in this is the board  name.

    You should use different names and based on this, add support for board_detect in your u-boot code.

    Regards,

    Nikhil D