diff options
author | Ahmad Fatoum <a.fatoum@pengutronix.de> | 2021-11-25 17:06:57 +0100 |
---|---|---|
committer | Sascha Hauer <s.hauer@pengutronix.de> | 2021-12-07 10:11:12 +0100 |
commit | c05ef729888d822348299913bdfd9743af2c3eed (patch) | |
tree | cdec8e6a0d4c55ab8aa32371be16c12d2fbfb642 | |
parent | e03c5b76421892b51fba7beabe4e6ae04350cd8a (diff) | |
download | barebox-c05ef729888d822348299913bdfd9743af2c3eed.tar.gz barebox-c05ef729888d822348299913bdfd9743af2c3eed.tar.xz |
RISC-V: virt: add DEBUG_LL support
While we have PBL console support, console isn't available during early
barebox startup. Implement DEBUG_LL for Qemu RISC-V Virt to make such
early debugging easier.
Signed-off-by: Ahmad Fatoum <a.fatoum@pengutronix.de>
Link: https://lore.barebox.org/20211125160657.3828643-1-a.fatoum@pengutronix.de
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
-rw-r--r-- | arch/riscv/Kconfig.socs | 1 | ||||
-rw-r--r-- | arch/riscv/include/asm/debug_ll.h | 10 | ||||
-rw-r--r-- | common/Kconfig | 5 |
3 files changed, 14 insertions, 2 deletions
diff --git a/arch/riscv/Kconfig.socs b/arch/riscv/Kconfig.socs index bd4a44a575..b12c795041 100644 --- a/arch/riscv/Kconfig.socs +++ b/arch/riscv/Kconfig.socs @@ -18,6 +18,7 @@ config SOC_VIRT select RISCV_S_MODE select BOARD_RISCV_GENERIC_DT select HAS_CACHE + select HAS_ASM_DEBUG_LL help Generates an image tht can be be booted by QEMU. The image is called barebox-dt-2nd.img diff --git a/arch/riscv/include/asm/debug_ll.h b/arch/riscv/include/asm/debug_ll.h index a3b9c1c4bc..d01b4f09b8 100644 --- a/arch/riscv/include/asm/debug_ll.h +++ b/arch/riscv/include/asm/debug_ll.h @@ -17,13 +17,19 @@ #if defined CONFIG_DEBUG_ERIZO #define DEBUG_LL_UART_ADDR 0x90000000 #define DEBUG_LL_UART_CLK (24000000 / 16) +#define DEBUG_LL_UART_SHIFT 2 +#define DEBUG_LL_UART_IOSIZE32 #elif defined CONFIG_DEBUG_STARFIVE #define DEBUG_LL_UART_ADDR 0x12440000 #define DEBUG_LL_UART_CLK (100000000 / 16) -#endif - #define DEBUG_LL_UART_SHIFT 2 #define DEBUG_LL_UART_IOSIZE32 +#elif defined CONFIG_DEBUG_RISCV_VIRT +#define DEBUG_LL_UART_ADDR 0x10000000 +#define DEBUG_LL_UART_CLK (58982400 / 16) +#define DEBUG_LL_UART_SHIFT 0 +#define DEBUG_LL_UART_IOSIZE8 +#endif #define DEBUG_LL_UART_BPS CONFIG_BAUDRATE #define DEBUG_LL_UART_DIVISOR (DEBUG_LL_UART_CLK / DEBUG_LL_UART_BPS) diff --git a/common/Kconfig b/common/Kconfig index f4120b2083..ab6258d90f 100644 --- a/common/Kconfig +++ b/common/Kconfig @@ -1402,6 +1402,11 @@ config DEBUG_STARFIVE depends on SOC_STARFIVE select DEBUG_LL_NS16550 +config DEBUG_RISCV_VIRT + bool "RISC-V Virt ns16550 port" + depends on SOC_VIRT + select DEBUG_LL_NS16550 + config DEBUG_SIFIVE bool "SiFive serial0 port" depends on SOC_SIFIVE |