coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
pei_data.c
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
3
#include <
soc/pei_data.h
>
4
#include <soc/pei_wrapper.h>
5
6
void
mainboard_fill_spd_data
(
struct
pei_data
*
pei_data
)
7
{
8
pei_data
->
dq_pins_interleaved
= 1;
9
10
/* One DIMM slot */
11
pei_data
->
dimm_channel0_disabled
= 2;
12
pei_data
->
dimm_channel1_disabled
= 2;
13
14
pei_data
->
spd_addresses
[0] = 0xa0;
15
pei_data
->
spd_addresses
[2] = 0xa4;
16
}
17
18
void
mainboard_fill_pei_data
(
struct
pei_data
*
pei_data
)
19
{
20
pei_data
->
ec_present
= 1;
21
22
/* P1: Right Side Port (USB2) */
23
pei_data_usb2_port
(
pei_data
, 0, 0x0080, 1,
USB_OC_PIN_SKIP
,
USB_PORT_BACK_PANEL
);
24
/* P2: Right Side Port (USB2) */
25
pei_data_usb2_port
(
pei_data
, 1, 0x0080, 1,
USB_OC_PIN_SKIP
,
USB_PORT_BACK_PANEL
);
26
/* P3: Left Side Port (USB2 only) */
27
pei_data_usb2_port
(
pei_data
, 2, 0x0080, 1,
USB_OC_PIN_SKIP
,
USB_PORT_BACK_PANEL
);
28
/* P4: Left Side Port (USB2 only) */
29
pei_data_usb2_port
(
pei_data
, 3, 0x0080, 1,
USB_OC_PIN_SKIP
,
USB_PORT_BACK_PANEL
);
30
/* P5: Empty */
31
pei_data_usb2_port
(
pei_data
, 4, 0x0080, 0,
USB_OC_PIN_SKIP
,
USB_PORT_BACK_PANEL
);
32
/* P6: Bluetooth */
33
pei_data_usb2_port
(
pei_data
, 5, 0x0080, 1,
USB_OC_PIN_SKIP
,
USB_PORT_SKIP
);
34
/* P7: Camera */
35
pei_data_usb2_port
(
pei_data
, 6, 0x0080, 1,
USB_OC_PIN_SKIP
,
USB_PORT_SKIP
);
36
/* P8: SD Card */
37
pei_data_usb2_port
(
pei_data
, 7, 0x0080, 1,
USB_OC_PIN_SKIP
,
USB_PORT_BACK_PANEL
);
38
39
/* P1: Right Side Port (USB3) */
40
pei_data_usb3_port
(
pei_data
, 0, 1,
USB_OC_PIN_SKIP
, 0);
41
/* P2: Right Side Port (USB3) */
42
pei_data_usb3_port
(
pei_data
, 1, 1,
USB_OC_PIN_SKIP
, 0);
43
/* P3: Empty */
44
pei_data_usb3_port
(
pei_data
, 2, 0,
USB_OC_PIN_SKIP
, 0);
45
/* P4: Empty */
46
pei_data_usb3_port
(
pei_data
, 3, 0,
USB_OC_PIN_SKIP
, 0);
47
}
pei_data_usb2_port
static void pei_data_usb2_port(struct pei_data *pei_data, int port, uint16_t length, uint8_t enable, uint8_t oc_pin, uint8_t location)
Definition:
pei_wrapper.h:10
pei_data_usb3_port
static void pei_data_usb3_port(struct pei_data *pei_data, int port, uint8_t enable, uint8_t oc_pin, uint8_t fixed_eq)
Definition:
pei_wrapper.h:20
mainboard_fill_pei_data
void mainboard_fill_pei_data(struct pei_data *pei_data)
Definition:
pei_data.c:6
mainboard_fill_spd_data
void mainboard_fill_spd_data(struct pei_data *pei_data)
Definition:
pei_data.c:6
pei_data.h
USB_OC_PIN_SKIP
#define USB_OC_PIN_SKIP
Definition:
pei_data.h:27
USB_PORT_BACK_PANEL
@ USB_PORT_BACK_PANEL
Definition:
pei_data.h:30
USB_PORT_SKIP
@ USB_PORT_SKIP
Definition:
pei_data.h:36
pei_data
Definition:
pei_data.h:42
pei_data::dimm_channel0_disabled
int dimm_channel0_disabled
Definition:
pei_data.h:68
pei_data::spd_addresses
uint8_t spd_addresses[4]
Definition:
pei_data.h:60
pei_data::dq_pins_interleaved
int dq_pins_interleaved
Definition:
pei_data.h:72
pei_data::dimm_channel1_disabled
int dimm_channel1_disabled
Definition:
pei_data.h:69
pei_data::ec_present
int ec_present
Definition:
pei_data.h:62
src
mainboard
purism
librem_bdw
variants
librem15v2
pei_data.c
Generated by
1.9.1