• ferric_carcinization@lemmy.ml
    link
    fedilink
    English
    arrow-up
    1
    ·
    edit-2
    2 hours ago

    At least the situation will get better.

    Nouveau’s kernel driver is a horrible mess, so I’m looking forward to Nova, if it ever gets ready.

    For older (pre-about-RTX 2000-series) cards, the kernel driver had to do a lot, and Nouveau had to reverse engineer most things. Now, Nvidia has moved most of the proprietary magic into something called the GSP (GPU System Processor), which is a small processor (RISC-V, IIRC) which does many things the kernel driver did previously, like reclocking. This, in addition to the official open kernel drivers should make developing a new FOSS Nvidia driver a lot easier. RedHat’s Nova (and I think Nvidia’s open driver) only support cards with a GSP for this reason.

    NVK is very impressive for such a new unofficia Nvidia driver in my opinion. If I remember correctly, they said that they’ll focus more on optimization now that it’s conformant.

    When/if Nova is ready, it will finally be possible to use a Rust graphics driver stack on Linux outside of Asahi.

    If you have any questions remaining, just ask.

    Edit: So the closed source GSP firmware blob has 3 “good” points:

    1. The closed source parts are limited to inside the GPU.
    2. It moves a lot of work away from the kernel driver.
    3. It allows open source drivers to support HDMI 2.1 & later.

    The HDMI Forum decided some time ago that HDMI was too open. Now, for the newer versions, the license doesn’t allow open source implementations. Nvidia gets around this with proprietary GSP firmware inside the GPU (even with official open source drivers, not sure about Nouveau) and Intel with GPU firmware or an internal adapter, depending on the GPU (if I’ve understood correctly). Only AMD doesn’t support the newest HDMI version.