AXON V0.2 (RK3588): MPP fails when Mali/panthor enumerates as DRM card0

On one of our AXON V0.2 boards all Rockchip MPP elements fail: mpph264enc with “gst_buffer_new_allocate: failed to allocate 460800 bytes → failed to activate bufferpool”, mppvideodec with “failed to init mpp ctx”. A sibling AXON V0.2 with the same kernel (6.1.75-axon) and packages works.

We traced it to DRM enumeration: librockchip_mpp hardcodes /dev/dri/card0 (confirmed in the binary), but on the affected unit card0 is panthor (Mali), which returns ENOSYS for DRM_IOCTL_MODE_CREATE_DUMB (strace-confirmed). On the working unit card0 is rockchip-drm. Reboots don’t change the order.

  1. Is there a supported way to make rockchip-drm deterministically enumerate as card0/renderD128 (DT, kernel config, command line)?
  2. Is there an updated librockchip_mpp/gstreamer-rockchip1 that discovers the correct DRM node?
  3. Is there a fixed image/kernel for AXON V0.2 we should flash?
  4. If not, what workaround do you recommend?

We can provide strace/dmesg/gst logs. Thanks!

(Note: runtime unbind/rebind of the DRM drivers hung the board and the watchdog reset it — not a viable workaround.)

can you check the date of the kernel build?

uname -a
  • Kernel version: 6.1.75-axon (axon)
  • Build date: Monday, Aug 4 2025, 10:17:13 IST