AGESA: Introduce AGESA_LEGACY and its counterpart
We define AGESA_LEGACY as an implementation of mainboard that has its romstage main completely under mainboard/ directory. We have learnt from other platforms this approach has several downsides when it comes to making platform-wide improvements. We start by creating per-family romstage.c file, which boards will gradually take into use by removing the AGESA_LEGACY Kconfig option we here apply to all of them. Change-Id: Id01931e185a023039a60af16a678de9966db8d65 Signed-off-by: Kyösti Mälkki <kyosti.malkki@gmail.com> Reviewed-on: https://review.coreboot.org/18619 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones <marc@marcjonesconsulting.com> Reviewed-by: Martin Roth <martinroth@google.com>
This commit is contained in:
parent
1bea5b7df2
commit
967d94d626
|
@ -34,6 +34,13 @@ config CPU_AMD_AGESA
|
||||||
|
|
||||||
if CPU_AMD_AGESA
|
if CPU_AMD_AGESA
|
||||||
|
|
||||||
|
config AGESA_LEGACY
|
||||||
|
def_bool n
|
||||||
|
|
||||||
|
config AGESA_NO_LEGACY
|
||||||
|
bool
|
||||||
|
default !AGESA_LEGACY
|
||||||
|
|
||||||
config XIP_ROM_SIZE
|
config XIP_ROM_SIZE
|
||||||
hex
|
hex
|
||||||
default 0x100000
|
default 0x100000
|
||||||
|
|
|
@ -28,6 +28,7 @@
|
||||||
#*****************************************************************************
|
#*****************************************************************************
|
||||||
|
|
||||||
romstage-y += fixme.c
|
romstage-y += fixme.c
|
||||||
|
romstage-$(CONFIG_AGESA_NO_LEGACY) += romstage.c
|
||||||
|
|
||||||
ramstage-y += fixme.c
|
ramstage-y += fixme.c
|
||||||
ramstage-y += chip_name.c
|
ramstage-y += chip_name.c
|
||||||
|
|
|
@ -0,0 +1,88 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2011 Advanced Micro Devices, Inc.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <device/pci_def.h>
|
||||||
|
#include <device/pci_ids.h>
|
||||||
|
#include <arch/io.h>
|
||||||
|
#include <arch/stages.h>
|
||||||
|
#include <device/pnp_def.h>
|
||||||
|
#include <cpu/x86/lapic.h>
|
||||||
|
#include <console/console.h>
|
||||||
|
#include <commonlib/loglevel.h>
|
||||||
|
#include <cpu/amd/car.h>
|
||||||
|
#include <northbridge/amd/agesa/agesawrapper.h>
|
||||||
|
#include <northbridge/amd/agesa/agesa_helper.h>
|
||||||
|
#include <northbridge/amd/agesa/state_machine.h>
|
||||||
|
#include <cpu/x86/bist.h>
|
||||||
|
#include <superio/smsc/kbc1100/kbc1100.h>
|
||||||
|
#include <cpu/x86/lapic.h>
|
||||||
|
#include "sb_cimx.h"
|
||||||
|
#include "SbPlatform.h"
|
||||||
|
#include <arch/cpu.h>
|
||||||
|
#include "platform_cfg.h"
|
||||||
|
|
||||||
|
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
|
{
|
||||||
|
struct sysinfo *cb = NULL;
|
||||||
|
u32 val;
|
||||||
|
|
||||||
|
post_code(0x35);
|
||||||
|
amd_initmmio();
|
||||||
|
|
||||||
|
if (!cpu_init_detectedx && boot_cpu()) {
|
||||||
|
post_code(0x30);
|
||||||
|
gpioEarlyInit();
|
||||||
|
sb_poweron_init();
|
||||||
|
|
||||||
|
post_code(0x31);
|
||||||
|
|
||||||
|
board_BeforeAgesa(cb);
|
||||||
|
|
||||||
|
post_code(0x32);
|
||||||
|
post_code(0x33);
|
||||||
|
console_init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Halt if there was a built in self test failure */
|
||||||
|
post_code(0x34);
|
||||||
|
report_bist_failure(bist);
|
||||||
|
|
||||||
|
// Load MPB
|
||||||
|
val = cpuid_eax(1);
|
||||||
|
printk(BIOS_DEBUG, "BSP Family_Model: %08x\n", val);
|
||||||
|
printk(BIOS_DEBUG, "cpu_init_detectedx = %08lx\n", cpu_init_detectedx);
|
||||||
|
|
||||||
|
post_code(0x36);
|
||||||
|
agesawrapper_amdinitreset();
|
||||||
|
|
||||||
|
post_code(0x37);
|
||||||
|
agesawrapper_amdinitearly();
|
||||||
|
|
||||||
|
post_code(0x38);
|
||||||
|
agesawrapper_amdinitpost();
|
||||||
|
|
||||||
|
post_code(0x39);
|
||||||
|
printk(BIOS_DEBUG, "sb_before_pci_init ");
|
||||||
|
sb_before_pci_init();
|
||||||
|
printk(BIOS_DEBUG, "passed.\n");
|
||||||
|
|
||||||
|
post_code(0x40);
|
||||||
|
agesawrapper_amdinitenv();
|
||||||
|
|
||||||
|
post_code(0x43);
|
||||||
|
copy_and_run();
|
||||||
|
}
|
|
@ -14,6 +14,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
romstage-y += fixme.c
|
romstage-y += fixme.c
|
||||||
|
romstage-$(CONFIG_AGESA_NO_LEGACY) += romstage.c
|
||||||
|
|
||||||
ramstage-y += fixme.c
|
ramstage-y += fixme.c
|
||||||
ramstage-y += chip_name.c
|
ramstage-y += chip_name.c
|
||||||
|
|
|
@ -0,0 +1,108 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2011 Advanced Micro Devices, Inc.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <northbridge/amd/agesa/agesawrapper.h>
|
||||||
|
#include <northbridge/amd/agesa/agesa_helper.h>
|
||||||
|
#include <northbridge/amd/agesa/state_machine.h>
|
||||||
|
|
||||||
|
#include <arch/acpi.h>
|
||||||
|
#include <arch/cpu.h>
|
||||||
|
#include <arch/io.h>
|
||||||
|
#include <arch/stages.h>
|
||||||
|
#include <cbmem.h>
|
||||||
|
#include <console/console.h>
|
||||||
|
#include <cpu/amd/agesa/s3_resume.h>
|
||||||
|
#include <cpu/x86/lapic.h>
|
||||||
|
#include <cpu/x86/bist.h>
|
||||||
|
|
||||||
|
#include <device/pci_def.h>
|
||||||
|
#include <device/pci_ids.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
|
||||||
|
#include <commonlib/loglevel.h>
|
||||||
|
#include <cpu/x86/mtrr.h>
|
||||||
|
#include <cpu/x86/cache.h>
|
||||||
|
#include <cpu/amd/mtrr.h>
|
||||||
|
#include <cpu/amd/car.h>
|
||||||
|
#include <sb_cimx.h>
|
||||||
|
|
||||||
|
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
|
{
|
||||||
|
struct sysinfo *cb = NULL;
|
||||||
|
u32 val;
|
||||||
|
|
||||||
|
amd_initmmio();
|
||||||
|
|
||||||
|
if (!cpu_init_detectedx && boot_cpu()) {
|
||||||
|
post_code(0x30);
|
||||||
|
sb_Poweron_Init();
|
||||||
|
|
||||||
|
post_code(0x31);
|
||||||
|
|
||||||
|
board_BeforeAgesa(cb);
|
||||||
|
|
||||||
|
console_init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Halt if there was a built in self test failure */
|
||||||
|
post_code(0x34);
|
||||||
|
report_bist_failure(bist);
|
||||||
|
|
||||||
|
/* Load MPB */
|
||||||
|
val = cpuid_eax(1);
|
||||||
|
printk(BIOS_DEBUG, "BSP Family_Model: %08x\n", val);
|
||||||
|
printk(BIOS_DEBUG, "cpu_init_detectedx = %08lx\n", cpu_init_detectedx);
|
||||||
|
|
||||||
|
post_code(0x37);
|
||||||
|
agesawrapper_amdinitreset();
|
||||||
|
|
||||||
|
post_code(0x39);
|
||||||
|
agesawrapper_amdinitearly();
|
||||||
|
|
||||||
|
int s3resume = acpi_is_wakeup_s3();
|
||||||
|
if (!s3resume) {
|
||||||
|
|
||||||
|
printk(BIOS_INFO, "Normal boot\n");
|
||||||
|
|
||||||
|
post_code(0x40);
|
||||||
|
agesawrapper_amdinitpost();
|
||||||
|
|
||||||
|
post_code(0x41);
|
||||||
|
agesawrapper_amdinitenv();
|
||||||
|
|
||||||
|
post_code(0x42);
|
||||||
|
amd_initenv();
|
||||||
|
|
||||||
|
} else {
|
||||||
|
printk(BIOS_INFO, "S3 detected\n");
|
||||||
|
|
||||||
|
post_code(0x60);
|
||||||
|
|
||||||
|
agesawrapper_amdinitresume();
|
||||||
|
|
||||||
|
post_code(0x61);
|
||||||
|
|
||||||
|
agesawrapper_amds3laterestore();
|
||||||
|
|
||||||
|
post_code(0x62);
|
||||||
|
|
||||||
|
prepare_for_resume();
|
||||||
|
}
|
||||||
|
|
||||||
|
post_code(0x50);
|
||||||
|
copy_and_run();
|
||||||
|
}
|
||||||
|
|
|
@ -22,6 +22,7 @@ subdirs-y += ../../../x86/pae
|
||||||
subdirs-y += ../../../x86/smm
|
subdirs-y += ../../../x86/smm
|
||||||
|
|
||||||
romstage-y += fixme.c
|
romstage-y += fixme.c
|
||||||
|
romstage-$(CONFIG_AGESA_NO_LEGACY) += romstage.c
|
||||||
|
|
||||||
ramstage-y += fixme.c
|
ramstage-y += fixme.c
|
||||||
ramstage-y += chip_name.c
|
ramstage-y += chip_name.c
|
||||||
|
|
|
@ -0,0 +1,97 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2011 - 2012 Advanced Micro Devices, Inc.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <lib.h>
|
||||||
|
#include <reset.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <arch/io.h>
|
||||||
|
#include <arch/cpu.h>
|
||||||
|
#include <console/console.h>
|
||||||
|
#include <arch/stages.h>
|
||||||
|
#include "cpu/x86/bist.h"
|
||||||
|
#include "cpu/x86/lapic.h"
|
||||||
|
#include <cpu/amd/car.h>
|
||||||
|
#include <northbridge/amd/agesa/agesawrapper.h>
|
||||||
|
#include <northbridge/amd/agesa/agesa_helper.h>
|
||||||
|
#include <northbridge/amd/agesa/state_machine.h>
|
||||||
|
#include "northbridge/amd/agesa/family10/reset_test.h"
|
||||||
|
#include <nb_cimx.h>
|
||||||
|
#include <sb_cimx.h>
|
||||||
|
|
||||||
|
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
|
{
|
||||||
|
struct sysinfo *cb = NULL;
|
||||||
|
u32 val;
|
||||||
|
|
||||||
|
post_code(0x30);
|
||||||
|
amd_initmmio();
|
||||||
|
post_code(0x31);
|
||||||
|
|
||||||
|
/* Halt if there was a built in self test failure */
|
||||||
|
post_code(0x33);
|
||||||
|
report_bist_failure(bist);
|
||||||
|
|
||||||
|
board_BeforeAgesa(cb);
|
||||||
|
console_init();
|
||||||
|
|
||||||
|
val = cpuid_eax(1);
|
||||||
|
printk(BIOS_DEBUG, "BSP Family_Model: %08x\n", val);
|
||||||
|
printk(BIOS_DEBUG, "cpu_init_detectedx = %08lx\n", cpu_init_detectedx);
|
||||||
|
|
||||||
|
post_code(0x37);
|
||||||
|
agesawrapper_amdinitreset();
|
||||||
|
|
||||||
|
if (!cpu_init_detectedx && boot_cpu()) {
|
||||||
|
post_code(0x38);
|
||||||
|
/*
|
||||||
|
* SR5650/5670/5690 RD890 chipset, read pci config space hang at POR,
|
||||||
|
* Disable all Pcie Bridges to work around It.
|
||||||
|
*/
|
||||||
|
sr56x0_rd890_disable_pcie_bridge();
|
||||||
|
post_code(0x39);
|
||||||
|
nb_Poweron_Init();
|
||||||
|
post_code(0x3A);
|
||||||
|
sb_Poweron_Init();
|
||||||
|
}
|
||||||
|
post_code(0x3B);
|
||||||
|
agesawrapper_amdinitearly();
|
||||||
|
|
||||||
|
post_code(0x3C);
|
||||||
|
|
||||||
|
nb_Ht_Init();
|
||||||
|
post_code(0x3D);
|
||||||
|
/* Reset for HT, FIDVID, PLL and ucode patch(errata) changes to take affect. */
|
||||||
|
if (!warm_reset_detect(0)) {
|
||||||
|
printk(BIOS_INFO, "...WARM RESET...\n\n\n");
|
||||||
|
distinguish_cpu_resets(0);
|
||||||
|
soft_reset();
|
||||||
|
die("After soft_reset_x - shouldn't see this message!!!\n");
|
||||||
|
}
|
||||||
|
|
||||||
|
post_code(0x40);
|
||||||
|
agesawrapper_amdinitpost();
|
||||||
|
|
||||||
|
post_code(0x41);
|
||||||
|
agesawrapper_amdinitenv();
|
||||||
|
post_code(0x42);
|
||||||
|
|
||||||
|
post_code(0x50);
|
||||||
|
print_debug("Disabling cache as ram ");
|
||||||
|
disable_cache_as_ram();
|
||||||
|
print_debug("done\n");
|
||||||
|
|
||||||
|
post_code(0x51);
|
||||||
|
copy_and_run();
|
||||||
|
}
|
|
@ -14,6 +14,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
romstage-y += fixme.c
|
romstage-y += fixme.c
|
||||||
|
romstage-$(CONFIG_AGESA_NO_LEGACY) += romstage.c
|
||||||
|
|
||||||
ramstage-y += fixme.c
|
ramstage-y += fixme.c
|
||||||
ramstage-y += chip_name.c
|
ramstage-y += chip_name.c
|
||||||
|
|
|
@ -0,0 +1,91 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2012 Advanced Micro Devices, Inc.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <northbridge/amd/agesa/agesawrapper.h>
|
||||||
|
#include <northbridge/amd/agesa/agesa_helper.h>
|
||||||
|
#include <northbridge/amd/agesa/state_machine.h>
|
||||||
|
|
||||||
|
#include <arch/acpi.h>
|
||||||
|
#include <arch/cpu.h>
|
||||||
|
#include <arch/io.h>
|
||||||
|
#include <arch/stages.h>
|
||||||
|
#include <cbmem.h>
|
||||||
|
#include <console/console.h>
|
||||||
|
#include <cpu/amd/agesa/s3_resume.h>
|
||||||
|
#include <cpu/x86/bist.h>
|
||||||
|
#include <cpu/x86/lapic.h>
|
||||||
|
#include <cpu/amd/car.h>
|
||||||
|
#include <device/pci_def.h>
|
||||||
|
#include <device/pci_ids.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <southbridge/amd/agesa/hudson/hudson.h>
|
||||||
|
|
||||||
|
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
|
{
|
||||||
|
struct sysinfo *cb = NULL;
|
||||||
|
u32 val;
|
||||||
|
|
||||||
|
amd_initmmio();
|
||||||
|
|
||||||
|
if (!cpu_init_detectedx && boot_cpu()) {
|
||||||
|
post_code(0x30);
|
||||||
|
board_BeforeAgesa(cb);
|
||||||
|
|
||||||
|
post_code(0x31);
|
||||||
|
console_init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Halt if there was a built in self test failure */
|
||||||
|
post_code(0x34);
|
||||||
|
report_bist_failure(bist);
|
||||||
|
|
||||||
|
/* Load MPB */
|
||||||
|
val = cpuid_eax(1);
|
||||||
|
printk(BIOS_DEBUG, "BSP Family_Model: %08x\n", val);
|
||||||
|
printk(BIOS_DEBUG, "cpu_init_detectedx = %08lx\n", cpu_init_detectedx);
|
||||||
|
|
||||||
|
post_code(0x37);
|
||||||
|
agesawrapper_amdinitreset();
|
||||||
|
|
||||||
|
post_code(0x39);
|
||||||
|
agesawrapper_amdinitearly();
|
||||||
|
|
||||||
|
int s3resume = acpi_is_wakeup_s3();
|
||||||
|
if (!s3resume) {
|
||||||
|
post_code(0x40);
|
||||||
|
agesawrapper_amdinitpost();
|
||||||
|
|
||||||
|
post_code(0x41);
|
||||||
|
agesawrapper_amdinitenv();
|
||||||
|
|
||||||
|
disable_cache_as_ram();
|
||||||
|
} else {
|
||||||
|
printk(BIOS_INFO, "S3 detected\n");
|
||||||
|
|
||||||
|
post_code(0x60);
|
||||||
|
agesawrapper_amdinitresume();
|
||||||
|
|
||||||
|
amd_initcpuio();
|
||||||
|
agesawrapper_amds3laterestore();
|
||||||
|
|
||||||
|
post_code(0x61);
|
||||||
|
prepare_for_resume();
|
||||||
|
}
|
||||||
|
|
||||||
|
post_code(0x50);
|
||||||
|
copy_and_run();
|
||||||
|
}
|
||||||
|
|
|
@ -14,6 +14,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
romstage-y += fixme.c
|
romstage-y += fixme.c
|
||||||
|
romstage-$(CONFIG_AGESA_NO_LEGACY) += romstage.c
|
||||||
|
|
||||||
ramstage-y += fixme.c
|
ramstage-y += fixme.c
|
||||||
ramstage-y += chip_name.c
|
ramstage-y += chip_name.c
|
||||||
|
|
|
@ -0,0 +1,93 @@
|
||||||
|
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2012 Advanced Micro Devices, Inc.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <northbridge/amd/agesa/agesawrapper.h>
|
||||||
|
#include <northbridge/amd/agesa/agesa_helper.h>
|
||||||
|
#include <northbridge/amd/agesa/state_machine.h>
|
||||||
|
|
||||||
|
#include <arch/acpi.h>
|
||||||
|
#include <arch/cpu.h>
|
||||||
|
#include <arch/io.h>
|
||||||
|
#include <arch/stages.h>
|
||||||
|
#include <cbmem.h>
|
||||||
|
#include <console/console.h>
|
||||||
|
#include <cpu/amd/agesa/s3_resume.h>
|
||||||
|
#include <cpu/x86/bist.h>
|
||||||
|
#include <cpu/x86/lapic.h>
|
||||||
|
#include <cpu/amd/car.h>
|
||||||
|
#include <device/pci_def.h>
|
||||||
|
#include <device/pci_ids.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <southbridge/amd/agesa/hudson/hudson.h>
|
||||||
|
|
||||||
|
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
|
{
|
||||||
|
struct sysinfo *cb = NULL;
|
||||||
|
u32 val;
|
||||||
|
|
||||||
|
amd_initmmio();
|
||||||
|
|
||||||
|
if (!cpu_init_detectedx && boot_cpu()) {
|
||||||
|
post_code(0x30);
|
||||||
|
|
||||||
|
post_code(0x31);
|
||||||
|
|
||||||
|
board_BeforeAgesa(cb);
|
||||||
|
|
||||||
|
console_init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Halt if there was a built in self test failure */
|
||||||
|
post_code(0x34);
|
||||||
|
report_bist_failure(bist);
|
||||||
|
|
||||||
|
/* Load MPB */
|
||||||
|
val = cpuid_eax(1);
|
||||||
|
printk(BIOS_DEBUG, "BSP Family_Model: %08x\n", val);
|
||||||
|
printk(BIOS_DEBUG, "cpu_init_detectedx = %08lx\n", cpu_init_detectedx);
|
||||||
|
|
||||||
|
post_code(0x37);
|
||||||
|
agesawrapper_amdinitreset();
|
||||||
|
|
||||||
|
post_code(0x39);
|
||||||
|
agesawrapper_amdinitearly();
|
||||||
|
|
||||||
|
int s3resume = acpi_is_wakeup_s3();
|
||||||
|
if (!s3resume) {
|
||||||
|
post_code(0x40);
|
||||||
|
agesawrapper_amdinitpost();
|
||||||
|
|
||||||
|
post_code(0x41);
|
||||||
|
agesawrapper_amdinitenv();
|
||||||
|
|
||||||
|
disable_cache_as_ram();
|
||||||
|
} else {
|
||||||
|
printk(BIOS_INFO, "S3 detected\n");
|
||||||
|
|
||||||
|
post_code(0x60);
|
||||||
|
agesawrapper_amdinitresume();
|
||||||
|
|
||||||
|
amd_initcpuio();
|
||||||
|
agesawrapper_amds3laterestore();
|
||||||
|
|
||||||
|
post_code(0x61);
|
||||||
|
prepare_for_resume();
|
||||||
|
}
|
||||||
|
|
||||||
|
post_code(0x50);
|
||||||
|
copy_and_run();
|
||||||
|
}
|
|
@ -14,6 +14,7 @@
|
||||||
#
|
#
|
||||||
|
|
||||||
romstage-y += fixme.c
|
romstage-y += fixme.c
|
||||||
|
romstage-$(CONFIG_AGESA_NO_LEGACY) += romstage.c
|
||||||
|
|
||||||
ramstage-y += fixme.c
|
ramstage-y += fixme.c
|
||||||
ramstage-y += chip_name.c
|
ramstage-y += chip_name.c
|
||||||
|
|
|
@ -0,0 +1,93 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2012 Advanced Micro Devices, Inc.
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#include <northbridge/amd/agesa/agesawrapper.h>
|
||||||
|
#include <northbridge/amd/agesa/agesa_helper.h>
|
||||||
|
#include <northbridge/amd/agesa/state_machine.h>
|
||||||
|
|
||||||
|
#include <arch/acpi.h>
|
||||||
|
#include <arch/cpu.h>
|
||||||
|
#include <arch/io.h>
|
||||||
|
#include <arch/stages.h>
|
||||||
|
#include <cbmem.h>
|
||||||
|
#include <console/console.h>
|
||||||
|
#include <cpu/amd/agesa/s3_resume.h>
|
||||||
|
#include <cpu/x86/bist.h>
|
||||||
|
#include <cpu/x86/lapic.h>
|
||||||
|
#include <cpu/amd/car.h>
|
||||||
|
#include <device/pci_def.h>
|
||||||
|
#include <device/pci_ids.h>
|
||||||
|
#include <stdint.h>
|
||||||
|
#include <string.h>
|
||||||
|
#include <southbridge/amd/agesa/hudson/hudson.h>
|
||||||
|
|
||||||
|
void cache_as_ram_main(unsigned long bist, unsigned long cpu_init_detectedx)
|
||||||
|
{
|
||||||
|
struct sysinfo *cb = NULL;
|
||||||
|
u32 val;
|
||||||
|
|
||||||
|
amd_initmmio();
|
||||||
|
|
||||||
|
if (!cpu_init_detectedx && boot_cpu()) {
|
||||||
|
post_code(0x30);
|
||||||
|
|
||||||
|
board_BeforeAgesa(cb);
|
||||||
|
|
||||||
|
post_code(0x31);
|
||||||
|
console_init();
|
||||||
|
}
|
||||||
|
|
||||||
|
/* Halt if there was a built in self test failure */
|
||||||
|
post_code(0x34);
|
||||||
|
report_bist_failure(bist);
|
||||||
|
|
||||||
|
/* Load MPB */
|
||||||
|
val = cpuid_eax(1);
|
||||||
|
printk(BIOS_DEBUG, "BSP Family_Model: %08x\n", val);
|
||||||
|
printk(BIOS_DEBUG, "cpu_init_detectedx = %08lx\n", cpu_init_detectedx);
|
||||||
|
|
||||||
|
post_code(0x37);
|
||||||
|
agesawrapper_amdinitreset();
|
||||||
|
|
||||||
|
post_code(0x39);
|
||||||
|
agesawrapper_amdinitearly();
|
||||||
|
|
||||||
|
int s3resume = acpi_is_wakeup_s3();
|
||||||
|
if (!s3resume) {
|
||||||
|
post_code(0x40);
|
||||||
|
agesawrapper_amdinitpost();
|
||||||
|
|
||||||
|
post_code(0x41);
|
||||||
|
agesawrapper_amdinitenv();
|
||||||
|
|
||||||
|
/* TODO: Disable cache is not ok. */
|
||||||
|
disable_cache_as_ram();
|
||||||
|
} else {
|
||||||
|
printk(BIOS_INFO, "S3 detected\n");
|
||||||
|
|
||||||
|
post_code(0x60);
|
||||||
|
agesawrapper_amdinitresume();
|
||||||
|
|
||||||
|
amd_initcpuio();
|
||||||
|
agesawrapper_amds3laterestore();
|
||||||
|
|
||||||
|
post_code(0x61);
|
||||||
|
prepare_for_resume();
|
||||||
|
}
|
||||||
|
|
||||||
|
post_code(0x50);
|
||||||
|
copy_and_run();
|
||||||
|
}
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_DINAR
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15
|
select CPU_AMD_AGESA_FAMILY15
|
||||||
select CPU_AMD_SOCKET_G34
|
select CPU_AMD_SOCKET_G34
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_INAGUA
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_OLIVEHILL
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY16_KB
|
select CPU_AMD_AGESA_FAMILY16_KB
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
||||||
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_PARMER
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15_TN
|
select CPU_AMD_AGESA_FAMILY15_TN
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
||||||
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_PERSIMMON
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_SOUTHSTATION
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_THATCHER
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15_TN
|
select CPU_AMD_AGESA_FAMILY15_TN
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
||||||
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_TORPEDO
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY12
|
select CPU_AMD_AGESA_FAMILY12
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY12
|
select NORTHBRIDGE_AMD_AGESA_FAMILY12
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB900
|
select SOUTHBRIDGE_AMD_CIMX_SB900
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_AMD_UNIONSTATION
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_ASROCK_E350M1
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_ASROCK_IMB_A180
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY16_KB
|
select CPU_AMD_AGESA_FAMILY16_KB
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
||||||
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_ASUS_F2A85_M || BOARD_ASUS_F2A85_M_PRO || BOARD_ASUS_F2A85_M_LE
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15_TN
|
select CPU_AMD_AGESA_FAMILY15_TN
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
||||||
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_ODE_E20XX
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY16_KB
|
select CPU_AMD_AGESA_FAMILY16_KB
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
||||||
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
||||||
|
|
|
@ -19,6 +19,7 @@ if BOARD_BIOSTAR_AM1ML
|
||||||
config BOARD_SPECIFIC_OPTIONS
|
config BOARD_SPECIFIC_OPTIONS
|
||||||
def_bool y
|
def_bool y
|
||||||
select BOARD_ROMSIZE_KB_4096
|
select BOARD_ROMSIZE_KB_4096
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY16_KB
|
select CPU_AMD_AGESA_FAMILY16_KB
|
||||||
select FORCE_AM1_SOCKET_SUPPORT
|
select FORCE_AM1_SOCKET_SUPPORT
|
||||||
select GFXUMA
|
select GFXUMA
|
||||||
|
|
|
@ -29,6 +29,7 @@ if BOARD_ELMEX_PCM205400 || BOARD_ELMEX_PCM205401
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_GIZMOSPHERE_GIZMO
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_GIZMOSPHERE_GIZMO2
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY16_KB
|
select CPU_AMD_AGESA_FAMILY16_KB
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
||||||
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_HP_ABM
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY16_KB
|
select CPU_AMD_AGESA_FAMILY16_KB
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
select NORTHBRIDGE_AMD_AGESA_FAMILY16_KB
|
||||||
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
select SOUTHBRIDGE_AMD_AGESA_YANGTZE
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_HP_PAVILION_M6_1035DX
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
select SYSTEM_TYPE_LAPTOP
|
select SYSTEM_TYPE_LAPTOP
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15_TN
|
select CPU_AMD_AGESA_FAMILY15_TN
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
||||||
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_JETWAY_NF81_T56N_LF
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_LENOVO_G505S
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
select SYSTEM_TYPE_LAPTOP
|
select SYSTEM_TYPE_LAPTOP
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15_RL
|
select CPU_AMD_AGESA_FAMILY15_RL
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15_RL
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15_RL
|
||||||
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_LIPPERT_FRONTRUNNER_AF
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_LIPPERT_TOUCAN_AF
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -20,6 +20,7 @@ if BOARD_MSI_MS7721
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15_TN
|
select CPU_AMD_AGESA_FAMILY15_TN
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15_TN
|
||||||
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
select SOUTHBRIDGE_AMD_AGESA_HUDSON
|
||||||
|
|
|
@ -18,6 +18,7 @@ if BOARD_PCENGINES_APU1
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS # dummy
|
config BOARD_SPECIFIC_OPTIONS # dummy
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY14
|
select CPU_AMD_AGESA_FAMILY14
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
select NORTHBRIDGE_AMD_AGESA_FAMILY14
|
||||||
select SOUTHBRIDGE_AMD_CIMX_SB800
|
select SOUTHBRIDGE_AMD_CIMX_SB800
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_SUPERMICRO_H8QGI
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS
|
config BOARD_SPECIFIC_OPTIONS
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15
|
select CPU_AMD_AGESA_FAMILY15
|
||||||
select CPU_AMD_SOCKET_G34
|
select CPU_AMD_SOCKET_G34
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_SUPERMICRO_H8SCM
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS
|
config BOARD_SPECIFIC_OPTIONS
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15
|
select CPU_AMD_AGESA_FAMILY15
|
||||||
select CPU_AMD_SOCKET_C32
|
select CPU_AMD_SOCKET_C32
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
||||||
|
|
|
@ -17,6 +17,7 @@ if BOARD_TYAN_S8226
|
||||||
|
|
||||||
config BOARD_SPECIFIC_OPTIONS
|
config BOARD_SPECIFIC_OPTIONS
|
||||||
def_bool y
|
def_bool y
|
||||||
|
select AGESA_LEGACY
|
||||||
select CPU_AMD_AGESA_FAMILY15
|
select CPU_AMD_AGESA_FAMILY15
|
||||||
select CPU_AMD_SOCKET_C32
|
select CPU_AMD_SOCKET_C32
|
||||||
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
select NORTHBRIDGE_AMD_AGESA_FAMILY15
|
||||||
|
|
|
@ -0,0 +1,28 @@
|
||||||
|
/*
|
||||||
|
* This file is part of the coreboot project.
|
||||||
|
*
|
||||||
|
* Copyright (C) 2016 Kyösti Mälkki
|
||||||
|
*
|
||||||
|
* This program is free software; you can redistribute it and/or modify
|
||||||
|
* it under the terms of the GNU General Public License as published by
|
||||||
|
* the Free Software Foundation; version 2 of the License.
|
||||||
|
*
|
||||||
|
* This program is distributed in the hope that it will be useful,
|
||||||
|
* but WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
* GNU General Public License for more details.
|
||||||
|
*/
|
||||||
|
|
||||||
|
#ifndef _STATE_MACHINE_H_
|
||||||
|
#define _STATE_MACHINE_H_
|
||||||
|
|
||||||
|
#include <stdint.h>
|
||||||
|
|
||||||
|
struct sysinfo
|
||||||
|
{
|
||||||
|
int s3resume;
|
||||||
|
};
|
||||||
|
|
||||||
|
void board_BeforeAgesa(struct sysinfo *cb);
|
||||||
|
|
||||||
|
#endif /* _STATE_MACHINE_H_ */
|
Loading…
Reference in New Issue