I noticed for my version of QEMU that MTRR registers are not supported. Is that expected? Or is it something if you get wrong it does not break in QEMU?

Due to no MTRR support the CPU Protocol SetMemoeryAttributes() call is falling [1] and non of the GCD ranges have EFI_MEMORY_UC Attribute. 

I’m not sure but I think the no MTRR case should attempt to set the attributes via page tables via:

return AssignMemoryPageAttributes (NULL, BaseAddress, Length, MemoryAttributes, NULL);

Vs 

return EFI_UNSUPPORTED;

[1] https://github.com/tianocore/edk2/blob/master/UefiCpuPkg/CpuDxe/CpuDxe.c#L429

Thanks,

Andrew Fish