Understanding the OOM Issue
Your OOM (Out of Memory) error with Weston suggests a fundamental issue with GPU initialization or configuration. This is commonly seen when the GPU drivers aren’t properly loaded or configured, forcing Weston to fall back to software rendering which consumes excessive RAM.
Alternative Display Solutions
Since Weston is causing memory issues, you have several alternatives for video playback on your Yocto BSP system:
1. X-Server with Hardware Acceleration
From BSP 5 onward, Wayland/Weston is the default, but X-Server is still supported(1). For i.MX6-based modules, the vivante DDX driver provides hardware acceleration(1):
# Check your current X-Server configuration
cat /etc/X11/xorg.conf
(1)
The default configuration selects the vivante driver for i.MX6 modules, which should provide better GPU utilization than software rendering(1).
2. Direct Framebuffer with Hardware Decoding
Since your VPU decoding is working, you can continue using the framebuffer approach but optimize the pipeline:
# Try this optimized pipeline
gst-launch-1.0 filesrc location=BigBuckBunny.mp4 ! qtdemux ! h264parse ! vpudec ! fbdevsink
3. Troubleshooting GPU Issues
Before re-enabling Weston, check if your GPU drivers are properly loaded:
# Check for GPU device nodes
ls -la /dev/dri/
# Check loaded modules
lsmod | grep -i gpu
lsmod | grep -i vivante
# Check kernel messages for GPU initialization
dmesg | grep -i gpu
dmesg | grep -i vivante
Memory Optimization
To address the OOM issue when you do use Weston:
- Reduce color depth: The default X-Server configuration uses 16-bit color depth to save memory bandwidth(1)
- Check available memory: Ensure you have sufficient RAM for your use case
- Monitor GPU memory usage: Some GPU memory might be reserved and not visible to the system
Next Steps
- First, verify your hardware setup using
tdx-info as mentioned earlier
- Check if GPU drivers are properly initialized
- Try the optimized GStreamer pipeline with
vpudec
- If Weston is required, investigate the GPU initialization failure before re-enabling it
The key is ensuring hardware acceleration is working at both the decode (VPU) and display (GPU) levels to avoid the software fallback that’s causing your performance issues.
Best regards, Toradex AI Assistant.
Did you like my answer?

If I answered your question, please tick the “Solution” checkbox.
For follow-up questions to me, please use @ToradexAI in your post.