[coreboot-gerrit] Patch set updated for coreboot: ebe9b6c Danger: Apply differences between Brain and Danger

Patrick Georgi (pgeorgi@google.com) gerrit at coreboot.org
Tue Apr 14 15:42:09 CEST 2015


Patrick Georgi (pgeorgi at google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/9647

-gerrit

commit ebe9b6ceac5d92049070255bed68e80d5ade3f3a
Author: David Hendricks <dhendrix at chromium.org>
Date:   Fri Jan 16 12:15:15 2015 -0800

    Danger: Apply differences between Brain and Danger
    
    This applies the differences between Brain and Danger:
    - Danger has an SDMMC slot
    - Danger has a USB hub (TODO)
    - Danger has LVDS (TODO)
    - Add workaround for incorrect RAM_ID strapping
    
    BUG=none
    BRANCH=none
    TEST=emerge-veyron_danger coreboot works
    
    Change-Id: Idec527744de2583613b290e3e88850b33ff1c23d
    Signed-off-by: Stefan Reinauer <reinauer at chromium.org>
    Original-Commit-Id: 89278c2eeae4bae989a3549da627c5bbd5dd0d5a
    Original-Signed-off-by: David Hendricks <dhendrix at chromium.org>
    Original-Change-Id: Iae3f85d4f41e04465a5046f2334c693337d006a4
    Original-Reviewed-on: https://chromium-review.googlesource.com/241712
    Original-Reviewed-by: Julius Werner <jwerner at chromium.org>
---
 src/mainboard/google/veyron_danger/Kconfig         |  2 +-
 src/mainboard/google/veyron_danger/mainboard.c     | 15 +++++++++++++++
 src/mainboard/google/veyron_danger/sdram_configs.c |  7 ++++++-
 3 files changed, 22 insertions(+), 2 deletions(-)

diff --git a/src/mainboard/google/veyron_danger/Kconfig b/src/mainboard/google/veyron_danger/Kconfig
index 96f5550..b11f454 100644
--- a/src/mainboard/google/veyron_danger/Kconfig
+++ b/src/mainboard/google/veyron_danger/Kconfig
@@ -43,7 +43,7 @@ config MAINBOARD_DIR
 
 config MAINBOARD_PART_NUMBER
 	string
-	default "Veyron_Brain"
+	default "Veyron_Danger"
 
 config MAINBOARD_VENDOR
 	string
diff --git a/src/mainboard/google/veyron_danger/mainboard.c b/src/mainboard/google/veyron_danger/mainboard.c
index 3d49878..4d817e6 100644
--- a/src/mainboard/google/veyron_danger/mainboard.c
+++ b/src/mainboard/google/veyron_danger/mainboard.c
@@ -46,6 +46,20 @@ static void configure_usb(void)
 	gpio_output(GPIO(7, C, 5), 1);			/* 5V_DRV */
 }
 
+static void configure_sdmmc(void)
+{
+	writel(IOMUX_SDMMC0, &rk3288_grf->iomux_sdmmc0);
+
+	/* use sdmmc0 io, disable JTAG function */
+	writel(RK_CLRBITS(1 << 12), &rk3288_grf->soc_con0);
+
+	/* Note: these power rail definitions are copied in romstage.c */
+	rk808_configure_ldo(4, 3300);	/* VCCIO_SD */
+	rk808_configure_ldo(5, 3300);	/* VCC33_SD */
+
+	gpio_input(GPIO(7, A, 5));	/* SDMMC_DET_L */
+}
+
 static void configure_emmc(void)
 {
 	writel(IOMUX_EMMCDATA, &rk3288_grf->iomux_emmcdata);
@@ -87,6 +101,7 @@ static void mainboard_init(device_t dev)
 	gpio_output(GPIO_RESET, 0);
 
 	configure_usb();
+	configure_sdmmc();
 	configure_emmc();
 	configure_codec();
 	configure_vop();
diff --git a/src/mainboard/google/veyron_danger/sdram_configs.c b/src/mainboard/google/veyron_danger/sdram_configs.c
index 3593758..b8bd2db 100644
--- a/src/mainboard/google/veyron_danger/sdram_configs.c
+++ b/src/mainboard/google/veyron_danger/sdram_configs.c
@@ -45,8 +45,13 @@ static struct rk3288_sdram_params sdram_configs[] = {
 
 const struct rk3288_sdram_params *get_sdram_config()
 {
-	u32 ramcode = ram_code();
+	u32 ramcode;
 
+	/* early boards had incorrect config */
+	if (board_id() == 0)
+		return &sdram_configs[0];
+
+	ramcode = ram_code();
 	if (ramcode >= ARRAY_SIZE(sdram_configs)
 			|| sdram_configs[ramcode].dramtype == UNUSED)
 		die("Invalid RAMCODE.");



More information about the coreboot-gerrit mailing list