Firmware is a bit weird. You don't even know that it's code. It could be FPGA config or a
particular set of switch settings just like setting registers but all in a lump.
It's always seemed a bit dishonest to me to claim firmware must be GPL'd or out while at the
same time accepting driver code that uses NDA provided or reverse engineered register
settings. Those register settings could be in some way also code.
Just think of it as register settings and card state, no different than sending a mysterious
32 byte blob that you don't understand but the VGA output doesn't work without it.