Solution for your coreboot + discrete GPU problems like
amdgpu kernel bo map failed [...] error -22 amdgpu_vram_scratch_init failed [...] error -22 fatal error in GPU initialization
It turned out that a fix like https://review.coreboot.org/c/coreboot/+/38215 ( /* Set to 0xD0 instead of 0xE0 to avoid the PCI resource allocation problems. */ InitPost->MemConfig.BottomIo = 0xD0; // at the beginning of board_BeforeInitPost function at board's OemCustomize.c ) that worked for HD6670, is not enough for a huge RX590 - which is huge in all relations, but most importantly the memory ranges!
To get RX590 working with ASUS A88XM-E, I had to decrease a BottomIo even further - to 0xC0 - and also to reduce the BLDCFG_UMA_ALLOCATION_SIZE at board's buildOpts.c from 0x2000 (512MB) to 0x1000 (256MB), - to get this extra "0xD0-0xC0"=0x10000000 room. And then it worked perfectly, at least with DRI_PRIME=1 ./Supertuxkart GPU offloading: ultra settings on integrated - 4 or 5 fps, with offloading - 60 fps. I'm sure this fix will work for your other RX 5** as well, but don't know if I should be trying to commit it to master, since it lowers the integrated GPU's shared memory.
RX590 is the most powerful AMD GPU which does not contain a Platform Security Processor aka PSP (yes, they've started adding this crap to the GPUs as well, and newer Vega / RX 5*** are all contaminated - see for yourself at freedesktop drm/amdgpu sources) . That's why it was really important to get RX590 working. So happy it was possible, thanks to you all ;-)
Best regards, Mike Banon