Enabling GPU (Vivante) for Ls1028A in Yocto

cancel
Showing results for 
Show  only  | Search instead for 
Did you mean: 

Enabling GPU (Vivante) for Ls1028A in Yocto

742 Views
AOS2025
Contributor I

Hi everyone,

I am trying to enable Vivante GPU support on the LS1028A for OpenCL and GPU acceleration. According to the NXP Semiconductors LS1028ARDB-PA Datasheet, the driver is referred to as: MXC Vivante GPU Support

I have tried :Searching in menuconfig:  When I search (/) for: MXC_GPU_VIV , It shows up in the results, but it is not selectable.Trying to navigate to its supposed location:
→Device Drivers 

 → MXC support drivers 

   → MXC Vivante GPU Support

it is not there.
I have also checked the dependancies of the MXC_GPU_VIV mentioned in menuconfig:
Depends on: ARCH_MXC && DRM , DRM is enabled, but ARCH_MXC is not.
I Searched for ARCH_MXC: Symbol: ARCH_MXC [=ARCH_MXC] - Type: unknown

 Symbol: ARCH_MXC_ARM64 [=ARCH_MXC_ARM64] - Type: unknown 

I cannot find any option to enable ARCH_MXC.
The manual for LS1028A specifically mentions "MXC Vivante GPU support," which is confusing because it seems locked behind ARCH_MXC.

Is there a way to enable MXC Vivante GPU Support on LS1028A if it is locked behind ARCH_MXC?

Should I be enabling etnaviv instead? (I see it in menuconfig, but I am not sure if this is equivalent to the "MXC Vivante GPU Support" mentioned in the manual).
Do I need to patch the Device Tree (DTS) to activate GPU support?
Is there another Kconfig setting I am missing that unlocks ARCH_MXC for Layerscape platforms?

Which Yocto are required to add OpenCL and gpu support Vivante GPUs on the LS1028A?

I tried adding: IMAGE_INSTALL:append = " imx-gpu-viv opencl gpu-viv-bin-imx"

However, I am not sure if this is enough or even correct since Ls1028 is not in the imx family.

Any help would be appreciated  

Labels (1)
0 Kudos
Reply
3 Replies

708 Views
Bio_TICFSL
NXP TechSupport
NXP TechSupport

Hello

Yocto has by default enable the GPU for LS1028A just build the bitbake ls-image-desktop on the 6.11.10 BSP

https://www.nxp.com/docs/en/user-guide/LLDPUG_RevL6.1.1_1.0.0_23.08.pdf

Regards

 

0 Kudos
Reply

642 Views
AOS2025
Contributor I

Hello,
Thank you for your previous suggestion to use ls-image-desktop for GPU support on ls1028a. I attempted to follow your instructions but encountered several issues:

When building ls-image-desktop, I received the following error:

ERROR: Nothing RPROVIDES 'ubuntu-base' (but /home/o/Project/yocto/sources/meta-nxp-desktop/recipes-fsl/images/ls-image-desktop.bb RDEPENDS on or otherwise requires it)

ubuntu-base was skipped: incompatible with machine ls1028ardb (not in COMPATIBLE_MACHINE)

 

I modified ls-image-desktop.bb to remove the Ubuntu dependencies and use core-image-minimal, but there were still more errorsr:

ERROR: Nothing RPROVIDES 'systemd-gpuconfig'

systemd-gpuconfig was skipped: 'systemd' not in DISTRO_FEATURES

I added systemd to DISTRO_FEATURES, but then it began to conflict with the layers from meta-nxp-desktop.

Additionally, the Langdale branch is outdated and not fully supported anymore, so I had to manually copy files into layers and update them to get past certain errors.
This is turning into a long chain of compatibility issues. I am simply trying to enable OpenCL and GPU support for headless data processing on the ls1028a, without a full desktop environment.

0 Kudos
Reply

731 Views
Lillian826Pena
Contributor I

Hello!

LS1028A may not support MXC Vivante GPU directly since ARCH_MXC is tied to i.MX platforms. Instead, using Etnaviv might be better. Try modifying the DTS for GPU recognition and adjusting Yocto configurations for proper OpenCL and GPU support.

0 Kudos
Reply