coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
mainboard.c
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
3
#include <
ec/google/chromeec/ec.h
>
4
#include <baseboard/variants.h>
5
#include <
boardid.h
>
6
#include <
cbfs.h
>
7
#include <gpio.h>
8
#include <smbios.h>
9
#include <variant/gpio.h>
10
11
uint32_t
sku_id
(
void
)
12
{
13
static
int
sku
= -1;
14
15
if
(
sku
== -1)
16
sku
=
google_chromeec_get_sku_id
();
17
18
return
sku
;
19
}
20
21
uint8_t
variant_board_sku
(
void
)
22
{
23
return
sku_id
();
24
}
25
26
void
variant_mainboard_suspend_resume
(
void
)
27
{
28
/* Enable backlight - GPIO 133 active low */
29
gpio_set
(
GPIO_133
, 0);
30
}
31
32
const
char
*
smbios_mainboard_manufacturer
(
void
)
33
{
34
static
char
oem_bin_data
[11];
35
static
const
char
*manuf;
36
37
if
(!
CONFIG
(USE_OEM_BIN))
38
return
CONFIG_MAINBOARD_SMBIOS_MANUFACTURER;
39
40
if
(manuf)
41
return
manuf;
42
43
if
(
cbfs_load
(
"oem.bin"
,
oem_bin_data
,
sizeof
(
oem_bin_data
) - 1))
44
manuf = &
oem_bin_data
[0];
45
else
46
manuf = CONFIG_MAINBOARD_SMBIOS_MANUFACTURER;
47
48
return
manuf;
49
}
boardid.h
cbfs.h
cbfs_load
static size_t cbfs_load(const char *name, void *buf, size_t size)
Definition:
cbfs.h:282
CONFIG
@ CONFIG
Definition:
dsi_common.h:201
google_chromeec_get_sku_id
uint32_t google_chromeec_get_sku_id(void)
Definition:
ec.c:934
ec.h
variant_board_sku
uint8_t __weak variant_board_sku(void)
Definition:
mainboard.c:172
variant_mainboard_suspend_resume
void __weak variant_mainboard_suspend_resume(void)
Definition:
mainboard.c:177
smbios_mainboard_manufacturer
const char * smbios_mainboard_manufacturer(void)
Definition:
mainboard.c:32
sku_id
uint32_t sku_id(void)
Definition:
mainboard.c:11
sku
enum project_sku sku
Definition:
mainboard.c:51
oem_bin_data
static char oem_bin_data[200]
Definition:
mainboard.c:141
gpio_set
void gpio_set(gpio_t gpio, int value)
Definition:
gpio.c:174
GPIO_133
#define GPIO_133
Definition:
gpio.h:97
uint32_t
unsigned int uint32_t
Definition:
stdint.h:14
uint8_t
unsigned char uint8_t
Definition:
stdint.h:8
src
mainboard
google
kahlee
variants
baseboard
mainboard.c
Generated by
1.9.1