riscv: don't allow selecting SBI based drivers for M-mode
authorDamien Le Moal <damien.lemoal@wdc.com>
Mon, 28 Oct 2019 12:10:33 +0000 (13:10 +0100)
committerPaul Walmsley <paul.walmsley@sifive.com>
Wed, 13 Nov 2019 21:20:02 +0000 (13:20 -0800)
When running in M-mode we can't use SBI based drivers.  Add a new
CONFIG_RISCV_SBI that drivers that do SBI calls can depend on
instead.

Signed-off-by: Damien Le Moal <damien.lemoal@wdc.com>
Reviewed-by: Anup Patel <anup@brainfault.org>
Signed-off-by: Christoph Hellwig <hch@lst.de>
Signed-off-by: Paul Walmsley <paul.walmsley@sifive.com>
arch/riscv/Kconfig
drivers/tty/hvc/Kconfig
drivers/tty/serial/Kconfig

index 86b7e8b..b85492c 100644 (file)
@@ -76,6 +76,12 @@ config ARCH_MMAP_RND_BITS_MAX
 config RISCV_M_MODE
        bool
 
+# set if we are running in S-mode and can use SBI calls
+config RISCV_SBI
+       bool
+       depends on !RISCV_M_MODE
+       default y
+
 config MMU
        def_bool y
 
index 4d22b91..4487a6b 100644 (file)
@@ -89,7 +89,7 @@ config HVC_DCC
 
 config HVC_RISCV_SBI
        bool "RISC-V SBI console support"
-       depends on RISCV
+       depends on RISCV_SBI
        select HVC_DRIVER
        help
          This enables support for console output via RISC-V SBI calls, which
index 67a9eb3..540142c 100644 (file)
@@ -88,7 +88,7 @@ config SERIAL_EARLYCON_ARM_SEMIHOST
 
 config SERIAL_EARLYCON_RISCV_SBI
        bool "Early console using RISC-V SBI"
-       depends on RISCV
+       depends on RISCV_SBI
        select SERIAL_CORE
        select SERIAL_CORE_CONSOLE
        select SERIAL_EARLYCON