coreboot
coreboot is an Open Source project aimed at replacing the proprietary BIOS found in most computers.
memory.c
Go to the documentation of this file.
1 /* SPDX-License-Identifier: GPL-2.0-only */
2 
3 #include <baseboard/variants.h>
4 
5 /* DQ byte map */
6 static const u8 dq_map[][12] = {
7  { 0x0F, 0xF0, 0x00, 0xF0, 0x0F, 0xF0,
8  0x0F, 0x00, 0xFF, 0x00, 0xFF, 0x00 },
9  { 0x33, 0xCC, 0x00, 0xCC, 0x33, 0xCC,
10  0x33, 0x00, 0xFF, 0x00, 0xFF, 0x00 }
11 };
12 
13 /* DQS CPU<>DRAM map */
14 static const u8 dqs_map[][8] = {
15  { 0, 1, 3, 2, 4, 5, 6, 7 },
16  { 3, 2, 6, 7, 0, 1, 4, 5 },
17 };
18 
19 /* Rcomp resistor */
20 static const u16 rcomp_resistor[] = { 200, 81, 162 };
21 
22 /* Rcomp target */
23 static const u16 rcomp_target[] = { 100, 30, 40, 23, 40 };
24 
26 {
27  p->type = MEMORY_LPDDR3;
28  p->dq_map = dq_map;
29  p->dq_map_size = sizeof(dq_map);
30  p->dqs_map = dqs_map;
31  p->dqs_map_size = sizeof(dqs_map);
35  p->rcomp_target_size = sizeof(rcomp_target);
36 }
@ MEMORY_LPDDR3
Definition: variants.h:26
const struct mb_cfg *__weak variant_memory_params(void)
Definition: memory.c:67
static const u16 rcomp_target[]
Definition: memory.c:23
static const u8 dqs_map[][8]
Definition: memory.c:14
static const u16 rcomp_resistor[]
Definition: memory.c:20
static const u8 dq_map[][12]
Definition: memory.c:6
uint16_t u16
Definition: stdint.h:48
uint8_t u8
Definition: stdint.h:45
size_t dq_map_size
Definition: variants.h:34
enum memory_type type
Definition: variants.h:32
const void * rcomp_target
Definition: variants.h:39
size_t dqs_map_size
Definition: variants.h:36
const void * rcomp_resistor
Definition: variants.h:37
size_t rcomp_resistor_size
Definition: variants.h:38
const void * dq_map
Definition: variants.h:33
size_t rcomp_target_size
Definition: variants.h:40
const void * dqs_map
Definition: variants.h:35