Skip to content

v1.0.7 — ROCKNIX/panfrost GL fix

Latest

Choose a tag to compare

@EapRules EapRules released this 12 Aug 01:22

Fixed

  • ROCKNIX devices in panfrost mode could not start. The port bundles its own libraries (built against an old glibc so it runs on every firmware) and puts them first on the library path. Mesa's EGL driver is loaded by glvnd through a plain dlopen, which walks that same path — so on a firmware with newer Mesa, the bundled libstdc++ shadowed what libgallium needed (GLIBCXX_3.4.29), the driver failed to load, and glvnd silently ended up with no driver at all. The symptom was eglGetDisplay -> EGL_NO_DISPLAY / EGL_BAD_PARAMETER, which looks like a broken EGL and was really the port's own search path.

    The Mesa driver is now probed first, and only if it fails does the port let the firmware's copies of the shadowed libraries take precedence — reverted if that does not help, since a firmware with older libraries must keep the bundled ones. The driver's dependency audit is written to log.txt either way.

    Diagnosed from field logs on the Dead Space port by @AmmoniumDichromate.

ROCKNIX status

  • libmali mode: works — set the device's GPU driver to libmali.
  • panfrost mode: reaches a live GL context now (it could not before) but renders black and crashes shortly after — a fixed-function GLES 1.1 path on Mesa/Panfrost. Documented in the README as a known limitation.

Everything else

No changes for ArkOS/dArkOS/muOS — those use the vendor blob path, which this does not touch.