top | item 43295624

(no title)

kaszanka | 1 year ago

BAR resizing (which is all that Smart Access Memory means, as far as I can tell) is just done by the kernel writing some value to the right field in PCI configuration space, why would it require firmware support (and if so, why would CSM preclude that support)?

discuss

order

toast0|1 year ago

Typically the system firmware sets up the PCI address assignments.

An OS can reassign addresses, but the firmware is expected to know things about the memory (and i/o) map in the system. If there's some device hard wired to specific memory or i/o addresses, the firmware (should) know not to give that address to any pci devices, but the OS might not know. Or if the system skipped some address pins, again similar thing.

That doesn't really preclude CSM support, but mapping devices outside of 32-bit space is sometimes tied to CSM and a large BAR probably won't fit in 32-bit space. Neither of theae things really need to be tied to CSM, but I guess the assumption is an OS that can use 64-bit device addresses would have an uefi loader.

offmycloud|1 year ago

Just to be clear, it is not the Base Address Register (BAR) itself that gets resized, it is the mapped region of video memory which is pointed to by the BAR.

wmf|1 year ago

There are a lot of features that Intel has decided are "supposed" to be enabled by firmware and Windows just goes along with that. AMD copies Intel for compatibility of course.

mrlonglong|1 year ago

Linux doesn't care. It boots just fine from BIOS and sets the BARs registers.