> Accepting pre-built binaries as part of kernel sources I don't think this is true either, or has not been for a very long time (~7y?). If you look at the dates of the commits that added binary blobs (i.e. the firmware directory), those are many years old. It is an active effort to move the blobs out of the linux kernel into linux-firmware. This requires rewriting drivers that do use binary blobs. I'm also pretty sure they'd accept a patch to add a kernel configuration option to not include these "old" drivers...
The linux kernel build system provides ways of building modules that include binary blobs - but I don't think those are accepted into mainline anymore, it's just a mechanism that some companies still require to provide out of tree board support packages etc.