summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorhuang lin <hl@rock-chips.com>2014-12-13 09:35:41 +0800
committerStefan Reinauer <stefan.reinauer@coreboot.org>2015-04-15 16:28:45 +0200
commitcf6306b5d4793e59b020d26e60f201edec0f17ea (patch)
treeff70c9a8e65efea35e5a5c0d4981db2cc6171c9b
parentd462d3c4481011e906e99a68ef47283f685698de (diff)
downloadcoreboot-cf6306b5d4793e59b020d26e60f201edec0f17ea.tar.xz
veyron: Support Pinky v4 hardware
BUG=None TEST=emerge veyron_pinky and boot the Pinky board BRANCH=None Change-Id: I75bc1b7681c9a3d7dc2868a2b260884538587dbd Signed-off-by: Stefan Reinauer <reinauer@chromium.org> Original-Commit-Id: 66069927618924af02a4e17503fa49ae2c31fdfc Original-Change-Id: I06242ade0cabbba56b16b3832a1b4b09bec6f06b Original-Signed-off-by: huang lin <hl@rock-chips.com> Original-Reviewed-on: https://chromium-review.googlesource.com/234712 Original-Reviewed-by: Julius Werner <jwerner@chromium.org> Reviewed-on: http://review.coreboot.org/9631 Tested-by: build bot (Jenkins) Reviewed-by: Marc Jones <marc.jones@se-eng.com>
-rw-r--r--src/mainboard/google/veyron_pinky/mainboard.c34
1 files changed, 27 insertions, 7 deletions
diff --git a/src/mainboard/google/veyron_pinky/mainboard.c b/src/mainboard/google/veyron_pinky/mainboard.c
index c9d6098f34..4752547f6f 100644
--- a/src/mainboard/google/veyron_pinky/mainboard.c
+++ b/src/mainboard/google/veyron_pinky/mainboard.c
@@ -135,10 +135,17 @@ static void configure_vop(void)
rk808_configure_ldo(PMIC_BUS, 6, 1000); /* VCC10_LCD */
gpio_output(GPIO(7, B, 7), 1); /* LCD_EN */
break;
+ case 1:
+ case 2:
+ rk808_configure_switch(PMIC_BUS, 2, 1); /* VCC18_LCD */
+ rk808_configure_ldo(PMIC_BUS, 7, 2500); /* VCC10_LCD_PWREN_H */
+ rk808_configure_switch(PMIC_BUS, 1, 1); /* VCC33_LCD */
+ break;
default:
- rk808_configure_switch(PMIC_BUS, 2, 1); /* VCC18_LCD */
- rk808_configure_ldo(PMIC_BUS, 7, 2500); /* VCC10_LCD_PWREN_H */
- rk808_configure_switch(PMIC_BUS, 1, 1); /* VCC33_LCD */
+ gpio_output(GPIO(2, B, 5), 1); /* AVDD_1V8_DISP_EN */
+ rk808_configure_ldo(PMIC_BUS, 7, 2500); /* VCC10_LCD_PWREN_H */
+ rk808_configure_switch(PMIC_BUS, 1, 1); /* VCC33_LCD */
+ gpio_output(GPIO(7, B, 6), 1); /* LCD_EN */
break;
}
}
@@ -180,8 +187,21 @@ void lb_board(struct lb_header *header)
void mainboard_power_on_backlight(void)
{
- gpio_output(GPIO(7, A, 0), 0); /* BL_EN */
- gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
- mdelay(10);
- gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ switch (board_id()) {
+ case 0:
+ case 1:
+ case 2:
+ gpio_output(GPIO(7, A, 0), 0); /* BL_EN */
+ gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
+ mdelay(10);
+ gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ break;
+ default:
+ gpio_output(GPIO(2, B, 4), 1); /* BL_PWR_EN */
+ mdelay(10);
+ gpio_output(GPIO(7, A, 2), 1); /* LCD_BL */
+ mdelay(10);
+ gpio_output(GPIO(7, A, 0), 1); /* BL_EN */
+ break;
+ }
}