It is not possible to modify the firmware as it is signed. As for a AtomBIOS shim, that is possible, but it very likely will not help with fixing cards as the AtomBIOS is designed for the low level early initalization before the firmware takes over, which is where the problems will lie.
To be honest at the moment this is not my goal though, if I am so inclined I may look later but the goal to achieve here is a fixed VEGA10 and VEGA12 series reset.
This morning I have managed to gather all the information together needed to issue the PSP mode3 reset, including a way to detect if the PSP microcode has already been loaded into the GPU. This is great because now (in theory) instead of needing to load the microcode, simply detecting if it’s already loaded will tell us if the card needs a reset.
However, even if the microcode does still require loading it is not very hard to add this, but I am not sure that Linus will like firmware loading code to enter a PCI Quirk, I know personally it doesn’t “feel” right.