On 16/12/15 23:53, Mahan, Patrick wrote:
If the option ROM is disabled, would you agree that degrading the BARs from 64-bit to 32-bit should be skipped? Also, if the driver is not coming from the option ROM, should the BARs still be degraded?
There are use cases when the legacy network boot code is loaded from some medium other than the option ROM (e.g. from a USB key, from iLO virtual media, etc). In these cases, the really difficult problem (accessing the contents of the expansion ROM BAR at runtime) goes away, but the fairly difficult problem (converting the legacy boot code to run in long mode) remains.
From the legacy boot perspective, the ideal situation is that all PCI BARs are placed below 4GB. For devices which expose only a small (e.g. 64kB) memory BAR, this should always be possible. For devices which expose large (e.g. 128MB) memory BARs then this may not be possible, and the vendors of such devices will need to either implement long mode legacy boot code or find some sideband mechanism (e.g. hidden registers in PCI config space).
Michael _______________________________________________ edk2-devel mailing list edk2-devel@lists.01.org https://lists.01.org/mailman/listinfo/edk2-devel