From 1c780095960d4d2344107be7088ccbe5913eaf4b Mon Sep 17 00:00:00 2001 From: David Hendricks Date: Mon, 15 Dec 2014 21:20:35 -0800 Subject: 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 Original-Commit-Id: 804632ca67eaaf4174ca597d83b8923cb9abd1b7 Original-Signed-off-by: David Hendricks Original-Change-Id: I04c9e8181c58fa0608fd20776fa8c4798a023474 Original-Reviewed-on: https://chromium-review.googlesource.com/235922 Original-Reviewed-by: Julius Werner Reviewed-on: http://review.coreboot.org/9720 Tested-by: build bot (Jenkins) Reviewed-by: Stefan Reinauer --- src/mainboard/google/veyron_brain/Kconfig | 8 ++++++++ src/mainboard/google/veyron_brain/mainboard.c | 6 ------ src/soc/rockchip/rk3288/soc.c | 2 ++ 3 files changed, 10 insertions(+), 6 deletions(-) diff --git a/src/mainboard/google/veyron_brain/Kconfig b/src/mainboard/google/veyron_brain/Kconfig index 94f1a4b0d6..3539d1ee2b 100644 --- a/src/mainboard/google/veyron_brain/Kconfig +++ b/src/mainboard/google/veyron_brain/Kconfig @@ -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 diff --git a/src/mainboard/google/veyron_brain/mainboard.c b/src/mainboard/google/veyron_brain/mainboard.c index 13990d9493..ab6ceab502 100644 --- a/src/mainboard/google/veyron_brain/mainboard.c +++ b/src/mainboard/google/veyron_brain/mainboard.c @@ -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; -} diff --git a/src/soc/rockchip/rk3288/soc.c b/src/soc/rockchip/rk3288/soc.c index c227dab2f3..abd93d70f0 100644 --- a/src/soc/rockchip/rk3288/soc.c +++ b/src/soc/rockchip/rk3288/soc.c @@ -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 = { -- cgit v1.2.3