coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
memory.c File Reference
#include <baseboard/variants.h>
#include <baseboard/gpio.h>
#include <gpio.h>
#include <soc/meminit.h>
#include <soc/romstage.h>
Include dependency graph for memory.c:

Go to the source code of this file.

Functions

const struct mb_cfg *__weak variant_memcfg_config (void)
 
int __weak variant_memory_sku (void)
 
bool __weak variant_mem_is_half_populated (void)
 Get data whether memory channel is half-populated or not. More...
 

Variables

static const struct mb_cfg baseboard_memcfg_cfg
 

Function Documentation

◆ variant_mem_is_half_populated()

bool __weak variant_mem_is_half_populated ( void  )

Get data whether memory channel is half-populated or not.

Returns
false on boards where memory channel is half-populated, true otherwise.

Definition at line 63 of file memory.c.

◆ variant_memcfg_config()

const struct mb_cfg* __weak variant_memcfg_config ( void  )

Definition at line 46 of file memory.c.

◆ variant_memory_sku()

int __weak variant_memory_sku ( void  )

Definition at line 51 of file memory.c.

References ARRAY_SIZE, gpio_base2_value(), GPIO_MEM_CONFIG_0, GPIO_MEM_CONFIG_1, GPIO_MEM_CONFIG_2, and GPIO_MEM_CONFIG_3.

Here is the call graph for this function:

Variable Documentation

◆ baseboard_memcfg_cfg

const struct mb_cfg baseboard_memcfg_cfg
static
Initial value:
= {
.dq_map[DDR_CH0] = {
{0xf, 0xf0},
{0xf, 0xf0},
{0xff, 0x0},
{0x0, 0x0},
{0x0, 0x0},
{0x0, 0x0}
},
.dq_map[DDR_CH1] = {
{0xf, 0xf0},
{0xf, 0xf0},
{0xff, 0x0},
{0x0, 0x0},
{0x00, 0x0},
{0x00, 0x0}
},
.dqs_map[DDR_CH0] = {1, 3, 0, 2, 7, 5, 4, 6},
.dqs_map[DDR_CH1] = {3, 1, 2, 0, 4, 5, 7, 6},
.ect = 1,
.UserBd = BOARD_TYPE_MOBILE,
}
@ DDR_CH0
@ DDR_CH1
@ BOARD_TYPE_MOBILE
Definition: romstage.h:14

Definition at line 1 of file memory.c.

Referenced by variant_memcfg_config().