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.

Linux/PROCESSOR-SDK-TDAX: Failed to run OpenCl examples on TDA2x using VISION SDK

Part Number: PROCESSOR-SDK-TDAX


Tool/software: Linux

Hi,

I have some trouble during boot and also after boot when trying to run Opencl examples.

Please have a look at the information below and give me some ideas about how to solve the issue.

Regards,

Olivier

CONFIGURATION

 Using PROCESSOR_SDK_VISION_03_01_00_00

 Build Linux Vision SDK on TDA2xx :

-       MAKECONFIG=tda2xx_evm_linux_all is set in Rules.make

-       All optional components downloaded (ipumm, Codec Engine, Framework Components, Opencl supported package)

 Booting using micro SD Card

 

DURING BOOT

Error messages :

 1) [FAILED] Failed to start Load Kernel Modules à The cmemk module was not loaded during boot.

 There is the following error message from the daemon using "systemctl status systemd-modules-load.service" : “Failed to find module ‘cmemk’”

-       kernel version is (uname –r) : 4.4.84-00012-gf07f446

-       cmemk.ko can’t be found in : /lib/modules/4.4.84-00012-gf07f446/extra/

-       cmemk.ko can be found in : /lib/modules/4.4.84-g7e6588b179/extra/

  • cmemk.ko vermagic (modinfo) : 4.4.84-g7e6588b179 SMP preempt mod_unload modversions ARMv7 p2v8

 

2)  [FAILED] Failed to start TI MultiCore Tools Daemon à The ti-mctd daemon was not started during boot.

There is the following error message from the daemon using "journalctl -u ti-mct-daemon.service" : “Failed to pen /dev/cmem”

This is probably because “cmemk” module was not found during boot.

 

AFTER BOOT

I can execute the following lines :

insmod /opt/vision_sdk/cmemk.ko phys_start=0xA9000000 phys_end=0xACffffff pools=1x67108863 phys_start_1=0x40400000  phys_end_1=0x40500000

export TI_OCL_COMPUTE_UNIT_LIST="0"

ti-mctd

 

But, when trying to execute examples provided in /usr/share/ti/examples/opencl/, I get the following error message:

 TIOCL FATAL: Internal Error: Number of message queues (0) does not match number of compute units (2)

  • Hi Olivier,

    I have forwarded your question to OpenCL experts.

    Regards,
    Yordan
  • Hi Yordan,

    I give you more information about the reasons for the failures during boot (see also below).

    As I understand, the problem comes from the fact that the files cmemk.ko, cryptodev.ko, gdbserverproxy.ko and uio_module_drv.ko exist in folder:

    /PROCESSOR_SDK_VISION_03_01_00_00/ti_components/os_tools/linux/targetfs/lib/modules/4.4.84-g7e6588b179/extra

    but not in folder: 

    /PROCESSOR_SDK_VISION_03_01_00_00/ti_components/os_tools/linux/targetfs/lib/modules/4.4.84-00012-gf07f446/extra/

    and this last forlder is the one used because kernel version is 4.4.84-00012-gf07f446.

    This last folder is automatically generated during compilation and I don't understand why the missing *.ko are not generated.

    Is there a compilation option that I missed? (I used the unmodified compilation options provided with the PROCESSOR_SDK_VISION)

    Regards,

    Olivier

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

    BOOT

    [FAILED] Failed to start Load Kernel Modules.

    Aug 31 07:15:19 dra7xx-evm systemd-modules-load[115]: [[0;1;31mFailed to find module 'cmemk'[[0m

    Aug 31 07:15:19 dra7xx-evm systemd-modules-load[115]: [[0;1;31mFailed to find module 'cryptodev'[[0m

    Aug 31 07:15:19 dra7xx-evm systemd-modules-load[115]: [[0;1;31mFailed to find module 'gdbserverproxy'[[0m

    Aug 31 07:15:19 dra7xx-evm systemd-modules-load[115]: [[0;1;31mFailed to find module 'uio_module_drv'[[0m 

    (...)

    [FAILED] Failed to start TI MultiCore Tools Daemon.

    Aug 31 07:15:23 dra7xx-evm systemd[1]: Starting TI MultiCore Tools Daemon...

    Aug 31 07:15:23 dra7xx-evm ti-mctd[538]: CMEM Error: init: Failed to open /dev/cmem: 'No such file or directory'

    Aug 31 07:15:23 dra7xx-evm ti-mctd[538]: ti-mctd: /jenkins/psdkla-krogoth/release/dra7xx/yocto/tisdk/build/arago-tmp-external-linaro-toolchain/work/dra7xx_evm-linux-gnueabi/opencl/1.1.12.0-r0.0/git/host/mct-daemon/cmem_allocator.h:63: CmemAllocator::CmemAllocator(): Assertion `status != -1' failed.

    Aug 31 07:15:24 dra7xx-evm systemd[1]: [[0;1;39mti-mct-daemon.service: Control process exited, code=dumped status=6[[0m

    Aug 31 07:15:24 dra7xx-evm systemd[1]: [[0;1;31mFailed to start TI MultiCore Tools Daemon.[[0m

    Aug 31 07:15:24 dra7xx-evm systemd[1]: [[0;1;39mti-mct-daemon.service: Unit entered failed state.[[0m

    Aug 31 07:15:24 dra7xx-evm systemd[1]: [[0;1;39mti-mct-daemon.service: Failed with result 'core-dump'.[[0m

  • Hi Oliver,
    Use MAKECONFIG=tda2xx_evm_linux_opencx
    where OPENCL_INCLUDE=yes

    Regards
    Surya