Announcement

Collapse
No announcement yet.

Binary Blobs & GPU Driver: Does Mesa projects uses blobs?

Collapse
X
 
  • Filter
  • Time
  • Show
Clear All
new posts

  • Binary Blobs & GPU Driver: Does Mesa projects uses blobs?

    I am bit confused regards to GPU Blobs,

    Does ANV/RADV uses Proprietary Binary blobs?
    Does Nouveau with upcoming GSP update use Binary Blobs?




  • #2
    There are a few layers in a modern graphics stack - 3D API driver, winsys/libdrm, kernel driver, GPU hardware.

    In most cases the GPU hardware requires binary blobs containing microcode for the state machines in the hardware. Those blobs can range from fairly high level (managing the hardware engines in the VCN video encode/decode block) to very low level (training in memory controller and PCIE phy blocks) and are either burned into the chip or loaded at power-on by the kernel driver. The trend is towards having the kernel driver load the microcode images at power-on, and I believe all of the major GPU vendors now require microcode blobs to be loaded into the hardware during initial power-up.

    Programming guides for GPUs usually describe the behaviour of hardware with the microcode loaded... behaviour without the microcode is pretty much "GPU is non-functional".

    So... I don't think any blobs are used/visible at Mesa level, but there are a few lower level layers in the stack and blobs are often visible there. The blobs actually run on the GPU hardware rather than as part of the OS or driver though.
    Last edited by bridgman; 17 October 2023, 10:40 PM.
    Test signature

    Comment

    Working...
    X