forked from Minki/linux
28df169b9a
Some TI Keystone family of SoCs contain a system controller (like the Power Management Micro Controller (PMMC) on 66AK2G SoCs) that manage the low-level device control (like clocks, resets etc) for the various hardware modules present on the SoC. These device control operations are provided to the host processor OS through a communication protocol called the TI System Control Interface (TI SCI) protocol. This patch adds a reset driver that communicates to the system controller over the TI SCI protocol for performing reset management of various devices present on the SoC. Various reset functionalities are achieved by the means of different TI SCI device operations provided by the TI SCI framework. Signed-off-by: Andrew F. Davis <afd@ti.com> [s-anna@ti.com: documentation changes, revised commit message] Signed-off-by: Suman Anna <s-anna@ti.com> Signed-off-by: Nishanth Menon <nm@ti.com> Acked-by: Santosh Shilimkar <ssantosh@kernel.org> [p.zabel@pengutronix.de: const struct reset_control_ops] Signed-off-by: Philipp Zabel <p.zabel@pengutronix.de>
135 lines
3.6 KiB
Plaintext
135 lines
3.6 KiB
Plaintext
config ARCH_HAS_RESET_CONTROLLER
|
|
bool
|
|
|
|
menuconfig RESET_CONTROLLER
|
|
bool "Reset Controller Support"
|
|
default y if ARCH_HAS_RESET_CONTROLLER
|
|
help
|
|
Generic Reset Controller support.
|
|
|
|
This framework is designed to abstract reset handling of devices
|
|
via GPIOs or SoC-internal reset controller modules.
|
|
|
|
If unsure, say no.
|
|
|
|
if RESET_CONTROLLER
|
|
|
|
config RESET_A10SR
|
|
tristate "Altera Arria10 System Resource Reset"
|
|
depends on MFD_ALTERA_A10SR
|
|
help
|
|
This option enables support for the external reset functions for
|
|
peripheral PHYs on the Altera Arria10 System Resource Chip.
|
|
|
|
config RESET_ATH79
|
|
bool "AR71xx Reset Driver" if COMPILE_TEST
|
|
default ATH79
|
|
help
|
|
This enables the ATH79 reset controller driver that supports the
|
|
AR71xx SoC reset controller.
|
|
|
|
config RESET_BERLIN
|
|
bool "Berlin Reset Driver" if COMPILE_TEST
|
|
default ARCH_BERLIN
|
|
help
|
|
This enables the reset controller driver for Marvell Berlin SoCs.
|
|
|
|
config RESET_GEMINI
|
|
bool "Gemini Reset Driver" if COMPILE_TEST
|
|
default ARCH_GEMINI
|
|
select MFD_SYSCON
|
|
help
|
|
This enables the reset controller driver for Cortina Systems Gemini.
|
|
|
|
config RESET_IMX7
|
|
bool "i.MX7 Reset Driver" if COMPILE_TEST
|
|
default SOC_IMX7D
|
|
select MFD_SYSCON
|
|
help
|
|
This enables the reset controller driver for i.MX7 SoCs.
|
|
|
|
config RESET_LPC18XX
|
|
bool "LPC18xx/43xx Reset Driver" if COMPILE_TEST
|
|
default ARCH_LPC18XX
|
|
help
|
|
This enables the reset controller driver for NXP LPC18xx/43xx SoCs.
|
|
|
|
config RESET_MESON
|
|
bool "Meson Reset Driver" if COMPILE_TEST
|
|
default ARCH_MESON
|
|
help
|
|
This enables the reset driver for Amlogic Meson SoCs.
|
|
|
|
config RESET_OXNAS
|
|
bool
|
|
|
|
config RESET_PISTACHIO
|
|
bool "Pistachio Reset Driver" if COMPILE_TEST
|
|
default MACH_PISTACHIO
|
|
help
|
|
This enables the reset driver for ImgTec Pistachio SoCs.
|
|
|
|
config RESET_SOCFPGA
|
|
bool "SoCFPGA Reset Driver" if COMPILE_TEST
|
|
default ARCH_SOCFPGA
|
|
help
|
|
This enables the reset controller driver for Altera SoCFPGAs.
|
|
|
|
config RESET_STM32
|
|
bool "STM32 Reset Driver" if COMPILE_TEST
|
|
default ARCH_STM32
|
|
help
|
|
This enables the RCC reset controller driver for STM32 MCUs.
|
|
|
|
config RESET_SUNXI
|
|
bool "Allwinner SoCs Reset Driver" if COMPILE_TEST && !ARCH_SUNXI
|
|
default ARCH_SUNXI
|
|
help
|
|
This enables the reset driver for Allwinner SoCs.
|
|
|
|
config RESET_TI_SCI
|
|
tristate "TI System Control Interface (TI-SCI) reset driver"
|
|
depends on TI_SCI_PROTOCOL
|
|
help
|
|
This enables the reset driver support over TI System Control Interface
|
|
available on some new TI's SoCs. If you wish to use reset resources
|
|
managed by the TI System Controller, say Y here. Otherwise, say N.
|
|
|
|
config RESET_TI_SYSCON
|
|
tristate "TI SYSCON Reset Driver"
|
|
depends on HAS_IOMEM
|
|
select MFD_SYSCON
|
|
help
|
|
This enables the reset driver support for TI devices with
|
|
memory-mapped reset registers as part of a syscon device node. If
|
|
you wish to use the reset framework for such memory-mapped devices,
|
|
say Y here. Otherwise, say N.
|
|
|
|
config RESET_UNIPHIER
|
|
tristate "Reset controller driver for UniPhier SoCs"
|
|
depends on ARCH_UNIPHIER || COMPILE_TEST
|
|
depends on OF && MFD_SYSCON
|
|
default ARCH_UNIPHIER
|
|
help
|
|
Support for reset controllers on UniPhier SoCs.
|
|
Say Y if you want to control reset signals provided by System Control
|
|
block, Media I/O block, Peripheral Block.
|
|
|
|
config RESET_ZX2967
|
|
bool "ZTE ZX2967 Reset Driver"
|
|
depends on ARCH_ZX || COMPILE_TEST
|
|
help
|
|
This enables the reset controller driver for ZTE's zx2967 family.
|
|
|
|
config RESET_ZYNQ
|
|
bool "ZYNQ Reset Driver" if COMPILE_TEST
|
|
default ARCH_ZYNQ
|
|
help
|
|
This enables the reset controller driver for Xilinx Zynq SoCs.
|
|
|
|
source "drivers/reset/sti/Kconfig"
|
|
source "drivers/reset/hisilicon/Kconfig"
|
|
source "drivers/reset/tegra/Kconfig"
|
|
|
|
endif
|