forked from Mirrors/opensbi
lib: utils/serial: Use kconfig for enabling/disabling drivers
We update serial drivers makefile to use kconfig for enabling/disabling drivers. To avoid compile errors, we also enable appropriate serial drivers for each platform. Signed-off-by: Anup Patel <apatel@ventanamicro.com> Tested-by: Andrew Jones <ajones@ventanamicro.com> Acked-by: Atish Patra <atishp@rivosinc.com> Tested-by: Atish Patra <atishp@rivosinc.com>
This commit is contained in:
@@ -12,6 +12,8 @@
|
||||
|
||||
#include <sbi/sbi_types.h>
|
||||
|
||||
#ifdef CONFIG_FDT_SERIAL
|
||||
|
||||
struct fdt_serial {
|
||||
const struct fdt_match *match_table;
|
||||
int (*init)(void *fdt, int nodeoff, const struct fdt_match *match);
|
||||
@@ -19,4 +21,10 @@ struct fdt_serial {
|
||||
|
||||
int fdt_serial_init(void);
|
||||
|
||||
#else
|
||||
|
||||
static inline int fdt_serial_init(void) { return 0; }
|
||||
|
||||
#endif
|
||||
|
||||
#endif
|
||||
|
@@ -1 +1,7 @@
|
||||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
|
||||
menu "Utils and Drivers Support"
|
||||
|
||||
source "$(OPENSBI_SRC_DIR)/lib/utils/serial/Kconfig"
|
||||
|
||||
endmenu
|
||||
|
71
lib/utils/serial/Kconfig
Normal file
71
lib/utils/serial/Kconfig
Normal file
@@ -0,0 +1,71 @@
|
||||
# SPDX-License-Identifier: BSD-2-Clause
|
||||
|
||||
menu "Serial Device Support"
|
||||
|
||||
config FDT_SERIAL
|
||||
bool "FDT based serial drivers"
|
||||
default n
|
||||
|
||||
if FDT_SERIAL
|
||||
|
||||
config FDT_SERIAL_GAISLER
|
||||
bool "Gaisler UART FDT driver"
|
||||
select SERIAL_GAISLER
|
||||
default n
|
||||
|
||||
config FDT_SERIAL_HTIF
|
||||
bool "Host transfer interface (HTIF) UART FDT driver"
|
||||
default n
|
||||
|
||||
config FDT_SERIAL_SHAKTI
|
||||
bool "Shakti UART FDT driver"
|
||||
select SERIAL_SHAKTI
|
||||
default n
|
||||
|
||||
config FDT_SERIAL_SIFIVE
|
||||
bool "SiFive UART FDT driver"
|
||||
select SERIAL_SIFIVE
|
||||
default n
|
||||
|
||||
config FDT_SERIAL_LITEX
|
||||
bool "LiteX UART FDT driver"
|
||||
select SERIAL_LITEX
|
||||
default n
|
||||
|
||||
config FDT_SERIAL_UART8250
|
||||
bool "8250 UART FDT driver"
|
||||
select SERIAL_UART8250
|
||||
default n
|
||||
|
||||
config FDT_SERIAL_XILINX_UARTLITE
|
||||
bool "Xilinx UART Lite FDT driver"
|
||||
select SERIAL_XILINX_UARTLITE
|
||||
default n
|
||||
|
||||
endif
|
||||
|
||||
config SERIAL_GAISLER
|
||||
bool "Gaisler UART support"
|
||||
default n
|
||||
|
||||
config SERIAL_SHAKTI
|
||||
bool "Shakti UART support"
|
||||
default n
|
||||
|
||||
config SERIAL_SIFIVE
|
||||
bool "SiFive UART support"
|
||||
default n
|
||||
|
||||
config SERIAL_LITEX
|
||||
bool "LiteX UART support"
|
||||
default n
|
||||
|
||||
config SERIAL_UART8250
|
||||
bool "8250 UART support"
|
||||
default n
|
||||
|
||||
config SERIAL_XILINX_UARTLITE
|
||||
bool "Xilinx UART Lite support"
|
||||
default n
|
||||
|
||||
endmenu
|
@@ -7,33 +7,33 @@
|
||||
# Anup Patel <anup.patel@wdc.com>
|
||||
#
|
||||
|
||||
libsbiutils-objs-y += serial/fdt_serial.o
|
||||
libsbiutils-objs-y += serial/fdt_serial_drivers.o
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL) += serial/fdt_serial.o
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL) += serial/fdt_serial_drivers.o
|
||||
|
||||
carray-fdt_serial_drivers-y += fdt_serial_gaisler
|
||||
libsbiutils-objs-y += serial/fdt_serial_gaisler.o
|
||||
carray-fdt_serial_drivers-$(CONFIG_FDT_SERIAL_GAISLER) += fdt_serial_gaisler
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL_GAISLER) += serial/fdt_serial_gaisler.o
|
||||
|
||||
carray-fdt_serial_drivers-y += fdt_serial_htif
|
||||
libsbiutils-objs-y += serial/fdt_serial_htif.o
|
||||
carray-fdt_serial_drivers-$(CONFIG_FDT_SERIAL_HTIF) += fdt_serial_htif
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL_HTIF) += serial/fdt_serial_htif.o
|
||||
|
||||
carray-fdt_serial_drivers-y += fdt_serial_shakti
|
||||
libsbiutils-objs-y += serial/fdt_serial_shakti.o
|
||||
carray-fdt_serial_drivers-$(CONFIG_FDT_SERIAL_SHAKTI) += fdt_serial_shakti
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL_SHAKTI) += serial/fdt_serial_shakti.o
|
||||
|
||||
carray-fdt_serial_drivers-y += fdt_serial_sifive
|
||||
libsbiutils-objs-y += serial/fdt_serial_sifive.o
|
||||
carray-fdt_serial_drivers-$(CONFIG_FDT_SERIAL_SIFIVE) += fdt_serial_sifive
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL_SIFIVE) += serial/fdt_serial_sifive.o
|
||||
|
||||
carray-fdt_serial_drivers-y += fdt_serial_litex
|
||||
libsbiutils-objs-y += serial/fdt_serial_litex.o
|
||||
carray-fdt_serial_drivers-$(CONFIG_FDT_SERIAL_LITEX) += fdt_serial_litex
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL_LITEX) += serial/fdt_serial_litex.o
|
||||
|
||||
carray-fdt_serial_drivers-y += fdt_serial_uart8250
|
||||
libsbiutils-objs-y += serial/fdt_serial_uart8250.o
|
||||
carray-fdt_serial_drivers-$(CONFIG_FDT_SERIAL_UART8250) += fdt_serial_uart8250
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL_UART8250) += serial/fdt_serial_uart8250.o
|
||||
|
||||
carray-fdt_serial_drivers-y += fdt_serial_xlnx_uartlite
|
||||
libsbiutils-objs-y += serial/fdt_serial_xlnx_uartlite.o
|
||||
carray-fdt_serial_drivers-$(CONFIG_FDT_SERIAL_XILINX_UARTLITE) += fdt_serial_xlnx_uartlite
|
||||
libsbiutils-objs-$(CONFIG_FDT_SERIAL_XILINX_UARTLITE) += serial/fdt_serial_xlnx_uartlite.o
|
||||
|
||||
libsbiutils-objs-y += serial/gaisler-uart.o
|
||||
libsbiutils-objs-y += serial/shakti-uart.o
|
||||
libsbiutils-objs-y += serial/sifive-uart.o
|
||||
libsbiutils-objs-y += serial/litex-uart.o
|
||||
libsbiutils-objs-y += serial/uart8250.o
|
||||
libsbiutils-objs-y += serial/xlnx-uartlite.o
|
||||
libsbiutils-objs-$(CONFIG_SERIAL_GAISLER) += serial/gaisler-uart.o
|
||||
libsbiutils-objs-$(CONFIG_SERIAL_SHAKTI) += serial/shakti-uart.o
|
||||
libsbiutils-objs-$(CONFIG_SERIAL_SIFIVE) += serial/sifive-uart.o
|
||||
libsbiutils-objs-$(CONFIG_SERIAL_LITEX) += serial/litex-uart.o
|
||||
libsbiutils-objs-$(CONFIG_SERIAL_UART8250) += serial/uart8250.o
|
||||
libsbiutils-objs-$(CONFIG_SERIAL_XILINX_UARTLITE) += serial/xlnx-uartlite.o
|
||||
|
@@ -2,4 +2,5 @@
|
||||
|
||||
config PLATFORM_ANDES_AE350
|
||||
bool
|
||||
select SERIAL_UART8250
|
||||
default y
|
||||
|
@@ -2,4 +2,5 @@
|
||||
|
||||
config PLATFORM_ARIANE_FPGA
|
||||
bool
|
||||
select SERIAL_UART8250
|
||||
default y
|
||||
|
@@ -2,4 +2,5 @@
|
||||
|
||||
config PLATFORM_OPENPITON_FPGA
|
||||
bool
|
||||
select SERIAL_UART8250
|
||||
default y
|
||||
|
@@ -0,0 +1,8 @@
|
||||
CONFIG_FDT_SERIAL=y
|
||||
CONFIG_FDT_SERIAL_GAISLER=y
|
||||
CONFIG_FDT_SERIAL_HTIF=y
|
||||
CONFIG_FDT_SERIAL_SHAKTI=y
|
||||
CONFIG_FDT_SERIAL_SIFIVE=y
|
||||
CONFIG_FDT_SERIAL_LITEX=y
|
||||
CONFIG_FDT_SERIAL_UART8250=y
|
||||
CONFIG_FDT_SERIAL_XILINX_UARTLITE=y
|
||||
|
@@ -2,4 +2,5 @@
|
||||
|
||||
config PLATFORM_KENDRYTE_K210
|
||||
bool
|
||||
select SERIAL_SIFIVE
|
||||
default y
|
||||
|
@@ -2,4 +2,5 @@
|
||||
|
||||
config PLATFORM_NUCLEI_UX600
|
||||
bool
|
||||
select SERIAL_SIFIVE
|
||||
default y
|
||||
|
@@ -9,4 +9,5 @@
|
||||
#
|
||||
config PLATFORM_TEMPLATE
|
||||
bool
|
||||
select SERIAL_UART8250
|
||||
default y
|
||||
|
Reference in New Issue
Block a user