reset: Finalize move to new API
Move soft_reset() to `southbridge/amd/common/` it's only used for amdfam10 now. Drop hard_reset() for good. Change-Id: Ifdc5791160653c5578007f6c1b96015efe2b3e1e Signed-off-by: Nico Huber <nico.h@gmx.de> Reviewed-on: https://review.coreboot.org/29059 Tested-by: build bot (Jenkins) <no-reply@coreboot.org> Reviewed-by: Aaron Durbin <adurbin@chromium.org>
This commit is contained in:
parent
30cf14ff3f
commit
718c6faff4
|
@ -449,13 +449,6 @@ config RESUME_PATH_SAME_AS_BOOT
|
|||
same path as a regular boot. e.g. an x86 system runs from the
|
||||
reset vector at 0xfffffff0 on both resume and warm/cold boot.
|
||||
|
||||
config HAVE_HARD_RESET
|
||||
bool
|
||||
default n
|
||||
help
|
||||
This variable specifies whether a given board has a hard_reset
|
||||
function, no matter if it's provided by board code or chipset code.
|
||||
|
||||
config HAVE_ROMSTAGE_CONSOLE_SPINLOCK
|
||||
bool
|
||||
depends on EARLY_CBMEM_INIT
|
||||
|
|
|
@ -27,6 +27,8 @@
|
|||
#include <northbridge/amd/amdht/porting.h>
|
||||
#include <northbridge/amd/amdht/h3ncmn.h>
|
||||
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
|
||||
#if IS_ENABLED(CONFIG_SOUTHBRIDGE_AMD_SB700)
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#endif
|
||||
|
|
|
@ -39,14 +39,4 @@ __noreturn void board_reset(void);
|
|||
*/
|
||||
void do_board_reset(void);
|
||||
|
||||
/* Full board reset. Resets SoC and most/all board components (e.g. DRAM). */
|
||||
__noreturn void hard_reset(void);
|
||||
/* Board reset. Resets SoC some board components (e.g. TPM but not DRAM). */
|
||||
__noreturn void soft_reset(void);
|
||||
|
||||
/* Reset implementations. Implement these in SoC or mainboard code. Implement
|
||||
at least hard_reset() if possible, others fall back to it if necessary. */
|
||||
void do_hard_reset(void);
|
||||
void do_soft_reset(void);
|
||||
|
||||
#endif
|
||||
|
|
|
@ -31,39 +31,4 @@ void do_board_reset(void)
|
|||
{
|
||||
printk(BIOS_CRIT, "No board_reset implementation, hanging...\n");
|
||||
}
|
||||
#else
|
||||
/*
|
||||
* Fall back to hard_reset() for a regression free transition.
|
||||
* FIXME: Remove after everything is converted to board_reset().
|
||||
*/
|
||||
__weak void do_board_reset(void)
|
||||
{
|
||||
hard_reset();
|
||||
}
|
||||
#endif
|
||||
|
||||
__noreturn static void __hard_reset(void) {
|
||||
if (IS_ENABLED(CONFIG_HAVE_HARD_RESET))
|
||||
do_hard_reset();
|
||||
else
|
||||
printk(BIOS_CRIT, "No hard_reset implementation, hanging...\n");
|
||||
halt();
|
||||
}
|
||||
|
||||
/* Not all platforms implement all reset types. Fall back to hard_reset. */
|
||||
__weak void do_soft_reset(void) { __hard_reset(); }
|
||||
|
||||
void hard_reset(void)
|
||||
{
|
||||
printk(BIOS_INFO, "%s() called!\n", __func__);
|
||||
dcache_clean_all();
|
||||
__hard_reset();
|
||||
}
|
||||
|
||||
void soft_reset(void)
|
||||
{
|
||||
printk(BIOS_INFO, "%s() called!\n", __func__);
|
||||
dcache_clean_all();
|
||||
do_soft_reset();
|
||||
halt();
|
||||
}
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdht/ht_wrapper.h>
|
||||
#include <cpu/amd/family_10h-family_15h/init_cpus.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb800/smbus.h>
|
||||
#include <southbridge/amd/sb800/sb800.h>
|
||||
#include <southbridge/amd/rs780/rs780.h>
|
||||
|
@ -50,7 +51,6 @@
|
|||
#include "resourcemap.c"
|
||||
#include "cpu/amd/quadcore/quadcore.c"
|
||||
#include "spd.h"
|
||||
#include <reset.h>
|
||||
|
||||
#define SERIAL_DEV PNP_DEV(0x2e, W83627HF_SP1)
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb800/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdht/ht_wrapper.h>
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
|
|
|
@ -38,6 +38,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
#include <reset.h>
|
||||
#include <device/pci_def.h>
|
||||
#include <device/pci_ids.h>
|
||||
#include <arch/io.h>
|
||||
|
@ -39,6 +38,7 @@
|
|||
#include <smp/spinlock.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <southbridge/amd/sr5650/sr5650.h>
|
||||
|
|
|
@ -22,7 +22,6 @@
|
|||
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
#include <reset.h>
|
||||
#include <device/pci_def.h>
|
||||
#include <device/pci_ids.h>
|
||||
#include <arch/io.h>
|
||||
|
@ -36,6 +35,7 @@
|
|||
#include <cpu/amd/model_10xxx_rev.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/nvidia/ck804/early_smbus.h>
|
||||
#include <delay.h>
|
||||
#include <cpu/x86/lapic.h>
|
||||
|
|
|
@ -19,7 +19,6 @@
|
|||
|
||||
#include <stdint.h>
|
||||
#include <string.h>
|
||||
#include <reset.h>
|
||||
#include <device/pci_def.h>
|
||||
#include <device/pci_ids.h>
|
||||
#include <arch/io.h>
|
||||
|
@ -39,6 +38,7 @@
|
|||
#include <cpu/amd/car.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <smp/spinlock.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <southbridge/amd/sr5650/sr5650.h>
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb800/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdht/ht_wrapper.h>
|
||||
|
@ -48,7 +49,6 @@
|
|||
#include <southbridge/amd/rs780/rs780.h>
|
||||
#include "southbridge/amd/sb800/early_setup.c"
|
||||
#include "spd.h"
|
||||
#include <reset.h>
|
||||
|
||||
#include "resourcemap.c"
|
||||
#include "cpu/amd/quadcore/quadcore.c"
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb800/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdht/ht_wrapper.h>
|
||||
|
@ -44,7 +45,6 @@
|
|||
#include <arch/early_variables.h>
|
||||
#include <cbmem.h>
|
||||
#include "spd.h"
|
||||
#include <reset.h>
|
||||
#include <southbridge/amd/rs780/rs780.h>
|
||||
#include <southbridge/amd/sb800/early_setup.c>
|
||||
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
|
|
|
@ -36,6 +36,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <spd.h>
|
||||
|
|
|
@ -49,6 +49,7 @@
|
|||
#include <cpu/amd/family_10h-family_15h/init_cpus.h>
|
||||
#include <arch/early_variables.h>
|
||||
#include <cbmem.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include "southbridge/broadcom/bcm5785/early_smbus.c"
|
||||
#include "southbridge/broadcom/bcm5785/early_setup.c"
|
||||
|
||||
|
|
|
@ -39,6 +39,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <spd.h>
|
||||
|
|
|
@ -40,6 +40,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <spd.h>
|
||||
|
|
|
@ -42,6 +42,7 @@
|
|||
#include <cpu/amd/family_10h-family_15h/init_cpus.h>
|
||||
#include <arch/early_variables.h>
|
||||
#include <cbmem.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/nvidia/mcp55/mcp55.h>
|
||||
|
||||
#include "resourcemap.c"
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include <cpu/x86/bist.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdht/ht_wrapper.h>
|
||||
#include <cpu/amd/family_10h-family_15h/init_cpus.h>
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include <cpu/x86/bist.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdht/ht_wrapper.h>
|
||||
#include <cpu/amd/family_10h-family_15h/init_cpus.h>
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include <cpu/amd/msr.h>
|
||||
#include <cpu/amd/mtrr.h>
|
||||
#include <cpu/amd/car.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <southbridge/amd/sb700/sb700.h>
|
||||
#include <southbridge/amd/sb700/smbus.h>
|
||||
#include <southbridge/amd/sr5650/sr5650.h>
|
||||
|
|
|
@ -37,6 +37,7 @@
|
|||
#include <superio/winbond/common/winbond.h>
|
||||
#include <superio/winbond/w83627hf/w83627hf.h>
|
||||
#include <cpu/x86/bist.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdht/ht_wrapper.h>
|
||||
#include <cpu/amd/family_10h-family_15h/init_cpus.h>
|
||||
|
|
|
@ -36,7 +36,7 @@
|
|||
#include <northbridge/amd/amdfam10/debug.h>
|
||||
#include <northbridge/amd/amdfam10/raminit.h>
|
||||
#include <northbridge/amd/amdfam10/amdfam10.h>
|
||||
#include <reset.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include <cpu/x86/msr.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <arch/acpi.h>
|
||||
|
|
|
@ -18,7 +18,7 @@ config VBOOT
|
|||
bool "Verify firmware with vboot."
|
||||
default n
|
||||
select VBOOT_MOCK_SECDATA if !TPM1 && !TPM2
|
||||
depends on HAVE_HARD_RESET || !MISSING_BOARD_RESET
|
||||
depends on !MISSING_BOARD_RESET
|
||||
help
|
||||
Enabling VBOOT will use vboot to verify the components of the firmware
|
||||
(stages, payload, etc).
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
|
||||
#include "amd8111.h"
|
||||
#include <reset.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
|
||||
unsigned get_sbdn(unsigned bus)
|
||||
{
|
||||
|
|
|
@ -0,0 +1,35 @@
|
|||
/*
|
||||
* This file is part of the coreboot project.
|
||||
*
|
||||
* Copyright 2017 Google, 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.
|
||||
*/
|
||||
|
||||
#ifndef _AMD_SB_RESET_H_
|
||||
#define _AMD_SB_RESET_H_
|
||||
|
||||
#include <arch/cache.h>
|
||||
#include <console/console.h>
|
||||
#include <halt.h>
|
||||
|
||||
/* Implement the bare reset, e.g. write to cf9. */
|
||||
void do_soft_reset(void);
|
||||
|
||||
/* Prepare for reset, run do_soft_reset(), halt. */
|
||||
static inline __noreturn void soft_reset(void)
|
||||
{
|
||||
printk(BIOS_INFO, "%s() called!\n", __func__);
|
||||
dcache_clean_all();
|
||||
do_soft_reset();
|
||||
halt();
|
||||
}
|
||||
|
||||
#endif /* _AMD_SB_RESET_H_ */
|
|
@ -18,6 +18,7 @@
|
|||
|
||||
#include <arch/io.h>
|
||||
#include <reset.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
|
||||
#define HT_INIT_CONTROL 0x6C
|
||||
#define HTIC_BIOSR_Detect (1<<5)
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
#include <reset.h>
|
||||
#include <arch/cpu.h>
|
||||
#include <southbridge/amd/common/amd_defs.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include "sb800.h"
|
||||
#include "smbus.c"
|
||||
|
||||
|
|
|
@ -22,7 +22,7 @@
|
|||
#include <cpu/x86/msr.h>
|
||||
#include <cpu/amd/msr.h>
|
||||
#include <option.h>
|
||||
#include <reset.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include "sr5650.h"
|
||||
#include "cmn.h"
|
||||
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
*/
|
||||
|
||||
#include <reset.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include "bcm5785.h"
|
||||
|
||||
static void bcm5785_enable_lpc(void)
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
*/
|
||||
|
||||
#include <reset.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include "ck804.h"
|
||||
|
||||
static int set_ht_link_ck804(u8 ht_c_num)
|
||||
|
|
|
@ -16,6 +16,7 @@
|
|||
* GNU General Public License for more details.
|
||||
*/
|
||||
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include "ck804.h"
|
||||
|
||||
/* Someone messed up and snuck in some K8-specific code */
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
#include <console/console.h>
|
||||
#include <reset.h>
|
||||
#include <northbridge/amd/amdfam10/amdfam10.h>
|
||||
#include <southbridge/amd/common/reset.h>
|
||||
#include "mcp55.h"
|
||||
|
||||
void do_soft_reset(void)
|
||||
|
|
Loading…
Reference in New Issue