Can Resizable BAR Support be ported to older Intel Chipsets?

I created a DXE driver that gets Resizable BAR working on older chipsets (Ivy Bridge and newer). However these motherboards often have a BIOS which artificially limits the MMIOH size (PCI resources). This makes it not possible to get fully working Resizable BAR without further modification to fix that.

My Gigabyte B75M-D3H limits the MMIOH size to 16GB when in reality Ivy Bridge CPUs are capable of 64GB (Haswell and newer 512GB) - TOUUD which would be around 55GB of MMIOH size with 8GB RAM. In fact you can edit DSDT QWordMemory to increase its size and see Linux use the additional MMIOH space.

Here is the thread which has link to the open source DXE driver for anyone interested. I was only able to test 512mb BAR due to MMIOH size limitations but larger sizes should work.

UPDATE: There are now several patches to remove artificial limitations like this

[Experimental] Resizable BAR DXE driver

3 Likes