Patrick Georgi (pgeorgi@google.com) just uploaded a new patch set to gerrit, which you can find at http://review.coreboot.org/10089
-gerrit
commit df2e2deddeb7e5e79e5b3ea33a47dc4dd39cc4f8 Author: David Hendricks dhendrix@chromium.org Date: Wed Apr 22 15:05:18 2015 -0700
veyron_danger: Turn on backlight enable before VCC_LCD
On current Danger boards, VCC_LCD is gated by BL_EN. Thus we need to enable BL_EN in order to power on the display so that we can read the EDID and set things up.
Later board revisions may change this ordering, but for now it doesn't seem to be causing a significant issues (no noticable "snow" or other corruption using Pepto display).
BUG=none BRANCH=none TEST=booted on Danger, saw dev mode screen come up
Change-Id: I70aab8c1f6da2d0fce310d59073026eef0f67821 Signed-off-by: Patrick Georgi pgeorgi@chromium.org Original-Commit-Id: 1a918824e747600a2f3a88602320f4f563ce17b7 Original-Signed-off-by: David Hendricks dhendrix@chromium.org Original-Change-Id: Iaf17cc4682bd3c46f62cba789e3ecf8d5a474362 Original-Reviewed-on: https://chromium-review.googlesource.com/266913 Original-Reviewed-by: Julius Werner jwerner@chromium.org --- src/mainboard/google/veyron_danger/board.h | 1 + src/mainboard/google/veyron_danger/mainboard.c | 13 ++++++++++++- 2 files changed, 13 insertions(+), 1 deletion(-)
diff --git a/src/mainboard/google/veyron_danger/board.h b/src/mainboard/google/veyron_danger/board.h index 10bcf45..a2f4000 100644 --- a/src/mainboard/google/veyron_danger/board.h +++ b/src/mainboard/google/veyron_danger/board.h @@ -25,6 +25,7 @@
#define GPIO_BACKLIGHT GPIO(7, A, 3) #define GPIO_RESET GPIO(0, B, 5) +#define GPIO_LCDC_BL GPIO(7, A, 7)
void setup_chromeos_gpios(void);
diff --git a/src/mainboard/google/veyron_danger/mainboard.c b/src/mainboard/google/veyron_danger/mainboard.c index b664d55..9bb5cb1 100644 --- a/src/mainboard/google/veyron_danger/mainboard.c +++ b/src/mainboard/google/veyron_danger/mainboard.c @@ -93,6 +93,17 @@ static void configure_vop(void) /* lcdc(vop) iodomain select 1.8V */ write32(&rk3288_grf->io_vsel, RK_SETBITS(1 << 0));
+ /* + * BL_EN gates VCC_LCD. This might be changed in future revisions + * of the board so that the display can be stablized before we + * turn on the backlight. + * + * To minimize display corruption, turn off LCDC_BL before + * powering on the backlight. + */ + gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */ + gpio_output(GPIO_LCDC_BL, 0); + rk808_configure_switch(2, 1); /* VCC18_LCD (HDMI_AVDD_1V8) */ rk808_configure_ldo(7, 1000); /* VDD10_LCD (HDMI_AVDD_1V0) */ rk808_configure_switch(1, 1); /* VCC33_LCD */ @@ -135,5 +146,5 @@ void lb_board(struct lb_header *header)
void mainboard_power_on_backlight(void) { - gpio_output(GPIO_BACKLIGHT, 1); /* BL_EN */ + gpio_output(GPIO_LCDC_BL, 1); }