diff --git a/drivers/Makefile b/drivers/Makefile index 84e8bc5c05..07f22e57fa 100644 --- a/drivers/Makefile +++ b/drivers/Makefile @@ -103,7 +103,6 @@ obj-$(CONFIG_U_QE) += qe/ obj-y += mailbox/ obj-y += memory/ obj-y += pwm/ -obj-y += reset/ obj-y += input/ # SOC specific infrastructure drivers. obj-y += soc/ @@ -112,3 +111,6 @@ obj-y += thermal/ obj-$(CONFIG_MACH_PIC32) += ddr/microchip/ endif + +obj-$(CONFIG_$(SPL_TPL_)DM_RESET) += reset/ + diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig index 1121166bbf..08d8674c27 100644 --- a/drivers/reset/Kconfig +++ b/drivers/reset/Kconfig @@ -12,6 +12,18 @@ config DM_RESET although driving such reset isgnals using GPIOs may be more appropriate in this case. +config SPL_DM_RESET + bool "Enable reset controllers using Driver Model in SPL" + depends on SPL_DM && OF_CONTROL + help + Enable support for the reset controller driver class. Many hardware + modules are equipped with a reset signal, typically driven by some + reset controller hardware module within the chip. In U-Boot, reset + controller drivers allow control over these reset signals. In some + cases this API is applicable to chips outside the CPU as well, + although driving such reset isgnals using GPIOs may be more + appropriate in this case. + config SANDBOX_RESET bool "Enable the sandbox reset test driver" depends on DM_MAILBOX && SANDBOX @@ -75,4 +87,10 @@ config RESET_ROCKCHIP Support for reset controller on rockchip SoC. The main limitation though is that some reset signals, like I2C or MISC reset multiple devices. +config SPL_RESET_ROCKCHIP + bool "Reset controller driver for Rockchip SoCs in SPL" + depends on SPL_DM_RESET && SPL_CLK + help + Support for reset controller on rockchip SoC. The main limitation though + is that some reset signals, like I2C or MISC reset multiple devices. endmenu diff --git a/drivers/reset/Makefile b/drivers/reset/Makefile index 40caba5d8f..02615a58d8 100644 --- a/drivers/reset/Makefile +++ b/drivers/reset/Makefile @@ -2,7 +2,7 @@ # # SPDX-License-Identifier: GPL-2.0 -obj-$(CONFIG_DM_RESET) += reset-uclass.o +obj-$(CONFIG_$(SPL_)DM_RESET) += reset-uclass.o obj-$(CONFIG_SANDBOX_MBOX) += sandbox-reset.o obj-$(CONFIG_SANDBOX_MBOX) += sandbox-reset-test.o obj-$(CONFIG_STI_RESET) += sti-reset.o @@ -11,4 +11,4 @@ obj-$(CONFIG_TEGRA186_RESET) += tegra186-reset.o obj-$(CONFIG_RESET_BCM6345) += reset-bcm6345.o obj-$(CONFIG_RESET_UNIPHIER) += reset-uniphier.o obj-$(CONFIG_AST2500_RESET) += ast2500-reset.o -obj-$(CONFIG_RESET_ROCKCHIP) += reset-rockchip.o +obj-$(CONFIG_$(SPL_)RESET_ROCKCHIP) += reset-rockchip.o