3 ms·
AMD GPUs require AtomBIOS which contains bytecode (that is: blobs) to initialize the GPU. If you look at the Linux drivers, they come with an AtomBIOS bytecode
by pgeorgi 7y ago
AMD GPUs require AtomBIOS which contains bytecode (that is: blobs) to initialize the GPU. If you look at the Linux drivers, they come with an AtomBIOS bytecode interpreter for that purpose.
There was some confrontation over that 10 years ago or so (see radeon vs. radeonhd drivers, one point of view is described at https://libv.livejournal.com/27799.html https://libv.livejournal.com/27799.html) and the people in charge of Linux GPU drivers decided to go with AtomBIOS.
- yellowapple 7y ago> AMD GPUs require AtomBIOS which contains bytecode (that is: blobs) to initialize the GPU. If you look at the Linux drivers, they come with an AtomBIOS bytecode interpreter for that purpose. I'm failing to see how this is any worse than the current situation with Nvidia drivers, especially if System76 is preinstalling them. You'll need blobs either way. You'll arguably need far more of them for an Nvidia GPU than an AMD GPU.
- fulafel 7y agoACPI also works this way, no?
- pgeorgi 7y agoRight, but ACPI has a standard (even if using the standard has onerous restrictions) and so firmware projects like coreboot can (and do) implement their own. For AtomBIOS, you have a single vendor virtual machine environment (bytecode + semantics) describing whatever they need in a custom form. There's no other documentation for the things out there than AtomBIOS speciment, making reimplementation rather complex.