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.

AM625: SDK9.0 multilib for customer board

Part Number: AM625

I modified the configuration of a customer board based on the AM62x-evm, and the image can be successfully compiled through the command.
$ MACHINE=am62xx-customer bitbake tisdk-customer-image

I want to use the multilib in the rootfs, add the configuration in the local.conf

# Define multilib target
require conf/multilib.conf
MULTILIBS = "multilib:lib32"
DEFAULTTUNE:virtclass-multilib-lib32 = "armv7athf-neon"

# Specify 32-bit packages to be added
IMAGE_INSTALL:append = " lib32-glibc lib32-libgcc lib32-libstdc++"

# AM62x GPU drivers don't support 32-bit, remove for now
MACHINE_FEATURES:remove = "gpu"

# The kms++ packages are not compatible with multilib builds, remove for now
RDEPENDS:packagegroup-arago-base:remove = "kms++ kms++-python"

But encountered the following error when compiling

$ MACHINE=am62xx-customer bitbake -k tisdk-customer-image                                 
NOTE: Started PRServer with DBfile: /home/user/oe-layersetup/build/cache/prserv.sqlite3, Address: 127.0.0.1:34655, PID: 4701
Loading cache: 100% |#################################################################################################| Time: 0:00:05
Loaded 16234 entries from dependency cache.
Parsing recipes: 100% |###############################################################################################| Time: 0:00:06
Parsing of 6566 .bb files complete (6564 cached, 2 parsed). 16238 targets, 2410 skipped, 0 masked, 0 errors.
NOTE: Resolving any missing task queue dependencies
ERROR: Nothing RPROVIDES 'ti-img-rogue-driver' (but /home/user/oe-layersetup/sources/meta-ti/meta-ti-bsp/recipes-graphics/mesa/mesa-pvr_22.3.5.bb RDEPENDS on or otherwise requires it)
ti-img-rogue-driver was skipped: We shouldn't have multilib variants for ti-img-rogue-driver
ti-img-rogue-driver was skipped: PREFERRED_PROVIDER_virtual/lib32-gpudriver set to lib32-ti-img-rogue-driver, not ti-img-rogue-driver
NOTE: Runtime target 'ti-img-rogue-driver' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['ti-img-rogue-driver']
NOTE: Runtime target 'qtserialport' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtserialport', 'qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'tisdk-customer-image' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['tisdk-customer-image', 'qtserialport', 'qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtserialport-mkspecs' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtserialport-mkspecs', 'qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtserialport-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtserialport-dev', 'qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtserialport-qmldesigner' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtserialport-qmldesigner', 'qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtserialport-qmlplugins' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtserialport-qmlplugins', 'qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtserialport-plugins' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtserialport-plugins', 'qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtbase' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtbase', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtbase-plugins' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtbase-plugins', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtbase-mkspecs' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtbase-mkspecs', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtbase-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtbase-dev', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtbase-qmlplugins' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtbase-qmlplugins', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'qtbase-qmldesigner' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['qtbase-qmldesigner', 'virtual/egl', 'ti-img-rogue-driver']
NOTE: Runtime target 'libgles2-mesa-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['libgles2-mesa-dev', 'ti-img-rogue-driver']
NOTE: Runtime target 'mesa-megadriver' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['mesa-megadriver', 'ti-img-rogue-driver']
NOTE: Runtime target 'mesa-pvr-dev' is unbuildable, removing...
Missing or unbuildable dependency chain was: ['mesa-pvr-dev', 'ti-img-rogue-driver']
NOTE: Resolving any missing task queue dependencies
NOTE: Resolving any missing task queue dependencies
NOTE: Resolving any missing task queue dependencies
NOTE: Resolving any missing task queue dependencies
NOTE: Resolving any missing task queue dependencies

Build Configuration (mc:default):
BB_VERSION           = "2.0.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "ubuntu-18.04"
TARGET_SYS           = "aarch64-oe-linux"
MACHINE              = "am62xx-customer"
DISTRO               = "arago"
DISTRO_VERSION       = "2023.04"
TUNE_FEATURES        = "aarch64"
TARGET_FPU           = ""
meta-controller      = "master:3798a7ec0662f17a81a1fbf3dec84f1eaa4fd93c"
meta-processor-sdk   = "HEAD:9dad5765d33783f940ba3c32f4fc431e2b308621"
meta-edgeai          = "HEAD:a1d9091cd914ce0bc69958891628a4cf86ed3e96"
meta-arago-distro
meta-arago-extras
meta-arago-demos     = "HEAD:e1d3561ec681fd05509affa063e0d6212f1571d1"
meta-virtualization  = "HEAD:b3b3dbc67504e8cd498d6db202ddcf5a9dd26a9d"
meta-qt5             = "HEAD:bff5bd937f0776166e81a63f3dd39ede348ef758"
meta-ti-extras
meta-ti-bsp          = "HEAD:2e3ffb73630f4ff78227822bdb4c23e75a720223"
meta-arm
meta-arm-toolchain   = "HEAD:96aad3b29aa7a5ee4df5cf617a6336e5218fa9bd"
meta-networking
meta-python
meta-oe
meta-gnome
meta-filesystems
meta-multimedia
meta-webserver       = "HEAD:346753705e49a2486867dc150181a1c7f4d69377"
meta                 = "HEAD:f20a12ead2d5890e88e7f4ce149a777de47edc48"


Build Configuration:
BB_VERSION           = "2.0.0"
BUILD_SYS            = "x86_64-linux"
NATIVELSBSTRING      = "ubuntu-18.04"
TARGET_SYS           = "arm-oe-linux-gnueabi"
MACHINE              = "am62xx-customer-k3r5"
DISTRO               = "arago"
DISTRO_VERSION       = "2023.04"
TUNE_FEATURES        = "arm armv7a vfp thumb callconvention-hard"
TARGET_FPU           = "hard"
meta-controller      = "master:3798a7ec0662f17a81a1fbf3dec84f1eaa4fd93c"
meta-processor-sdk   = "HEAD:9dad5765d33783f940ba3c32f4fc431e2b308621"
meta-edgeai          = "HEAD:a1d9091cd914ce0bc69958891628a4cf86ed3e96"
meta-arago-distro
meta-arago-extras
meta-arago-demos     = "HEAD:e1d3561ec681fd05509affa063e0d6212f1571d1"
meta-virtualization  = "HEAD:b3b3dbc67504e8cd498d6db202ddcf5a9dd26a9d"
meta-qt5             = "HEAD:bff5bd937f0776166e81a63f3dd39ede348ef758"
meta-ti-extras
meta-ti-bsp          = "HEAD:2e3ffb73630f4ff78227822bdb4c23e75a720223"
meta-arm
meta-arm-toolchain   = "HEAD:96aad3b29aa7a5ee4df5cf617a6336e5218fa9bd"
meta-networking
meta-python
meta-oe
meta-gnome
meta-filesystems
meta-multimedia
meta-webserver       = "HEAD:346753705e49a2486867dc150181a1c7f4d69377"
meta                 = "HEAD:f20a12ead2d5890e88e7f4ce149a777de47edc48"

ERROR: All buildable tasks have been run but the build is incomplete (--continue mode). Errors for the tasks that failed will have been printed above.
ERROR: Command execution failed: 1

Summary: There was 1 WARNING message.
Summary: There were 3 ERROR messages, returning a non-zero exit code.

There is no problem when compile AM62x-evm. 

$ MACHINE=am62xx-evm bitbake -k tisdk-base-image

This is the difference between the user development board and the default development board. I want to confirm which files should be modified to allow the customer board to also support this function?

Regards,Stephen

  • in meta-ti/meta-ti-bsp/conf/machine/include/am62xx.inc

    remove gpu and ti-img-rogue-driver can solve this.

    Not sure if there will be other effects, and this is not the best adaptation method

    MACHINE_FEATURES += "screen"
    #MACHINE_FEATURES += "screen gpu"
    
    #require conf/machine/include/mesa-pvr.inc
    #PREFERRED_PROVIDER_virtual/gpudriver ?= "ti-img-rogue-driver"
    

  • Can you try further isolate and break down what change to am62xx.inc made the impact, line-by-line? This will make it easier to understand.

    For example commenting out MACHINE_FEATURES should not be needed, as 'gpu' is being removed from it via local.conf.

    Regards, Andreas

  • yes, it's no need comment out gpu, just comment out the following two lines is ok.

    #require conf/machine/include/mesa-pvr.inc
    #PREFERRED_PROVIDER_virtual/gpudriver ?= "ti-img-rogue-driver"

    But I don’t think this is a formal solution. There should be some configurations for am62x-evm in the meta that are not adapted to the customer board. If we can find the configuration, that will be the perfect solution.

    I searched for files containing “am62xx-evm” in the sources folder and tried to add some “am62xx-customer” configurations, but it had no effect. The configurations that affect the results may be hidden deeper.