veyron_mickey: Apply differences between Brain and Mickey

Mickey:
- Does not have power key
- Does not have an audio codec(all audio goes thru HDMI)
- VCC18_LCD moved to VLDO8 and needs to be turned on (was
  connected to VSWOUT2 earlier)

(write32() --> writel() for cherry-pick)

BUG=none
BRANCH=none
TEST=Boot from mickey board, and hdmi work normal

Signed-off-by: David Hendricks <dhendrix@chromium.org>
Signed-off-by: huang lin <hl@rock-chips.com>
Reviewed-on: https://chromium-review.googlesource.com/274876
Change-Id: I3d98203185f52ed751a5d3045a0ee8f9b4dfbc71
Reviewed-on: https://chromium-review.googlesource.com/284090
This commit is contained in:
huang lin 2015-06-04 16:41:27 +08:00 committed by ChromeOS Commit Bot
commit 75fa110dad
4 changed files with 19 additions and 23 deletions

View file

@ -78,14 +78,6 @@ config CONSOLE_SERIAL_UART_ADDRESS
depends on CONSOLE_SERIAL_UART
default 0xFF690000
# FIXME(dhendrix): This is a gross hack intended to get us past
# display init which currently hangs the machine. It will be removed
# once we've re-factored the display init code to properly handle
# various types of displays.
config SKIP_DISPLAY_INIT_HACK
int
default 1
config PMIC_BUS
int
default 0

View file

@ -26,13 +26,11 @@
#include "board.h"
#define GPIO_WP GPIO(7, A, 6)
#define GPIO_POWER GPIO(0, A, 5)
#define GPIO_RECOVERY GPIO(0, B, 1)
void setup_chromeos_gpios(void)
{
gpio_input(GPIO_WP);
gpio_input(GPIO_POWER);
gpio_input_pullup(GPIO_RECOVERY);
}
@ -56,14 +54,6 @@ void fill_lb_gpios(struct lb_gpios *gpios)
GPIO_MAX_NAME_LENGTH);
count++;
/* Power Button: GPIO active low */
gpios->gpios[count].port = GPIO_POWER.raw;
gpios->gpios[count].polarity = ACTIVE_LOW;
gpios->gpios[count].value = -1;
strncpy((char *)gpios->gpios[count].name, "power",
GPIO_MAX_NAME_LENGTH);
count++;
/* Developer: GPIO active high */
gpios->gpios[count].port = -1;
gpios->gpios[count].polarity = ACTIVE_HIGH;

View file

@ -22,4 +22,5 @@ chip soc/rockchip/rk3288
device cpu_cluster 0 on end
register "vop_id" = "1"
register "framebuffer_bits_per_pixel" = "16"
register "vop_mode" = "1"
end

View file

@ -55,7 +55,7 @@ static void configure_emmc(void)
gpio_output(GPIO(2, B, 1), 1); /* EMMC_RST_L */
}
static void configure_codec(void)
static void configure_i2s(void)
{
writel(IOMUX_I2C2, &rk3288_grf->iomux_i2c2); /* CODEC I2C */
i2c_init(2, 400*KHz); /* CODEC I2C */
@ -63,8 +63,6 @@ static void configure_codec(void)
writel(IOMUX_I2S, &rk3288_grf->iomux_i2s);
writel(IOMUX_I2SCLK, &rk3288_grf->iomux_i2sclk);
rk808_configure_ldo(6, 1800); /* VCC18_CODEC */
/* AUDIO IO domain 1.8V voltage selection */
writel(RK_SETBITS(1 << 6), &rk3288_grf->io_vsel);
rkclk_configure_i2s(12288000);
@ -77,19 +75,29 @@ static void configure_vop(void)
/* lcdc(vop) iodomain select 1.8V */
writel(RK_SETBITS(1 << 0), &rk3288_grf->io_vsel);
rk808_configure_switch(2, 1); /* VCC18_LCD (HDMI_AVDD_1V8) */
rk808_configure_ldo(8, 1800); /* VCC18_LCD (HDMI_AVDD_1V8) */
rk808_configure_ldo(7, 1000); /* VDD10_LCD (HDMI_AVDD_1V0) */
rk808_configure_switch(1, 1); /* VCC33_LCD */
}
static void configure_hdmi(void)
{
/* HDMI I2C */
writel(IOMUX_HDMI_EDP_I2C_SDA, &rk3288_grf->iomux_i2c5sda);
writel(IOMUX_HDMI_EDP_I2C_SCL, &rk3288_grf->iomux_i2c5scl);
gpio_output(GPIO(7, B, 3), 1); /* POWER_HDMI_ON */
}
static void mainboard_init(device_t dev)
{
gpio_output(GPIO_RESET, 0);
configure_usb();
configure_emmc();
configure_codec();
configure_i2s();
configure_vop();
configure_hdmi();
elog_init();
elog_add_watchdog_reset();
@ -115,3 +123,8 @@ void lb_board(struct lb_header *header)
dma->range_start = (uintptr_t)_dma_coherent;
dma->range_size = _dma_coherent_size;
}
void mainboard_power_on_backlight(void)
{
return;
}