Investigaciones recientes sobre el firmware de las GPU Mali (como la Mali-G610 en el RK3588) han revelado detalles importantes sobre su funcionamiento interno. El firmware se ejecuta en un microcontrolador (MCU) Cortex-M7 que opera a una velocidad impresionante de 990 MHz en el RK3588. Este MCU gestiona tareas que antes eran responsabilidad del kernel, incluyendo la gestión de memoria a través de sus propias tablas de páginas, lo que permite el acceso a amplios espacios de memoria virtual. La seguridad se basa en múltiples capas de mapeo de memoria controladas por el MCU, limitando el acceso no autorizado. La comunicación entre el MCU y el sistema se realiza a través de interrupciones (doorbells) y memoria mapeada de E/S (MMIO), permitiendo la interacción entre el kernel, el espacio de usuario y los componentes de la GPU. El análisis también revela la existencia de recursos como 'compute', 'fragment', 'idvs' y 'tiler', que configuran los componentes de hardware utilizados por la GPU, añadiendo complejidad a la arquitectura.
