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.

J722SXH01EVM: u-boot device tree not found when building kernel

Part Number: J722SXH01EVM


Tool/software:

I am doing a custom Yocto build for the J722SXH01EVM eval board and trying to get the device booting from USB

I have replaced:

UBOOT_MACHINE = "j722s_evm_r5_defconfig"

with:

UBOOT_CONFIG = "j722s_evm_r5_usbmsc"
In my machine file, but when I do this linux-ti-staging-rt kernel fails during the do_deploy step because it can not find the device tree blob from the u-boot build.

The error message is:
+ install -m 0644 /home/matthewf/werk/opto22/build/meta-opto/builds/grv-epic-pr3/tmp-glibc/work/grv_epic_pr3-opto22-linux/linux-ti-staging-rt/6.1.119+gitAUTOINC+9e8992fb83-r0b/bui
ld/u-boot-grv-epic-pr3*.dtb /home/matthewf/werk/opto22/build/meta-opto/builds/grv-epic-pr3/tmp-glibc/work/grv_epic_pr3-opto22-linux/linux-ti-staging-rt/6.1.119+gitAUTOINC+9e8992fb
83-r0b/deploy-linux-ti-staging-rt/

install: cannot stat '/home/matthewf/werk/opto22/build/meta-opto/builds/grv-epic-pr3/tmp-glibc/work/grv_epic_pr3-opto22-linux/linux-ti-staging-rt/6.1.119+gitAUTOINC+9e8992fb83-r0b
/build/u-boot-grv-epic-pr3*.dtb'
: No such file or directory

How can I resolve this?

If I use "UBOOT_MACHINE = "j722s_evm_r5_defconfig", instead of UBOOT_CONFIG in the machine file, the build succeeds, but doesn't have the bits needed for USB boot.

 

  • Hi Matthew,

    It looks like it isn't building your relevant device tree blob.

    Can you use:

    UBOOT_MACHINE = "j722s_evm_r5_usbmsc"

    Best,
    Jared

  • Hi Matthew,

    Looking at the u-boot-mergeconfig.inc, there's handling for the uboot config fragments with UBOOT_CONFIG_FRAGMENTS variable.

    Can you try setting:

    UBOOT_CONFIG_FRAGMENTS:append = " j722s_evm_r5_usbmsc.config"

    The append may be excessive (instead of just setting the variable), but I did it just in case you have other config fragments.

    Leave the UBOOT_MACHINE as j722s_evm_r5_defconfig

    Best,
    Jared

  • Is there a way to prevent the u-boot build from generating a signed image for tiboot3.bin have it just generate a U-Boot legacy uImage?

  • Hi Matthew,

    Were you able to build with the j722s_evm_r5_usbmsc.config? If so, can you mark the thread as resolved?

    Is there a way to prevent the u-boot build from generating a signed image for tiboot3.bin have it just generate a U-Boot legacy uImage?

    Since this is an unrelated question, can you open another thread?

    Best,
    Jared

  • Hi Jared,

    I am actually not able to build with the j722s_evm_r5_usbmsc.config.

    I have two machine files, one for my regular machine type, and another with the -k3r5 extension:

    in the main machine file I have:
    UBOOT_MACHINE = "j722s_evm_a53_defconfig"  ( if I use UBOOT_MACHINE = "j722s_evm_r5_defconfig" in this file the build fails )
    in the k3r5 machine file I have:
    UBOOT_MACHINE = "j722s_evm_r5_defconfig"
    In my u-boot-ti-staging bbappend file I have a single line:
    UBOOT_CONFIG_FRAGMENTS:append = " j722s_evm_r5_usbmsc.config"

    This generates a build error during do_compile.

    If I remove that line from the bbappend file for u-boot-ti-staging, the build is successful.

  • Hi Matthew,

    Can you add the line to the specific machine configuration instead? I've tested it, and it built successfully.

    Specifically: meta-ti/meta-ti-bsp/conf/machine/j722s-evm-k3r5.conf

    Best,
    Jared