Skip to content

A quick look at Vivante Windows drivers on i.MX8M

After PowerVR, let’s look at the state of the Vivante drivers for Windows, as part of the i.MX8M Windows BSP.

Implemented APIs

D3D11 using DXVK

No D3D9, no D3D12 implementation provided.

Note on Vulkan

A Vulkan implementation is included but is an internal implementation. No ICD files are present, with Vulkan being provided through vulkan.dll and vulkan_32.dll. As such it’s not listed above.

Does this driver stack use LLVM in any way?

No.

Supported architectures

64-bit Arm and 32-bit Arm applications. No x86 UMDs are provided. As such, x86 applications run with software rendering only.

Windows 11?

The i.MX8M SoC is an ARMv8.0 part. As such, Windows 11 is not supported on that platform, but only Windows 10 (IoT Enterprise).

Are WDDM overrides used?

Yes.

HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers",DisableAutoAcpiPostDeivce,%REG_DWORD%,0
;HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\MemoryManager",GpuVaFirstValidAddress,%REG_DWORD%,0x1000000
;HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\MemoryManager",DisableUncommitGpuVaInPagingProcess,%REG_DWORD%,1
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\MemoryManager",DirectFlipMemoryRequirement,%REG_DWORD%,32
;HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers\Scheduler",EnablePreemption,%REG_DWORD%,0
HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers",TdrDebugMode,%REG_DWORD%,2
;HKLM,"SYSTEM\CurrentControlSet\Control\GraphicsDrivers",TdrLimitCount,%REG_DWORD%,100

TL;DR

This new crop of platform is very far from the state of drivers that we expect from NVIDIA, AMD, Intel or Qualcomm. In both the PowerVR and Vivante cases, the driver stack is lightyears behind the other players. At least for now…

Leave a Reply

Your email address will not be published. Required fields are marked *