aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIan Ray2019-11-12 19:15:15 +0000
committerStefano Babic2020-01-07 10:26:56 +0100
commitc6b31ca1868c48bf06aed638822a34cd16f48fe0 (patch)
treedc65d39ad57acd9db39bbf287b684b024ebcf3b1
parent08ecab0c475827c6751e88d97f7379d5e4cdb5e0 (diff)
board: ge: bx50v3: Fix message output to video console
Use vidconsole for output to the LCD, now that DM_VIDEO is used. Write white text on a black background, like before migrating to DM_VIDEO. Signed-off-by: Ian Ray <ian.ray@ge.com> Signed-off-by: Robert Beckett <bob.beckett@collabora.com>
-rw-r--r--board/ge/bx50v3/bx50v3.c21
-rw-r--r--configs/ge_bx50v3_defconfig1
-rw-r--r--include/configs/ge_bx50v3.h9
3 files changed, 19 insertions, 12 deletions
diff --git a/board/ge/bx50v3/bx50v3.c b/board/ge/bx50v3/bx50v3.c
index 59ec9a0d240..df2d22b61fe 100644
--- a/board/ge/bx50v3/bx50v3.c
+++ b/board/ge/bx50v3/bx50v3.c
@@ -219,13 +219,6 @@ static void do_enable_hdmi(struct display_info_t const *dev)
imx_enable_hdmi_phy();
}
-int board_cfb_skip(void)
-{
- gpio_direction_output(LVDS_POWER_GP, 1);
-
- return 0;
-}
-
static int is_b850v3(void)
{
return confidx == 3;
@@ -713,8 +706,14 @@ int ft_board_setup(void *blob, bd_t *bd)
static int do_backlight_enable(cmd_tbl_t *cmdtp, int flag, int argc, char * const argv[])
{
+#if CONFIG_IS_ENABLED(DM_VIDEO)
+ int ret;
+ struct udevice *dev;
+
#ifdef CONFIG_VIDEO_IPUV3
if (!is_b850v3()) {
+ gpio_direction_output(LVDS_POWER_GP, 1);
+
/* We need at least 200ms between power on and backlight on
* as per specifications from CHI MEI
*/
@@ -733,6 +732,14 @@ static int do_backlight_enable(cmd_tbl_t *cmdtp, int flag, int argc, char * cons
}
#endif
+ /* Probe, to find a video device to be used to show a message on
+ * the vidconsole.
+ */
+ ret = uclass_get_device(UCLASS_VIDEO, 0, &dev);
+ if (ret)
+ return ret;
+#endif
+
return 0;
}
diff --git a/configs/ge_bx50v3_defconfig b/configs/ge_bx50v3_defconfig
index f5f471e0a8d..7d811f5f9b3 100644
--- a/configs/ge_bx50v3_defconfig
+++ b/configs/ge_bx50v3_defconfig
@@ -74,3 +74,4 @@ CONFIG_WATCHDOG_TIMEOUT_MSECS=6000
CONFIG_IMX_WATCHDOG=y
# CONFIG_EFI_LOADER is not set
CONFIG_SYS_MALLOC_F_LEN=0x4000
+CONFIG_SYS_WHITE_ON_BLACK=y
diff --git a/include/configs/ge_bx50v3.h b/include/configs/ge_bx50v3.h
index 73cdc5b489f..9f8d388f522 100644
--- a/include/configs/ge_bx50v3.h
+++ b/include/configs/ge_bx50v3.h
@@ -114,12 +114,11 @@
"swappartitions=" \
"setexpr partnum 3 - ${partnum}\0" \
"failbootcmd=" \
+ "echo reached failbootcmd; " \
"bx50_backlight_enable; " \
- "msg=\"Monitor failed to start. Try again, or contact GE Service for support.\"; " \
- "echo $msg; " \
- "setenv stdout vga; " \
- "echo \"\n\n\n\n \" $msg; " \
- "setenv stdout serial; " \
+ "setcurs 5 4; " \
+ "lcdputs \"Monitor failed to start. " \
+ "Try again, or contact GE Service for support.\"; " \
"mw.b 0x7000A000 0xbc; " \
"mw.b 0x7000A001 0x00; " \
"ext4write ${dev} ${devnum}:5 0x7000A000 /boot/failures 2\0" \