summaryrefslogtreecommitdiff
path: root/src/mainboard/google/veyron_emile/mainboard.c
diff options
context:
space:
mode:
authorZhengShunQian <zhengsq@rock-chips.com>2015-10-22 10:45:23 +0800
committerPatrick Georgi <pgeorgi@google.com>2015-11-11 20:44:43 +0100
commit0dc117aa5d0375f0ef94824ceab399c8fe94b136 (patch)
tree6fd26ca111ff1bbb7ecaf709cf42a5003d5627f6 /src/mainboard/google/veyron_emile/mainboard.c
parent278f20e88d565a0de5bd4beefc2a3dcfd209a89b (diff)
downloadcoreboot-0dc117aa5d0375f0ef94824ceab399c8fe94b136.tar.xz
google/veyron_emile: adjust to the spec of emile
o. Make some gpio changes base on Emile spec. o. Init sdmmc function. o. Revert cpu freq reducing in recovery mode since Emile have more effective thermal than Mickey. o. Revert the changes of lpddr3-samsung-2GB config. BUG=chrome-os-partner:46658 TEST=build and boot on Emile BRANCH=veyron Change-Id: Ibdc2ce511c8e215c202e2067d79f4c60cdfca738 Signed-off-by: Patrick Georgi <pgeorgi@chromium.org> Original-Commit-Id: 39e5436c8aa3353af77f62e548f48d19dc722999 Original-Change-Id: Ib2c78c9b5e3ac6620ab1772879a7ea0f7007f96e Original-Signed-off-by: ZhengShunQian <zhengsq@rock-chips.com> Original-Reviewed-on: https://chromium-review.googlesource.com/307651 Original-Commit-Ready: Shunqian Zheng <zhengsq@rock-chips.com> Original-Tested-by: Shunqian Zheng <zhengsq@rock-chips.com> Original-Reviewed-by: David Hendricks <dhendrix@chromium.org> Reviewed-on: http://review.coreboot.org/12396 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
Diffstat (limited to 'src/mainboard/google/veyron_emile/mainboard.c')
-rw-r--r--src/mainboard/google/veyron_emile/mainboard.c32
1 files changed, 22 insertions, 10 deletions
diff --git a/src/mainboard/google/veyron_emile/mainboard.c b/src/mainboard/google/veyron_emile/mainboard.c
index b668ff8b8d..3a5513b1b7 100644
--- a/src/mainboard/google/veyron_emile/mainboard.c
+++ b/src/mainboard/google/veyron_emile/mainboard.c
@@ -41,9 +41,27 @@
#include "board.h"
+static void enable_5v_drv(void)
+{
+ gpio_output(GPIO(7, A, 3), 1); /* 5v_drv enable */
+}
+
+static void configure_sdmmc(void)
+{
+ write32(&rk3288_grf->iomux_sdmmc0, IOMUX_SDMMC0);
+
+ /* use sdmmc0 io, disable JTAG function */
+ write32(&rk3288_grf->soc_con0, RK_CLRBITS(1 << 12));
+
+ sdmmc_power_on();
+
+ gpio_input(GPIO(7, A, 5)); /* SDMMC_DET_L */
+}
+
static void configure_usb(void)
{
- gpio_output(GPIO(0, B, 4), 1); /* USB2_PWR_EN */
+ gpio_output(GPIO(2, B, 2), 1); /* USB3_PWR_EN */
+ gpio_output(GPIO(2, B, 3), 1); /* USB2_PWR_EN */
}
static void configure_emmc(void)
@@ -83,14 +101,16 @@ static void configure_hdmi(void)
write32(&rk3288_grf->iomux_i2c5sda, IOMUX_HDMI_EDP_I2C_SDA);
write32(&rk3288_grf->iomux_i2c5scl, IOMUX_HDMI_EDP_I2C_SCL);
- gpio_output(GPIO(7, B, 3), 1); /* POWER_HDMI_ON */
+ gpio_output(GPIO(7, A, 2), 1); /* POWER_HDMI_ON */
}
static void mainboard_init(device_t dev)
{
gpio_output(GPIO_RESET, 0);
+ enable_5v_drv();
configure_usb();
+ configure_sdmmc();
configure_emmc();
configure_i2s();
configure_vop();
@@ -99,14 +119,6 @@ static void mainboard_init(device_t dev)
elog_init();
elog_add_watchdog_reset();
elog_add_boot_reason();
-
- /* If recovery mode is detected, reduce frequency and voltage to reduce
- * heat in case machine is left unattended. chrome-os-partner:41201. */
- if (recovery_mode_enabled()) {
- printk(BIOS_DEBUG, "Reducing APLL freq for recovery mode.\n");
- rkclk_configure_cpu(APLL_600_MHZ);
- rk808_configure_buck(1, 900);
- }
}
static void mainboard_enable(device_t dev)