coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
ramstage.c
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <baseboard/variants.h>
4 #include <ec/ec.h>
5 #include <soc/gpio.h>
6 #include <soc/ramstage.h>
7 #include <variant/gpio.h>
8 
9 void mainboard_silicon_init_params(FSPS_UPD *supd)
10 {
12 }
13 
15 {
16  /* Override dev tree settings per board */
17 }
18 
20 {
21  /* Default weak implementation */
22 }
23 
25 {
26  /* Override mainboard settings per board */
27 }
28 
29 static void mainboard_init(struct device *dev)
30 {
32 }
33 
34 static void mainboard_enable(struct device *dev)
35 {
36  dev->ops->init = mainboard_init;
38 }
39 
40 static void mainboard_chip_init(void *chip_info)
41 {
42  const struct pad_config *base_table;
43  const struct pad_config *override_table;
44  size_t base_gpios;
45  size_t override_gpios;
46 
47  base_table = base_gpio_table(&base_gpios);
48  override_table = override_gpio_table(&override_gpios);
49 
51  base_gpios,
52  override_table,
53  override_gpios);
54 
56 }
57 
60  .enable_dev = mainboard_enable,
61 };
__weak void mainboard_silicon_init_params(SILICON_INIT_UPD *params)
Definition: ramstage.c:162
void mainboard_ec_init(void)
Definition: ec.c:8
struct chip_operations mainboard_ops
Definition: ramstage.c:11
static const struct pad_config override_gpio_table[]
Definition: gpio.c:9
void variant_devtree_update(void)
Definition: ramstage.c:63
static const struct soc_amd_gpio base_gpio_table[]
Definition: gpio.c:11
static void mainboard_init(struct device *dev)
Definition: ramstage.c:29
void __weak variant_ramstage_init(void)
Definition: ramstage.c:19
static void mainboard_chip_init(void *chip_info)
Definition: ramstage.c:40
void __weak variant_mainboard_enable(struct device *dev)
Definition: ramstage.c:24
static void mainboard_enable(struct device *dev)
Definition: ramstage.c:34
const struct smm_save_state_ops *legacy_ops __weak
Definition: save_state.c:8
void gpio_configure_pads_with_override(const struct soc_amd_gpio *base_cfg, size_t base_num_pads, const struct soc_amd_gpio *override_cfg, size_t override_num_pads)
Definition: gpio.c:262
void(* init)(void *chip_info)
Definition: device.h:25
void(* init)(struct device *dev)
Definition: device.h:42
Definition: device.h:107
struct device_operations * ops
Definition: device.h:143