Dear coreboot folks,
just a note to inform you, that Andy Lutomirski sent some MTRR patches to the Linux kernel lists [1] with the following cover letter.
[PATCH 0/7] Clean up write-combining MTRR addition
A fair number of drivers (mostly graphics) add write-combining MTRRs. Most ignore errors and most add the MTRR even on PAT systems which don't need to use MTRRs.
This series adds new functions mtrr_{add,del}_wc_if_needed and drm_mtrr_{add,del}_wc that report errors and do nothing if PAT is enabled.
I've only tested the radeon driver, since I don't have test hardware easily available for the other drivers.
Benefits include: - Simpler code - No more complaints about MTRR conflict warnings on PAT systems - Eventual unexporting of the MTRR API?
This series eliminates about half of the mtrr_add calls in drivers/.
The series is also at: https://git.kernel.org/cgit/linux/kernel/git/luto/linux.git/log/?h=mtrr_clea...
Andy Lutomirski (7): x86: Add mtrr_{add,del}_wc_if_needed drm (ast,cirrus,mgag200,nouveau,savage,vmwgfx): Rework drm_mtrr_{add,del} drm: Update drm_addmap and drm_mmap to use PAT WC instead of MTRRs drm: Use drm_mtrr_add_wc for the AGP aperture i915: Use drm_mtrr_{add,del}_wc radeon: Switch to drm_mtrr_add_wc and add a missing drm_mtrr_del_wc uvesafb: Clean up MTRR code
I have not looked at them, but maybe some of the ideas can be used for coreboot too.
Thanks,
Paul