coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
romstage.c
Go to the documentation of this file.
1
/* SPDX-License-Identifier: GPL-2.0-only */
2
3
#include <soc/romstage.h>
4
#include <baseboard/variants.h>
5
#include <
mainboard/google/cyan/spd/spd_util.h
>
6
7
void
variant_memory_init_params
(MEMORY_INIT_UPD *
memory_params
)
8
{
9
int
ram_id =
get_ramid
();
10
11
/*
12
* RAMID = 4 - 4GiB Micron MT52L256M32D1PF
13
* RAMID = 12 - 2GiB Micron MT52L256M32D1PF
14
*/
15
if
(ram_id == 4 || ram_id == 12) {
16
17
/*
18
* For new micron part, it requires read/receive
19
* enable training before sending cmds to get MR8.
20
* To override dram geometry settings as below:
21
*
22
* PcdDramWidth = x32
23
* PcdDramDensity = 8Gb
24
* PcdDualRankDram = disable
25
*/
26
memory_params
->PcdRxOdtLimitChannel0 = 1;
27
memory_params
->PcdRxOdtLimitChannel1 = 1;
28
memory_params
->PcdDisableAutoDetectDram = 1;
29
memory_params
->PcdDramWidth = 2;
30
memory_params
->PcdDramDensity = 3;
31
memory_params
->PcdDualRankDram = 0;
32
}
33
}
spd_util.h
variant_memory_init_params
__weak void variant_memory_init_params(MEMORY_INIT_UPD *memory_params)
Definition:
romstage.c:18
get_ramid
__weak uint8_t get_ramid(void)
Definition:
spd.c:17
memory_params
Definition:
variants.h:31
src
mainboard
google
cyan
variants
banon
romstage.c
Generated by
1.9.1