summaryrefslogtreecommitdiffstats
path: root/arch/riscv
diff options
context:
space:
mode:
authorAhmad Fatoum <a.fatoum@pengutronix.de>2022-01-08 18:15:21 +0100
committerSascha Hauer <s.hauer@pengutronix.de>2022-01-12 11:22:10 +0100
commit6a27931b10d942b1c732dae5fd33ef338b28526f (patch)
treebf51006c35494dd3519caaf91a667e819cdd24a0 /arch/riscv
parent0836c5f7b8e834742fdbd522853d076cf0c4a4e7 (diff)
downloadbarebox-6a27931b10d942b1c732dae5fd33ef338b28526f.tar.gz
barebox-6a27931b10d942b1c732dae5fd33ef338b28526f.tar.xz
RISC-V: virt: riscvemu: clear frame buffer before jumping to reset vector
Our poor man's reset just resumes execution at the reset vector, so the framebuffer will maintain its contents over reset, leading to artifacts. Clear screen before reset to avoid this. Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de> Link: https://lore.barebox.org/20220108171524.587144-6-a.fatoum@pengutronix.de Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Diffstat (limited to 'arch/riscv')
-rw-r--r--arch/riscv/boards/riscvemu/board.c3
1 files changed, 3 insertions, 0 deletions
diff --git a/arch/riscv/boards/riscvemu/board.c b/arch/riscv/boards/riscvemu/board.c
index 60c93716a2..31d0c70be6 100644
--- a/arch/riscv/boards/riscvemu/board.c
+++ b/arch/riscv/boards/riscvemu/board.c
@@ -21,6 +21,9 @@ static void __noreturn riscvemu_restart(struct restart_handler *rst)
{
struct riscvemu_priv *priv = container_of(rst, struct riscvemu_priv, rst);
+ /* clear screen on graphic console */
+ puts("\e[J");
+
/*
* barebox PBL relocates itself to end of RAM early on, so unless
* something explicitly scrubbed the initial PBL, we can jump back to