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-AM62X: [AM62X] How to add custom machine name in Yocto build

Part Number: PROCESSOR-SDK-AM62X
Other Parts Discussed in Thread: AM69

HI Ti ,

Working on AM62X ,SDK_09_02_01_09 .

Could you please help me how to configure my custom machine name in yocto build .

What are the files are required to change machine name so that image can be built with my custom name .

i made below changes 

  • yocto_Workspace/tisdk/sources/meta-ti/meta-ti-bsp/conf/machine/am62xx-evm.conf   , here i created file am62xx-custom.conf and copied the content of am62xx-evm.conf file
  • MACHINE NAME set as am62xx-custom  in build/conf/local.conf 
  • what shoud i write COMPATIBLE MACHINE in Yocto_Workspace/tisdk/sources/meta-ti/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc ? COMPATIBLE_MACHINE = "ti-soc | am62xx-custom"    ?

Getting below compilation issues :

ERROR: OE-core's config sanity checker detected a potential misconfiguration.
Either fix the cause of this error or at your own risk disable the checker (see sanity.conf).
Following is the list of potential problems / advisories:

MACHINE=am62xx-custom-k3r5 is invalid. Please set a valid MACHINE in your local.conf, environment or other configuration file.

Please suggest in any where should i change the machine name ?

Thanking you in advance 

Thanks,

Naresh

  • Hi ,

    Any update on this ?

    Thanks,

    Naresh

  • Hi Naresh,

    The best is probably for me to create an example on how to add a custom machine in the context of our SDK v9.x but I'm on business travel all week so there isn't much time, so it will likely not be until next week the earliest before I can work on this. In the meantime I'd recommend you stick with customizing a provided machine.

    Regards, Andreas

  • Sure Andreas ,

    Thanking you. 

    BR,

    Naresh

  • Hi Andreas ,

    Below changes i was done for custom machine name build .

    • build/conf/local.conf

                            MACHINE ?= "am62xx-custom"

    • sources/meta-ti/meta-ti-bsp/recipes-bsp/u-boot/u-boot-ti.inc  , ::: Here i didnt change anything.
                  COMPATIBLE_MACHINE = "ti-soc"

           created below 2 files  (am62xx-custom.conf , am62xx-custom-k3r5.conf)

    • sources/meta-ti/meta-ti-bsp/conf/machine/am62xx-custom.conf
    • sources/meta-ti/meta-ti-bsp/conf/machine/am62xx-custom-k3r5.conf

     

    • sources/meta-ti/meta-ti-bsp/recipes-bsp/u-boot/ti-extras.inc
                   COMPATIBLE_MACHINE = "am62xx-custom"
    • sources/meta-ti/meta-ti-bsp/conf/machine/am62xx-evm-k3r5.conf
                   SYSFW_CONFIG = "custom"

    After above changes , i tried to build the yocto , custom images are generated at  " tisdk/build/arago-tmp-default-glibc/deploy/images/am62xx-custom" but getting ti-sci firmware issue as firmware is not generating.

    Please find below ti-sci firmware ERROR logs.

    ERROR: mc:k3r5:ti-sci-fw-08.06.04-r4.0.psdk1 do_deploy: ExecutionError('/home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/temp/run.do_deploy.715230', 1, None, None)
    ERROR: Logfile of failure stored in: /home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/temp/log.do_deploy.715230
    Log data follows:
    | DEBUG: Executing python function sstate_task_prefunc
    | DEBUG: Python function sstate_task_prefunc finished
    | DEBUG: Executing shell function do_deploy
    | install: cannot stat '/home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/git/ti-sysfw/ti-sci-firmware-am62x-*.bin': No such file or directory
    | WARNING: /home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/temp/run.do_deploy.715230:142 exit 1 from 'install -m 644 /home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/git/ti-sysfw/ti-sci-firmware-am62x-*.bin /home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/deploy-ti-sci-fw/'
    | WARNING: Backtrace (BB generated script):
    | 	#1: do_deploy, /home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/temp/run.do_deploy.715230, line 142
    | 	#2: main, /home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/build/arago-tmp-default-glibc/work/am62xx_custom_k3r5-oe-linux-gnueabi/ti-sci-fw/08.06.04-r4.0.psdk1/temp/run.do_deploy.715230, line 146
    ERROR: Task (mc:k3r5:/home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/sources/meta-ti/meta-ti-bsp/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bb:do_deploy) failed with exit code '1'
    NOTE: Tasks Summary: Attempted 8069 tasks of which 8068 didn't need to be rerun and 1 failed.
    NOTE: Writing buildhistory
    NOTE: Writing buildhistory took: 2 seconds
    NOTE: Writing buildhistory
    NOTE: Writing buildhistory took: 2 seconds
     
    Summary: 1 task failed:
      mc:k3r5:/home/test/projects/OTOTRAK/Yocto_Workspace/tisdk/sources/meta-ti/meta-ti-bsp/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bb:do_deploy
    Summary: There was 1 WARNING message.
    Summary: There was 1 ERROR message, returning a non-zero exit code.

    Please correct me if my above changes are wrong for custom machine name build  ?

    Thanks, Naresh

  • Hi Naresh,

    good to see you are still trying to make some progress here by yourself. As stated earlier I'm out of office this week so the earliest I can look into this in more detail is next week. Thanks for your patience.

    Regards, Andreas

  • Sure , ThankQ so much  Andreas . 

    Kindly update once you are back to work 

    Br,Naresh

  • Hi Andreas, 

    If possbile , could you please update on this today .

    Thanks for supporting .

    BR,

    Naresh

  • Hi Naresh,

    I started looking into this. Should have some steps tomorrow if things go well. Stay tuned.

    Regards, Andreas

  • SUre Andreas ,

    Thank you for Quick response .

    Br, Naresh

  • Hi Naresh,

    I was able to setup a new am62xx-custom MACHINE as follows...

    # Changes to 'meta-ti'
    a0797059@dasso:~/tisdk/am62xx-evm/sources (dev)
    $ git -C meta-ti diff --cached
    diff --git a/meta-ti-bsp/conf/machine/am62xx-custom-k3r5.conf b/meta-ti-bsp/conf/machine/am62xx-custom-k3r5.conf
    new file mode 100644
    index 00000000..f48ff06b
    --- /dev/null
    +++ b/meta-ti-bsp/conf/machine/am62xx-custom-k3r5.conf
    @@ -0,0 +1,12 @@
    +#@TYPE: Machine
    +#@NAME: AM62XX Custom Board (R5F)
    +#@DESCRIPTION: Machine configuration for custom AM62XX board (R5F core)
    +
    +require conf/machine/include/k3r5.inc
    +require conf/machine/include/ti-extras.inc
    +
    +SYSFW_SOC = "am62x"
    +SYSFW_CONFIG = "evm"
    +SYSFW_SUFFIX = "hs-fs"
    +
    +UBOOT_MACHINE = "am62x_evm_r5_defconfig"
    diff --git a/meta-ti-bsp/conf/machine/am62xx-custom.conf b/meta-ti-bsp/conf/machine/am62xx-custom.conf
    new file mode 100644
    index 00000000..a829cb91
    --- /dev/null
    +++ b/meta-ti-bsp/conf/machine/am62xx-custom.conf
    @@ -0,0 +1,12 @@
    +#@TYPE: Machine
    +#@NAME: AM62XX Custom Board
    +#@DESCRIPTION: Machine configuration for custom AM62XX board
    +
    +require conf/machine/include/am62xx.inc
    +require conf/machine/include/ti-extras.inc
    +
    +KERNEL_DEVICETREE = " \
    +    ti/k3-am625-custom.dtb \
    +"
    +
    +UBOOT_MACHINE = "am62x_evm_a53_defconfig"
    
    
    # Changes to 'meta-tisdk'
    a0797059@dasso:~/tisdk/am62xx-evm/sources (dev)
    $ git -C meta-tisdk/ diff
    diff --git a/recipes-core/images/tisdk-core-bundle.bbappend b/recipes-core/images/tisdk-core-bundle.bbappend
    index 4f2e42f..2890173 100644
    --- a/recipes-core/images/tisdk-core-bundle.bbappend
    +++ b/recipes-core/images/tisdk-core-bundle.bbappend
    @@ -31,6 +31,7 @@ DTB_FILTER:j721s2 = "j721s2\|am68\|fpdlink"
     DTB_FILTER:j784s4 = "j784s4\|am69\|fpdlink"
     DTB_FILTER:j722s = "j722s\|fpdlink"
     DTB_FILTER:am65xx = "k3-am654"
    +DTB_FILTER:am62xx-custom = "k3-am625"
     DTB_FILTER:am62xx-evm = "k3-am625"
     DTB_FILTER:am62xx-lp-evm = "k3-am62-lp\|k3-am625-sk"
     DTB_FILTER:am62xxsip-evm = "k3-am625"
    

    ...and with this do a successful build of the tisdk-base-image target...

    a0797059@dasso:~/tisdk/am62xx-evm/build (dev)
    $ MACHINE=am62xx-custom bitbake -k tisdk-base-image
    ....
    ....
    NOTE: Tasks Summary: Attempted 6176 tasks of which 5607 didn't need to be rerun and all succeeded.
    NOTE: Writing buildhistory
    NOTE: Writing buildhistory took: 4 seconds
    NOTE: Writing buildhistory
    NOTE: Writing buildhistory took: 3 seconds
    
    Summary: There were 10 WARNING messages.

    ...generating the expected output images....

    a0797059@dasso:~/tisdk/am62xx-evm/build (dev)
    $ ll deploy-ti/images/am62xx-custom/*wic*
    -rw-r--r-- 2 a0797059 a0797059      3392 May 21 15:42 deploy-ti/images/am62xx-custom/tisdk-base-image-am62xx-custom-20240521203049.rootfs.wic.bmap
    -rw-r--r-- 2 a0797059 a0797059 109402376 May 21 15:42 deploy-ti/images/am62xx-custom/tisdk-base-image-am62xx-custom-20240521203049.rootfs.wic.xz
    lrwxrwxrwx 2 a0797059 a0797059        61 May 21 15:42 deploy-ti/images/am62xx-custom/tisdk-base-image-am62xx-custom.wic.bmap -> tisdk-base-image-am62xx-custom-20240521203049.rootfs.wic.bmap
    lrwxrwxrwx 2 a0797059 a0797059        59 May 21 15:42 deploy-ti/images/am62xx-custom/tisdk-base-image-am62xx-custom.wic.xz -> tisdk-base-image-am62xx-custom-20240521203049.rootfs.wic.xz

    ...and booting the image without any issues. Note how the MACHINE name propagated into the command prompt.

     _____                    _____           _         _
    |  _  |___ ___ ___ ___   |  _  |___ ___  |_|___ ___| |_
    |     |  _| .'| . | . |  |   __|  _| . | | | -_|  _|  _|
    |__|__|_| |__,|_  |___|  |__|  |_| |___|_| |___|___|_|
                  |___|                    |___|
    
    am62xx-custom login:
    root@am62xx-custom:~#
    root@am62xx-custom:~#

    Regards, Andreas

  • Hi Andreas,

    Thank you so much for your support and quick response.

    /tisdk/sources/meta-processor-sdk/recipes-core/images$ vim  tisdk-core-bundle.bbappend ; Here, in this file it doesnot have such information which you have mentoined below

    DTB_FILTER:j784s4 = "j784s4\|am69\|fpdlink"
    DTB_FILTER:j722s = "j722s\|fpdlink"
    DTB_FILTER:am65xx = "k3-am654"
    DTB_FILTER:am62xx-evm = "k3-am625"
    DTB_FILTER:am62xx-lp-evm = "k3-am62-lp\|k3-am625-sk"
    DTB_FILTER:am62xxsip-evm = "k3-am625"

    tisdk-core-bundle.bbappend

    PR:append = ".psdk3"
    
    DEPLOY_IMAGES_NAME:append:am64xx-evm = " \
        tiboot3-am64x_sr2-hs-fs-evm.bin \
        tiboot3-am64x_sr2-hs-evm.bin \
        tiboot3-am64x-gp-evm.bin \
        ti-sci-firmware-am64x_sr2-hs-fs-cert.bin \
        ti-sci-firmware-am64x_sr2-hs-fs-enc.bin \
        ti-sci-firmware-am64x_sr2-hs-cert.bin \
        ti-sci-firmware-am64x_sr2-hs-enc.bin \
        fitImage \
        fitImage-its-am64xx-evm \
        wificfg \
    "
    
    DEPLOY_IMAGES_NAME:append:am62xx-evm = " \
        tiboot3-am62x-hs-fs-evm.bin \
        tiboot3-am62x-hs-evm.bin \
        tiboot3-am62x-gp-evm.bin \
        ti-fs-firmware-am62x-hs-fs-enc.bin \
        ti-fs-firmware-am62x-hs-fs-cert.bin \
        ti-fs-firmware-am62x-hs-enc.bin \
        ti-fs-firmware-am62x-hs-cert.bin \
        ti-fs-firmware-am62x-gp.bin \
        ipc_echo_testb_mcu1_0_release_strip.xer5f \
        fitImage \
        fitImage-its-am62xx-evm \
        wificfg \
    "
    
    DEPLOY_IMAGES_NAME:append:am62xx-lp-evm = " \
        tiboot3-am62x-hs-evm.bin \
        ti-fs-firmware-am62x-hs-enc.bin \
        ti-fs-firmware-am62x-hs-cert.bin \
        ti-fs-firmware-am62x-hs-fs-enc.bin \
        ti-fs-firmware-am62x-hs-fs-cert.bin \
        ti-fs-firmware-am62x-gp.bin \
        ipc_echo_testb_mcu1_0_release_strip.xer5f \
        fitImage \
        fitImage-its-am62xx-lp-evm \
        wificfg \
    "
    
    DEPLOY_IMAGES_NAME:append:am65xx-evm = " \
        tiboot3.bin \
        sysfw-am65x_sr2-evm.itb \
        sysfw-am65x-evm.itb \
        ti-sci-firmware-am65x_sr2-gp.bin \
    "
    ....................................................
    .....................................................
    ....................................................
    etc

    But here in arago path "meta-arago/meta-arago-distro/recipes-core/images/tisdk-core-bundle.inc " having such info, please find below.

    # This include is for the common setting used to build TISDK images.  These images
    # include both host and target side content.
    LICENSE = "MIT"
    
    IMAGE_FSTYPES = "tar.xz"
    IMAGE_NAME_SUFFIX = ""
    
    inherit tisdk-bundle
    
    COMPATIBLE_MACHINE = "omapl138|ti33x|ti43x|omap-a15|k3"
    
    # List of packages to remove from the host package.  This is usually due to
    # licensing issues and unneeded dependencies.
    HOST_CLEANUP_PACKAGES = ""
    TOOLCHAIN_CLEANUP_PACKAGES = "libgnutls-dev libgnutls-extra26 libgnutls-openssl27 libtasn1-dev"
    
    # Set DTB filters for each machine.  Use "unknown" by default to avoid
    # picking up DTB files for devices with no DTB support.
    DTB_FILTER = "unknown"
    DTB_FILTER:ti33x = "am335x"
    DTB_FILTER:dra7xx-evm = "dra7"
    DTB_FILTER:am57xx-evm = "am57xx"
    DTB_FILTER:am57xx-hs-evm = "${DTB_FILTER:am57xx-evm}"
    DTB_FILTER:ti43x = "am43"
    DTB_FILTER:omapl138 = "da850"
    DTB_FILTER:am65xx = "am65"
    DTB_FILTER:j721e = "j721e"
    DTB_FILTER:j7200 = "j7200"
    DTB_FILTER:j721s2 = "j721s2"
    
    # List of target side images to build for the SDK
    TARGET_IMAGES = "tisdk-base-image tisdk-default-image tisdk-thinlinux-image tisdk-bootstrap-image"
    
    TISDK_TOOLCHAIN = "${@bb.utils.contains('DISTRO_FEATURES','opengl','meta-toolchain-arago-tisdk','meta-toolchain-arago-tisdk-server',d)}"
    TOOLCHAIN_SUFFIX = "${@bb.utils.contains('DISTRO_FEATURES','opengl','-tisdk','-tisdk-server',d)}"
    
    IMAGE_INSTALL = "\
        packagegroup-arago-tisdk-amsdk-sdk-host \
    

    Only below layaers avaible in source path 

    Yocto_Workspace/tisdk/sources$ ls
    bitbake meta-arago meta-arm meta-edgeai meta-openembedded meta-processor-sdk meta-qt5 meta-ti meta-virtualization oe-core

    Kindly help me on this .

    BR, Naresh

  • Hi Naresh,

    My instructions/steps should apply on a fresh installation of our SDK v9.2 instructions as per https://software-dl.ti.com/processor-sdk-linux/esd/AM62X/09_02_01_09/exports/docs/linux/Overview_Building_the_SDK.html

    I see in your logs some references to older SDK v8.6 items, and perhaps you have some additional customizations or layer mix/matching going on that is not apparent. Please do a clean setup of SDK v9.2 and re-try.

    Also, in case you are using SDK v8.x, I've seen people make it work but it is a ton of work/headache customizing the machine name in this context due to lack of proper abstraction between MACHINE and SOC items, so this is not something I'd recommend doing as it cannot be done cleanly in a simple fashion. Also this being an older SDK it is not something we can support here with a ton of extra effort in the forum. In just a few months we'll be releasing SDK v10 so you should really be on 9.2 to at least to not fall too far behind here.

    Regards, Andreas

  • Hi Andreas,

    Got it.

    Actually, i have done this activity on fresh build (SDK_09_00_00_03).

    And i didn't add any patches from SDK_08_06_04. Even i am getting firmware issues.

    Even if i am not applying any patches, just adding changes which mentioned then also getting firmware issue on SDK_09_00_0003.

    But i was compiled  the yocto build successfully with custom machine name changes  on  SDK_09_02_01_09.  

    Could you please help  me  how  to change custom machine name in SDK_09_00_00_03  and build it  ? do we need any extra changes required to build SDK_09_00_00_03 ?

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

    SDK_09_00_00_03 has Linux kernel 6.1.33 (actually i made BSP changes in 6.1.33 linux kernel)

    SDK_09_02_01_09 has Linux kernel 6.1.80 

    Should I apply Linux kernel 6.1.33 patches to SDK_09_02_01_09(Linux kernel: 6.1.80) Yocto build? or any issues will Ariases?

    Thanks, Naresh

  • Actually, i have done this activity on fresh build (SDK_09_00_00_03).

    Ah ok.

    And i didn't add any patches from SDK_08_06_04. Even i am getting firmware issues.

    I tried the 9.0 build, and saw it pulls in v8.6 firmware, I didn't know that but this explains the logs.

    But i was compiled  the yocto build successfully with custom machine name changes  on  SDK_09_02_01_09.  

    Great!! You should really be using SDK v9.2, the SDK v9.0 is much less full-featured and robust, I would strongly recommend against using it.

    As for SDK v9.0, when I tried my changes, I was able to re-create the issue you saw. But it was easily fixable using some `git grep`  searches -  please always try this in case of any Yocto issues. Then, see attached a diff off all my Yocto source folders based off the SDK v9.0 sources that will allow you do build using MACHINE=am62xx-custom.

    SDK_09_00_00_03 has Linux kernel 6.1.33 (actually i made BSP changes in 6.1.33 linux kernel)

    SDK_09_02_01_09 has Linux kernel 6.1.80 

    Should I apply Linux kernel 6.1.33 patches to SDK_09_02_01_09(Linux kernel: 6.1.80) Yocto build? or any issues will Ariases?

    Don't mix any of that. Please use SDK v9.2 as a base for any of your customizations.

    Regards, Andreas

    8284.diff.txt
    Entering bitbake/...
    Entering meta-arago/...
    Entering meta-arm/...
    Entering meta-edgeai/...
    Entering meta-openembedded/...
    Entering meta-processor-sdk/...
    diff --git a/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bbappend b/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bbappend
    index 3144cce8..b61c7633 100644
    --- a/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bbappend
    +++ b/recipes-bsp/ti-sci-fw/ti-sci-fw_git.bbappend
    @@ -5,6 +5,8 @@ SYSFW_SOC ?= "unknown"
     SYSFW_PREFIX = "sci"
     SYSFW_PREFIX:am62xx-evm = "fs"
     SYSFW_PREFIX:am62xx-evm-k3r5 = "fs"
    +SYSFW_PREFIX:am62xx-custom = "fs"
    +SYSFW_PREFIX:am62xx-custom-k3r5 = "fs"
     SYSFW_PREFIX:am62xx-lp-evm = "fs"
     SYSFW_PREFIX:am62xx-lp-evm-k3r5 = "fs"
     SYSFW_PREFIX:am62axx-evm = "fs"
    diff --git a/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts_%.bbappend b/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts_%.bbappend
    index c01d773c..b4d66e9c 100644
    --- a/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts_%.bbappend
    +++ b/recipes-connectivity/wl18xx-target-scripts/wl18xx-target-scripts_%.bbappend
    @@ -12,6 +12,10 @@ SRC_URI:append:am62xx-evm = " \
         file://0002-Customize-wpa_supplicant.conf-for-am62xx-sk-wifi-oob.patch \
     "
     
    +SRC_URI:append:am62xx-custom = " \
    +    file://0001-Customize-hostapd.conf-for-am62xx-sk-wifi-oob-experi.patch \
    +    file://0002-Customize-wpa_supplicant.conf-for-am62xx-sk-wifi-oob.patch \
    +"
     
     SRC_URI:append:am62xx-lp-evm = " \
         file://0001-Customize-hostapd.conf-for-am62xx-sk-wifi-oob-experi.patch \
    diff --git a/recipes-core/images/tisdk-core-bundle.bbappend b/recipes-core/images/tisdk-core-bundle.bbappend
    index c3f8ba9e..28ee4e93 100644
    --- a/recipes-core/images/tisdk-core-bundle.bbappend
    +++ b/recipes-core/images/tisdk-core-bundle.bbappend
    @@ -28,6 +28,21 @@ DEPLOY_IMAGES_NAME:append:am62xx-evm = " \
         wificfg \
     "
     
    +DEPLOY_IMAGES_NAME:append:am62xx-custom = " \
    +    tiboot3-am62x-hs-fs-evm.bin \
    +    tiboot3-am62x-hs-evm.bin \
    +    tiboot3-am62x-gp-evm.bin \
    +    ti-fs-firmware-am62x-hs-fs-enc.bin \
    +    ti-fs-firmware-am62x-hs-fs-cert.bin \
    +    ti-fs-firmware-am62x-hs-enc.bin \
    +    ti-fs-firmware-am62x-hs-cert.bin \
    +    ti-fs-firmware-am62x-gp.bin \
    +    ipc_echo_testb_mcu1_0_release_strip.xer5f \
    +    fitImage \
    +    fitImage-its-am62xx-custom \
    +    wificfg \
    +"
    +
     DEPLOY_IMAGES_NAME:append:am62xx-lp-evm = " \
         tiboot3-am62x-hs-evm.bin \
         ti-fs-firmware-am62x-hs-enc.bin \
    diff --git a/recipes-core/images/tisdk-default-image.bbappend b/recipes-core/images/tisdk-default-image.bbappend
    index a4e4445b..5a4d5801 100644
    --- a/recipes-core/images/tisdk-default-image.bbappend
    +++ b/recipes-core/images/tisdk-default-image.bbappend
    @@ -31,5 +31,7 @@ do_image_wic:append:am64xx-evm[depends] = " wifi-oob:do_deploy"
     IMAGE_BOOT_FILES:append:am64xx-evm = " wificfg"
     do_image_wic:append:am62xx-evm[depends] = " wifi-oob:do_deploy"
     IMAGE_BOOT_FILES:append:am62xx-evm = " wificfg"
    +do_image_wic:append:am62xx-custom[depends] = " wifi-oob:do_deploy"
    +IMAGE_BOOT_FILES:append:am62xx-custom = " wificfg"
     do_image_wic:append:am62xx-lp-evm[depends] = " wifi-oob:do_deploy"
     IMAGE_BOOT_FILES:append:am62xx-lp-evm = " wificfg"
    diff --git a/recipes-core/packagegroups/packagegroup-arago-tisdk-connectivity.bbappend b/recipes-core/packagegroups/packagegroup-arago-tisdk-connectivity.bbappend
    index 1b6e8df1..4e4ff3a4 100644
    --- a/recipes-core/packagegroups/packagegroup-arago-tisdk-connectivity.bbappend
    +++ b/recipes-core/packagegroups/packagegroup-arago-tisdk-connectivity.bbappend
    @@ -12,6 +12,9 @@ WLAN_TI:append:am64xx-evm = " \
     WLAN_TI:append:am62xx-evm = " \
         wifi-oob \
     "
    +WLAN_TI:append:am62xx-custom = " \
    +    wifi-oob \
    +"
     WLAN_TI:append:am62xx-lp-evm = " \
         wifi-oob \
     "
    diff --git a/recipes-core/packagegroups/packagegroup-arago-tisdk-graphics.bbappend b/recipes-core/packagegroups/packagegroup-arago-tisdk-graphics.bbappend
    index b6052245..22d14d23 100644
    --- a/recipes-core/packagegroups/packagegroup-arago-tisdk-graphics.bbappend
    +++ b/recipes-core/packagegroups/packagegroup-arago-tisdk-graphics.bbappend
    @@ -6,6 +6,10 @@ GRAPHICS_DEMO:am62xx-evm = " \
         powervr-graphics \
     "
     
    +GRAPHICS_DEMO:am62xx-custom = " \
    +    powervr-graphics \
    +"
    +
     GRAPHICS_DEMO:am62xx-lp-evm = " \
         powervr-graphics \
     "
    diff --git a/recipes-tisdk/uboot-flash-writer/uboot-flash-writer.bb b/recipes-tisdk/uboot-flash-writer/uboot-flash-writer.bb
    index 5e2ececc..01cba5ba 100644
    --- a/recipes-tisdk/uboot-flash-writer/uboot-flash-writer.bb
    +++ b/recipes-tisdk/uboot-flash-writer/uboot-flash-writer.bb
    @@ -4,7 +4,7 @@ SUMMARY = "Recipe to add uboot-flash-writer in SDK Installer"
     LICENSE = "TI-TSPA"
     LIC_FILES_CHKSUM = "file://${COREBASE}/../meta-ti/meta-ti-bsp/licenses/TI-TSPA;md5=bb6bc27cd44417c389a180bd62f552a0"
     
    -COMPATIBLE_MACHINE = "am62xx-evm|am64xx-evm|am62axx-evm|am62xx-lp-evm"
    +COMPATIBLE_MACHINE = "am62xx-evm|am62xx-custom|am64xx-evm|am62axx-evm|am62xx-lp-evm"
     
     S = "${WORKDIR}"
     BRANCH = "master"
    @@ -22,6 +22,11 @@ FLASHWRITER:am62xx-evm = "DFU_flash \
         uart_uniflash \                        
     "
     
    +FLASHWRITER:am62xx-custom = "DFU_flash \                                                     
    +	Ethernet_flash \     
    +    uart_uniflash \                        
    +"
    +
     FLASHWRITER:am62axx-evm = "DFU_flash \
     	uart_uniflash \
     "
    @@ -67,6 +72,12 @@ FILES:${PN}:am62xx-evm = " \
         /bin/uart_uniflash/* \
     "
     
    +FILES:${PN}:am62xx-custom = " \
    +    /bin/DFU_flash/* \
    +    /bin/Ethernet_flash/* \
    +    /bin/uart_uniflash/* \
    +"
    +
     FILES:${PN}:am64xx-evm = " \
     	/bin/DFU_flash/* \
     	/bin/Ethernet_flash/* \                                                     
    Entering meta-qt5/...
    Entering meta-ti/...
    diff --git a/meta-ti-bsp/conf/machine/am62xx-custom-k3r5.conf b/meta-ti-bsp/conf/machine/am62xx-custom-k3r5.conf
    new file mode 100644
    index 00000000..f48ff06b
    --- /dev/null
    +++ b/meta-ti-bsp/conf/machine/am62xx-custom-k3r5.conf
    @@ -0,0 +1,12 @@
    +#@TYPE: Machine
    +#@NAME: AM62XX Custom Board (R5F)
    +#@DESCRIPTION: Machine configuration for custom AM62XX board (R5F core)
    +
    +require conf/machine/include/k3r5.inc
    +require conf/machine/include/ti-extras.inc
    +
    +SYSFW_SOC = "am62x"
    +SYSFW_CONFIG = "evm"
    +SYSFW_SUFFIX = "hs-fs"
    +
    +UBOOT_MACHINE = "am62x_evm_r5_defconfig"
    diff --git a/meta-ti-bsp/conf/machine/am62xx-custom.conf b/meta-ti-bsp/conf/machine/am62xx-custom.conf
    new file mode 100644
    index 00000000..25cc7aa2
    --- /dev/null
    +++ b/meta-ti-bsp/conf/machine/am62xx-custom.conf
    @@ -0,0 +1,12 @@
    +#@TYPE: Machine
    +#@NAME: AM62XX Custom Board
    +#@DESCRIPTION: Machine configuration for custom AM62XX board
    +
    +require conf/machine/include/am62xx.inc
    +require conf/machine/include/ti-extras.inc
    +
    +KERNEL_DEVICETREE = " \
    +    ti/k3-am625-sk.dtb \
    +"
    +
    +UBOOT_MACHINE = "am62x_evm_a53_defconfig"
    Entering meta-virtualization/...
    Entering oe-core/...