Make AMD Fam10h CPU microcode updates optional in Expert mode
Signed-off-by: Xavi Drudis Ferran <xdrudis@tinet.cat> Acked-by: Peter Stuge <peter@stuge.se> git-svn-id: svn://svn.coreboot.org/coreboot/trunk@6385 2b7e53f0-3cfb-0310-b3e9-8179ed1497e1
This commit is contained in:
parent
837403dddf
commit
4c28a6f018
|
@ -50,3 +50,35 @@ config SET_FIDVID_CORE_RANGE
|
||||||
|
|
||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
config UPDATE_CPU_MICROCODE
|
||||||
|
bool
|
||||||
|
default y
|
||||||
|
|
||||||
|
config UPDATE_CPU_MICROCODE
|
||||||
|
bool "Update CPU microcode"
|
||||||
|
default y
|
||||||
|
depends on EXPERT && CPU_AMD_MODEL_10XXX
|
||||||
|
help
|
||||||
|
Select this to apply patches to the CPU microcode provided by
|
||||||
|
AMD without source, and distributed with coreboot, to address
|
||||||
|
issues in the CPU post production.
|
||||||
|
|
||||||
|
Microcode updates distributed with coreboot are not necessarily
|
||||||
|
the latest version available from AMD. Updates are only applied
|
||||||
|
if they are newer than the microcode already in your CPU.
|
||||||
|
|
||||||
|
Unselect this to let Fam10h CPUs run with microcode as shipped
|
||||||
|
from factory. No binary microcode patches will be included in the
|
||||||
|
coreboot image in that case, which can help with creating an image
|
||||||
|
for which complete source code is available, which in turn might
|
||||||
|
simplify license compliance.
|
||||||
|
|
||||||
|
Microcode updates intend to solve issues that have been discovered
|
||||||
|
after CPU production. The common case is that systems work as
|
||||||
|
intended with updated microcode, but we have also seen cases where
|
||||||
|
issues were solved by not applying the microcode updates.
|
||||||
|
|
||||||
|
Note that some operating system include these same microcode
|
||||||
|
patches, so you may need to also disable microcode updates in
|
||||||
|
your operating system in order for this option to matter.
|
||||||
|
|
|
@ -1,5 +1,4 @@
|
||||||
# no conditionals here. If you include this file from a socket, then you get all the binaries.
|
|
||||||
driver-y += model_10xxx_init.c
|
driver-y += model_10xxx_init.c
|
||||||
ramstage-y += update_microcode.c
|
ramstage-$(CONFIG_UPDATE_CPU_MICROCODE) += update_microcode.c
|
||||||
ramstage-y += apic_timer.c
|
ramstage-y += apic_timer.c
|
||||||
ramstage-y += processor_name.c
|
ramstage-y += processor_name.c
|
||||||
|
|
|
@ -325,7 +325,9 @@ static u32 init_cpus(u32 cpu_init_detectedx)
|
||||||
* This happens after HTinit.
|
* This happens after HTinit.
|
||||||
* The BSP runs this code in it's own path.
|
* The BSP runs this code in it's own path.
|
||||||
*/
|
*/
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(cpuid_eax(1));
|
update_microcode(cpuid_eax(1));
|
||||||
|
#endif
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
||||||
#if CONFIG_SET_FIDVID
|
#if CONFIG_SET_FIDVID
|
||||||
|
|
|
@ -66,7 +66,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
|
|
||||||
|
@ -132,7 +136,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -66,7 +66,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include "southbridge/amd/sb700/early_setup.c"
|
#include "southbridge/amd/sb700/early_setup.c"
|
||||||
|
@ -125,7 +129,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -87,7 +87,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
|
|
||||||
|
@ -227,7 +231,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -65,7 +65,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include <spd.h>
|
#include <spd.h>
|
||||||
|
@ -124,7 +128,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -65,7 +65,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include <spd.h>
|
#include <spd.h>
|
||||||
|
@ -125,7 +129,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -65,7 +65,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include <spd.h>
|
#include <spd.h>
|
||||||
|
@ -125,7 +129,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -61,7 +61,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include <spd.h>
|
#include <spd.h>
|
||||||
|
@ -121,7 +125,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -65,7 +65,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include <spd.h>
|
#include <spd.h>
|
||||||
|
@ -123,7 +127,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -82,7 +82,11 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
|
|
||||||
|
@ -136,7 +140,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -67,7 +67,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include <spd.h>
|
#include <spd.h>
|
||||||
|
@ -126,7 +130,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -72,7 +72,11 @@ static int spd_read_byte(u32 device, u32 address)
|
||||||
#include "cpu/amd/quadcore/quadcore.c"
|
#include "cpu/amd/quadcore/quadcore.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
#include <spd.h>
|
#include <spd.h>
|
||||||
|
@ -131,7 +135,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -76,7 +76,11 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
||||||
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
|
|
||||||
|
@ -153,7 +157,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -68,7 +68,11 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
||||||
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
|
|
||||||
|
@ -145,7 +149,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -74,7 +74,11 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
||||||
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
|
|
||||||
|
@ -197,7 +201,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
|
@ -77,7 +77,11 @@ static inline int spd_read_byte(unsigned device, unsigned address)
|
||||||
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
#include "southbridge/nvidia/mcp55/early_setup_car.c"
|
||||||
#include "cpu/amd/car/post_cache_as_ram.c"
|
#include "cpu/amd/car/post_cache_as_ram.c"
|
||||||
#include "cpu/amd/microcode/microcode.c"
|
#include "cpu/amd/microcode/microcode.c"
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
#include "cpu/amd/model_10xxx/update_microcode.c"
|
#include "cpu/amd/model_10xxx/update_microcode.c"
|
||||||
|
#endif
|
||||||
|
|
||||||
#include "cpu/amd/model_10xxx/init_cpus.c"
|
#include "cpu/amd/model_10xxx/init_cpus.c"
|
||||||
#include "northbridge/amd/amdfam10/early_ht.c"
|
#include "northbridge/amd/amdfam10/early_ht.c"
|
||||||
|
|
||||||
|
@ -153,7 +157,9 @@ void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
/* Setup sysinfo defaults */
|
/* Setup sysinfo defaults */
|
||||||
set_sysinfo_in_ram(0);
|
set_sysinfo_in_ram(0);
|
||||||
|
|
||||||
|
#if CONFIG_UPDATE_CPU_MICROCODE
|
||||||
update_microcode(val);
|
update_microcode(val);
|
||||||
|
#endif
|
||||||
post_code(0x33);
|
post_code(0x33);
|
||||||
|
|
||||||
cpuSetAMDMSR();
|
cpuSetAMDMSR();
|
||||||
|
|
Loading…
Reference in New Issue