rk3288: Add a config variable hack to skip display init

The current display init code causes Brain to crash when trying
to allocate resources. This just avoids doing display init if a
config variable is set. Once code has been implemented to properly
setup different types of displays we can get rid of this hack.

BUG=none
BRANCH=none
TEST=built and booted (to depthcharge) on Brain, compiled for
pinky with FEATURES=noclean and ensured config variable is 0

Signed-off-by: David Hendricks <dhendrix@chromium.org>
Change-Id: I04c9e8181c58fa0608fd20776fa8c4798a023474
Reviewed-on: https://chromium-review.googlesource.com/235922
Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: https://chromium-review.googlesource.com/242136
Tested-by: Julius Werner <jwerner@chromium.org>
Commit-Queue: Julius Werner <jwerner@chromium.org>
This commit is contained in:
David Hendricks 2014-12-15 21:20:35 -08:00 committed by ChromeOS Commit Bot
commit c23be2cfd9
3 changed files with 10 additions and 6 deletions

View file

@ -74,4 +74,12 @@ 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
endif # BOARD_GOOGLE_VEYRON_BRAIN

View file

@ -111,9 +111,3 @@ void lb_board(struct lb_header *header)
dma->range_start = (uintptr_t)_dma_coherent;
dma->range_size = _dma_coherent_size;
}
/* called from rk3288 display.c, but there is no backlight for this platform */
void mainboard_power_on_backlight(void)
{
return;
}

View file

@ -47,8 +47,10 @@ static void soc_init(device_t dev)
if (vboot_skip_display_init())
printk(BIOS_INFO, "Skipping display init.\n");
#if !IS_ENABLED(CONFIG_SKIP_DISPLAY_INIT_HACK)
else
rk_display_init(dev, lcdbase, fb_size);
#endif
}
static void soc_noop(device_t dev)