forked from Mirrors/opensbi
		
	lib: utils/reset: Use kconfig for enabling/disabling drivers
We update reset drivers makefile to use kconfig for enabling/disabling drivers. To avoid compile errors, we also enable appropriate reset 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:
		@@ -17,6 +17,8 @@ struct fdt_reset {
 | 
			
		||||
	int (*init)(void *fdt, int nodeoff, const struct fdt_match *match);
 | 
			
		||||
};
 | 
			
		||||
 | 
			
		||||
#ifdef CONFIG_FDT_RESET
 | 
			
		||||
 | 
			
		||||
/**
 | 
			
		||||
 * fdt_reset_driver_init() - initialize reset driver based on the device-tree
 | 
			
		||||
 */
 | 
			
		||||
@@ -29,4 +31,14 @@ int fdt_reset_driver_init(void *fdt, struct fdt_reset *drv);
 | 
			
		||||
 */
 | 
			
		||||
void fdt_reset_init(void);
 | 
			
		||||
 | 
			
		||||
#else
 | 
			
		||||
 | 
			
		||||
static inline int fdt_reset_driver_init(void *fdt, struct fdt_reset *drv)
 | 
			
		||||
{
 | 
			
		||||
	return 0;
 | 
			
		||||
}
 | 
			
		||||
static inline void fdt_reset_init(void) { }
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 | 
			
		||||
#endif
 | 
			
		||||
 
 | 
			
		||||
@@ -2,6 +2,8 @@
 | 
			
		||||
 | 
			
		||||
menu "Utils and Drivers Support"
 | 
			
		||||
 | 
			
		||||
source "$(OPENSBI_SRC_DIR)/lib/utils/reset/Kconfig"
 | 
			
		||||
 | 
			
		||||
source "$(OPENSBI_SRC_DIR)/lib/utils/serial/Kconfig"
 | 
			
		||||
 | 
			
		||||
endmenu
 | 
			
		||||
 
 | 
			
		||||
							
								
								
									
										33
									
								
								lib/utils/reset/Kconfig
									
									
									
									
									
										Normal file
									
								
							
							
						
						
									
										33
									
								
								lib/utils/reset/Kconfig
									
									
									
									
									
										Normal file
									
								
							@@ -0,0 +1,33 @@
 | 
			
		||||
# SPDX-License-Identifier: BSD-2-Clause
 | 
			
		||||
 | 
			
		||||
menu "System Reset Support"
 | 
			
		||||
 | 
			
		||||
config FDT_RESET
 | 
			
		||||
	bool "FDT based reset drivers"
 | 
			
		||||
	default n
 | 
			
		||||
 | 
			
		||||
if FDT_RESET
 | 
			
		||||
 | 
			
		||||
config FDT_RESET_GPIO
 | 
			
		||||
	bool "GPIO FDT reset driver"
 | 
			
		||||
	default n
 | 
			
		||||
 | 
			
		||||
config FDT_RESET_HTIF
 | 
			
		||||
	bool "Host transfer interface (HTIF) FDT reset driver"
 | 
			
		||||
	default n
 | 
			
		||||
 | 
			
		||||
config FDT_RESET_SIFIVE_TEST
 | 
			
		||||
	bool "SiFive Test FDT reset driver"
 | 
			
		||||
	default n
 | 
			
		||||
 | 
			
		||||
config FDT_RESET_SUNXI_WDT
 | 
			
		||||
	bool "Sunxi WDT FDT reset driver"
 | 
			
		||||
	default n
 | 
			
		||||
 | 
			
		||||
config FDT_RESET_THEAD
 | 
			
		||||
	bool "T-HEAD FDT reset driver"
 | 
			
		||||
	default n
 | 
			
		||||
 | 
			
		||||
endif
 | 
			
		||||
 | 
			
		||||
endmenu
 | 
			
		||||
@@ -7,22 +7,22 @@
 | 
			
		||||
#   Anup Patel <anup.patel@wdc.com>
 | 
			
		||||
#
 | 
			
		||||
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset.o
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset_drivers.o
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET) += reset/fdt_reset.o
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET) += reset/fdt_reset_drivers.o
 | 
			
		||||
 | 
			
		||||
carray-fdt_reset_drivers-y += fdt_poweroff_gpio
 | 
			
		||||
carray-fdt_reset_drivers-y += fdt_reset_gpio
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset_gpio.o
 | 
			
		||||
carray-fdt_reset_drivers-$(CONFIG_FDT_RESET_GPIO) += fdt_poweroff_gpio
 | 
			
		||||
carray-fdt_reset_drivers-$(CONFIG_FDT_RESET_GPIO) += fdt_reset_gpio
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET_GPIO) += reset/fdt_reset_gpio.o
 | 
			
		||||
 | 
			
		||||
carray-fdt_reset_drivers-y += fdt_reset_htif
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset_htif.o
 | 
			
		||||
carray-fdt_reset_drivers-$(CONFIG_FDT_RESET_HTIF) += fdt_reset_htif
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET_HTIF) += reset/fdt_reset_htif.o
 | 
			
		||||
 | 
			
		||||
carray-fdt_reset_drivers-y += fdt_reset_sifive_test
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset_sifive_test.o
 | 
			
		||||
carray-fdt_reset_drivers-$(CONFIG_FDT_RESET_SIFIVE_TEST) += fdt_reset_sifive_test
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET_SIFIVE_TEST) += reset/fdt_reset_sifive_test.o
 | 
			
		||||
 | 
			
		||||
carray-fdt_reset_drivers-y += fdt_reset_sunxi_wdt
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset_sunxi_wdt.o
 | 
			
		||||
carray-fdt_reset_drivers-$(CONFIG_FDT_RESET_SUNXI_WDT) += fdt_reset_sunxi_wdt
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET_SUNXI_WDT) += reset/fdt_reset_sunxi_wdt.o
 | 
			
		||||
 | 
			
		||||
carray-fdt_reset_drivers-y += fdt_reset_thead
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset_thead.o
 | 
			
		||||
libsbiutils-objs-y += reset/fdt_reset_thead_asm.o
 | 
			
		||||
carray-fdt_reset_drivers-$(CONFIG_FDT_RESET_THEAD) += fdt_reset_thead
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET_THEAD) += reset/fdt_reset_thead.o
 | 
			
		||||
libsbiutils-objs-$(CONFIG_FDT_RESET_THEAD) += reset/fdt_reset_thead_asm.o
 | 
			
		||||
 
 | 
			
		||||
@@ -1,3 +1,9 @@
 | 
			
		||||
CONFIG_FDT_RESET=y
 | 
			
		||||
CONFIG_FDT_RESET_GPIO=y
 | 
			
		||||
CONFIG_FDT_RESET_HTIF=y
 | 
			
		||||
CONFIG_FDT_RESET_SIFIVE_TEST=y
 | 
			
		||||
CONFIG_FDT_RESET_SUNXI_WDT=y
 | 
			
		||||
CONFIG_FDT_RESET_THEAD=y
 | 
			
		||||
CONFIG_FDT_SERIAL=y
 | 
			
		||||
CONFIG_FDT_SERIAL_GAISLER=y
 | 
			
		||||
CONFIG_FDT_SERIAL_HTIF=y
 | 
			
		||||
 
 | 
			
		||||
		Reference in New Issue
	
	Block a user