From: Raymond Mao <[email protected]>
This commit enhances the K1 reset controller driver:
1. Enable SPL support
- Select CONFIG_SPL_RESET_SPACEMIT_K1 for SPL builds
- Reset controller is required during early boot for
proper hardware initialization sequence
2. Remove TWSI8 (I2C8) reset restriction
- TWSI8 is now fully controllable by reset controller
Signed-off-by: Raymond Mao <[email protected]>
---
drivers/reset/Kconfig | 7 +++++++
drivers/reset/Makefile | 2 +-
drivers/reset/reset-spacemit-k1.c | 4 ----
3 files changed, 8 insertions(+), 5 deletions(-)
diff --git a/drivers/reset/Kconfig b/drivers/reset/Kconfig
index 74c267dfc4e..1e69024ce74 100644
--- a/drivers/reset/Kconfig
+++ b/drivers/reset/Kconfig
@@ -252,5 +252,12 @@ config RESET_SPACEMIT_K1
Support for SPACEMIT's K1 Reset system. Basic Assert/Deassert
is supported.
+config SPL_RESET_SPACEMIT_K1
+ bool "SPL Reset driver for Spacemit K1 SoC"
+ depends on SPL && RESET_SPACEMIT_K1
+ default y
+ help
+ Support for reset controller on Spacemit K1 SoCs in SPL.
+
source "drivers/reset/stm32/Kconfig"
endmenu
diff --git a/drivers/reset/Makefile b/drivers/reset/Makefile
index ee5b009d134..ec6893b1c45 100644
--- a/drivers/reset/Makefile
+++ b/drivers/reset/Makefile
@@ -33,8 +33,8 @@ obj-$(CONFIG_RESET_ZYNQMP) += reset-zynqmp.o
obj-$(CONFIG_RESET_DRA7) += reset-dra7.o
obj-$(CONFIG_RESET_AT91) += reset-at91.o
obj-$(CONFIG_$(PHASE_)RESET_JH7110) += reset-jh7110.o
+obj-$(CONFIG_$(PHASE_)RESET_SPACEMIT_K1) += reset-spacemit-k1.o
obj-$(CONFIG_RESET_RZG2L_USBPHY_CTRL) += reset-rzg2l-usbphy-ctrl.o
-obj-$(CONFIG_RESET_SPACEMIT_K1) += reset-spacemit-k1.o
obj-$(CONFIG_ARCH_STM32) += stm32/
obj-$(CONFIG_ARCH_STM32MP) += stm32/
diff --git a/drivers/reset/reset-spacemit-k1.c
b/drivers/reset/reset-spacemit-k1.c
index 613e002fc4f..99dce90b4c4 100644
--- a/drivers/reset/reset-spacemit-k1.c
+++ b/drivers/reset/reset-spacemit-k1.c
@@ -452,10 +452,6 @@ static int spacemit_reset_update(struct reset_ctl *rst,
bool assert)
if (rst->id < RESET_UART1 || rst->id >= RESET_NUMBER)
return 0;
- /* can not write to twsi8 */
- if (rst->id == RESET_TWSI8)
- return 0;
-
spacemit_reset_set(rst, rst->id, assert);
return 0;
}
--
2.25.1