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

Change-Id: I9a7266c6bff5b7a6eb05b2b21fb65797bee392d6
Signed-off-by: Patrick Georgi <pgeorgi@chromium.org>
Original-Commit-Id: 804632ca67eaaf4174ca597d83b8923cb9abd1b7
Original-Signed-off-by: David Hendricks <dhendrix@chromium.org>
Original-Change-Id: I04c9e8181c58fa0608fd20776fa8c4798a023474
Original-Reviewed-on: https://chromium-review.googlesource.com/235922
Original-Reviewed-by: Julius Werner <jwerner@chromium.org>
Reviewed-on: http://review.coreboot.org/9720
Tested-by: build bot (Jenkins)
Reviewed-by: Stefan Reinauer <stefan.reinauer@coreboot.org>
This commit is contained in:
David Hendricks 2014-12-15 21:20:35 -08:00 committed by Patrick Georgi
parent b7641cc230
commit 1c78009596
3 changed files with 10 additions and 6 deletions

View File

@ -73,6 +73,14 @@ 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

@ -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

@ -42,8 +42,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 struct device_operations soc_ops = {