[coreboot] [PATCH] Avoid hang when 4GB or more DRAM is installed on AMD RS780 UMA systems
scott at notabs.org
Wed Nov 10 18:43:24 CET 2010
From: coreboot-bounces at coreboot.org [mailto:coreboot-bounces at coreboot.org] On Behalf Of Patrick Georgi
Sent: Wednesday, November 10, 2010 02:46 AM
To: coreboot at coreboot.org
Subject: Re: [coreboot] [PATCH] Avoid hang when 4GB or more DRAM is installed on AMD RS780 UMA systems
] Maybe move amd_setup_var_mtrrs to src/cpu/amd/mtrr/amd_mtrr.c, too?
Moving amd_setup_var_mtrrs to amd_mtrr.c can be done. But
amd_setup_var_mtrrs relies on three static functions in mtrr.c.
These three functions would have to be make public: range_to_mtrr,
set_var_mtrr, enable_var_mtrr. If that is OK I can give it a try.
Another possibility is to go back to the idea of one x86_setup_var_mtrrs
function. A new flag could be passed to x86_setup_var_mtrrs that tells
tells the function that it ius running on an AMD system.
It is a little frustrating to have to worry about the possibility of
a code change breaking non-AMD UMA operation when I have no way to
test it. For example, I suspect the UMA logic for > 4GB systems is
not working for all systems. While I can confirm this for AMD systems,
I cannot confirm it for non-AMD systems. So I assume I must use one
method or another to preserve the existing logic for non-AMD use, just
in case it really does work for UMA systems with more than 4GB DRAM.
More information about the coreboot