From 69da75411218c705b6b7375664523be707cb5258 Mon Sep 17 00:00:00 2001 From: Jessy Jiang Date: Tue, 2 Mar 2021 16:56:07 +0800 Subject: [PATCH] mb/google/kukui: Add Micron 4GB discrete LPDDR4X DDR support Support 4G+128G MT29VZZZAD9GQFSM-046 W.9S9 discrete DDR bootup. BUG=b:162292216 BRANCH=kukui TEST=Boots correctly on Kukui. Signed-off-by: Jessy Jiang Change-Id: I5657a007154bc52c6f0f27e1de6e3294a5e74ad7 Reviewed-on: https://review.coreboot.org/c/coreboot/+/48686 Tested-by: build bot (Jenkins) Reviewed-by: Yu-Ping Wu --- src/mainboard/google/kukui/sdram_configs.c | 1 + .../google/kukui/sdram_params/Makefile.inc | 1 + .../sdram-lpddr4x-MT29VZZZAD9GQFSM-046-4GB.c | 27 +++++++++++++++++++ 3 files changed, 29 insertions(+) create mode 100644 src/mainboard/google/kukui/sdram_params/sdram-lpddr4x-MT29VZZZAD9GQFSM-046-4GB.c diff --git a/src/mainboard/google/kukui/sdram_configs.c b/src/mainboard/google/kukui/sdram_configs.c index d0b52458f8..a2c80e7ba5 100644 --- a/src/mainboard/google/kukui/sdram_configs.c +++ b/src/mainboard/google/kukui/sdram_configs.c @@ -23,6 +23,7 @@ static const char *const sdram_configs[] = { [0x08] = "sdram-lpddr4x-K4UBE3D4AA-MGCL-4GB", [0x09] = "sdram-lpddr4x-MT53E2G32D4NQ-046-8GB", [0x0a] = "sdram-lpddr4x-H9HCNNNCPMMLXR-NEE-4GB", + [0x0b] = "sdram-lpddr4x-MT29VZZZAD9GQFSM-046-4GB", /* Table shared by Burnet and its variants, Fennel and Cerise, offset = 0x10 */ [0x10] = "sdram-lpddr4x-K4UBE3D4AA-MGCR-4GB", diff --git a/src/mainboard/google/kukui/sdram_params/Makefile.inc b/src/mainboard/google/kukui/sdram_params/Makefile.inc index eaba5825f3..4117bf26ae 100644 --- a/src/mainboard/google/kukui/sdram_params/Makefile.inc +++ b/src/mainboard/google/kukui/sdram_params/Makefile.inc @@ -13,6 +13,7 @@ sdram-params += sdram-lpddr4x-SDADA4CR-128G-4GB sdram-params += sdram-lpddr4x-H9HCNNNFAMMLXR-NEE-8GB sdram-params += sdram-lpddr4x-MT53E1G32D2NP-046-4GB sdram-params += sdram-lpddr4x-MT29VZZZCD9GQKPR-046-8GB +sdram-params += sdram-lpddr4x-MT29VZZZAD9GQFSM-046-4GB $(foreach params,$(sdram-params), \ $(eval cbfs-files-y += $(params)) \ diff --git a/src/mainboard/google/kukui/sdram_params/sdram-lpddr4x-MT29VZZZAD9GQFSM-046-4GB.c b/src/mainboard/google/kukui/sdram_params/sdram-lpddr4x-MT29VZZZAD9GQFSM-046-4GB.c new file mode 100644 index 0000000000..0caa1302cb --- /dev/null +++ b/src/mainboard/google/kukui/sdram_params/sdram-lpddr4x-MT29VZZZAD9GQFSM-046-4GB.c @@ -0,0 +1,27 @@ +/* SPDX-License-Identifier: GPL-2.0-only */ + +#include + +struct sdram_params params = { + .source = DRAMC_PARAM_SOURCE_SDRAM_CONFIG, + .ddr_geometry = DDR_TYPE_2CH_1RK_4GB_4, + .frequency = 1600, + .wr_level = { + [CHANNEL_A] = { {0x21, 0x21}, {0x20, 0x20} }, + [CHANNEL_B] = { {0x21, 0x28}, {0x21, 0x29} } + }, + .cbt_cs_dly = { + [CHANNEL_A] = {0x2, 0x2}, + [CHANNEL_B] = {0x2, 0x2} + }, + .cbt_final_vref = { + [CHANNEL_A] = {0x5E, 0x5E}, + [CHANNEL_B] = {0x5E, 0x5C} + }, + .emi_cona_val = 0xF053F154, + .emi_conh_val = 0x44440003, + .emi_conf_val = 0x00421000, + .chn_emi_cona_val = {0x0444F051, 0x0444F051}, + .cbt_mode_extern = CBT_NORMAL_MODE, + .delay_cell_unit = 868, +};