coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
bootblock.c
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <bootblock_common.h>
4 #include <console/console.h>
5 #include <intelblocks/fast_spi.h>
7 #include <intelblocks/tco.h>
8 #include <intelblocks/uart.h>
9 #include <intelpch/smbus.h>
10 #include <soc/bootblock.h>
11 
13 {
14  /* Call lib/bootblock.c main */
15  bootblock_main_with_basetime(base_timestamp);
16 }
17 
19 {
24  if (CONFIG(INTEL_LPSS_UART_FOR_CONSOLE))
26 }
27 
29 {
32 
33  /* Programming TCO_BASE_ADDRESS and TCO Timer Halt */
34  tco_configure();
35  if (CONFIG(SOC_INTEL_ELKHARTLAKE_TCO_NO_REBOOT_EN)) {
37  /* NO_REBOOT is enabled via bit 0 in TCO1_CNT. */
38  reg |= 0x01;
39  tco_write_reg(TCO1_CNT, reg);
40  printk(BIOS_DEBUG, "TCO: Disable reset on second expiration.\n");
41  }
42 }
#define asmlinkage
Definition: cpu.h:8
void bootblock_systemagent_early_init(void)
#define printk(level,...)
Definition: stdlib.h:16
void bootblock_soc_early_init(void)
Definition: bootblock.c:20
void bootblock_soc_init(void)
Definition: bootblock.c:27
asmlinkage void bootblock_c_entry(uint64_t base_timestamp)
Definition: bootblock.c:26
@ CONFIG
Definition: dsi_common.h:201
void fast_spi_cache_bios_region(void)
Definition: fast_spi.c:292
void bootblock_main_with_basetime(uint64_t base_timestamp)
Definition: bootblock.c:71
#define BIOS_DEBUG
BIOS_DEBUG - Verbose output.
Definition: loglevel.h:128
void report_platform_info(void)
void bootblock_pch_init(void)
Definition: pch.c:114
void bootblock_pch_early_init(void)
Definition: pch.c:59
void pch_early_iorange_init(void)
Definition: pch.c:98
#define TCO1_CNT
Definition: smbus.h:12
void uart_bootblock_init(void)
Definition: uart.c:97
uint16_t tco_read_reg(uint16_t tco_reg)
Definition: tco.c:32
void tco_configure(void)
Definition: tco.c:130
void tco_write_reg(uint16_t tco_reg, uint16_t value)
Definition: tco.c:41
unsigned short uint16_t
Definition: stdint.h:11
unsigned long long uint64_t
Definition: stdint.h:17