dm: spi: Fix spi_free_slave() freed memory write
[platform/kernel/u-boot.git] / drivers / reset / Kconfig
1 menu "Reset Controller Support"
2
3 config DM_RESET
4         bool "Enable reset controllers using Driver Model"
5         depends on DM && OF_CONTROL
6         help
7           Enable support for the reset controller driver class. Many hardware
8           modules are equipped with a reset signal, typically driven by some
9           reset controller hardware module within the chip. In U-Boot, reset
10           controller drivers allow control over these reset signals. In some
11           cases this API is applicable to chips outside the CPU as well,
12           although driving such reset isgnals using GPIOs may be more
13           appropriate in this case.
14
15 config SANDBOX_RESET
16         bool "Enable the sandbox reset test driver"
17         depends on DM_MAILBOX && SANDBOX
18         help
19           Enable support for a test reset controller implementation, which
20           simply accepts requests to reset various HW modules without actually
21           doing anything beyond a little error checking.
22
23 config STI_RESET
24         bool "Enable the STi reset"
25         depends on ARCH_STI
26         help
27           Support for reset controllers on STMicroelectronics STiH407 family SoCs.
28           Say Y if you want to control reset signals provided by system config
29           block.
30
31 config STM32_RESET
32         bool "Enable the STM32 reset"
33         depends on ARCH_STM32 || ARCH_STM32MP
34         help
35           Support for reset controllers on STMicroelectronics STM32 family SoCs.
36           This reset driver is compatible with STM32 F4/F7 and H7 SoCs.
37
38 config TEGRA_CAR_RESET
39         bool "Enable Tegra CAR-based reset driver"
40         depends on TEGRA_CAR
41         help
42           Enable support for manipulating Tegra's on-SoC reset signals via
43           direct register access to the Tegra CAR (Clock And Reset controller).
44
45 config TEGRA186_RESET
46         bool "Enable Tegra186 BPMP-based reset driver"
47         depends on TEGRA186_BPMP
48         help
49           Enable support for manipulating Tegra's on-SoC reset signals via IPC
50           requests to the BPMP (Boot and Power Management Processor).
51
52 config RESET_TI_SCI
53         bool "TI System Control Interface (TI SCI) reset driver"
54         depends on DM_RESET && TI_SCI_PROTOCOL
55         help
56           This enables the reset driver support over TI System Control Interface
57           available on some new TI's SoCs. If you wish to use reset resources
58           managed by the TI System Controller, say Y here. Otherwise, say N.
59
60 config RESET_BCM6345
61         bool "Reset controller driver for BCM6345"
62         depends on DM_RESET && ARCH_BMIPS
63         help
64           Support reset controller on BCM6345.
65
66 config RESET_UNIPHIER
67         bool "Reset controller driver for UniPhier SoCs"
68         depends on ARCH_UNIPHIER
69         default y
70         help
71           Support for reset controllers on UniPhier SoCs.
72           Say Y if you want to control reset signals provided by System Control
73           block, Media I/O block, Peripheral Block.
74
75 config RESET_AST2500
76         bool "Reset controller driver for AST2500 SoCs"
77         depends on DM_RESET
78         default y if ASPEED_AST2500
79         help
80           Support for reset controller on AST2500 SoC.
81           Say Y if you want to control reset signals of different peripherals
82           through System Control Unit (SCU).
83
84 config RESET_ROCKCHIP
85         bool "Reset controller driver for Rockchip SoCs"
86         depends on DM_RESET && ARCH_ROCKCHIP && CLK
87         default y
88         help
89           Support for reset controller on rockchip SoC. The main limitation
90           though is that some reset signals, like I2C or MISC reset multiple
91           devices.
92
93 config RESET_HSDK
94         bool "Synopsys HSDK Reset Driver"
95         depends on DM_RESET && TARGET_HSDK
96         default y
97         help
98           This enables the reset controller driver for HSDK board.
99
100 config RESET_MESON
101         bool "Reset controller driver for Amlogic Meson SoCs"
102         depends on DM_RESET && ARCH_MESON
103         imply REGMAP
104         default y
105         help
106           Support for reset controller on Amlogic Meson SoC.
107
108 config RESET_SOCFPGA
109         bool "Reset controller driver for SoCFPGA"
110         depends on DM_RESET && ARCH_SOCFPGA
111         default y
112         help
113           Support for reset controller on SoCFPGA platform.
114
115 config RESET_MEDIATEK
116         bool "Reset controller driver for MediaTek SoCs"
117         depends on DM_RESET && ARCH_MEDIATEK && CLK
118         default y
119         help
120           Support for reset controller on MediaTek SoCs.
121
122 config RESET_MTMIPS
123         bool "Reset controller driver for MediaTek MIPS platform"
124         depends on DM_RESET && ARCH_MTMIPS
125         default y
126         help
127           Support for reset controller on MediaTek MIPS platform.
128
129 config RESET_SUNXI
130         bool "RESET support for Allwinner SoCs"
131         depends on DM_RESET && ARCH_SUNXI
132         default y
133         help
134           This enables support for common reset driver for
135           Allwinner SoCs.
136
137 config RESET_HISILICON
138         bool "Reset controller driver for HiSilicon SoCs"
139         depends on DM_RESET
140         help
141           Support for reset controller on HiSilicon SoCs.
142
143 config RESET_IMX7
144         bool "i.MX7/8 Reset Driver"
145         depends on DM_RESET && (ARCH_MX7 || ARCH_IMX8M)
146         default y
147         help
148           Support for reset controller on i.MX7/8 SoCs.
149
150 config RESET_IPQ419
151         bool "Reset driver for Qualcomm IPQ40xx SoCs"
152         depends on DM_RESET && ARCH_IPQ40XX
153         default y
154         help
155           Support for reset controller on Qualcomm
156           IPQ40xx SoCs.
157
158 config RESET_SIFIVE
159         bool "Reset Driver for SiFive SoC's"
160         depends on DM_RESET && CLK_SIFIVE_FU540_PRCI && TARGET_SIFIVE_FU540
161         default y
162         help
163           PRCI module within SiFive SoC's provides mechanism to reset
164           different hw blocks like DDR, gemgxl. With this driver we leverage
165           U-Boot's reset framework to reset these hardware blocks.
166
167 config RESET_SYSCON
168         bool "Enable generic syscon reset driver support"
169         depends on DM_RESET
170         help
171           Support generic syscon mapped register reset devices.
172
173 config RESET_RASPBERRYPI
174         bool "Raspberry Pi 4 Firmware Reset Controller Driver"
175         depends on DM_RESET && ARCH_BCM283X
176         default USB_XHCI_PCI
177         help
178           Raspberry Pi 4's co-processor controls some of the board's HW
179           initialization process, but it's up to Linux to trigger it when
180           relevant. This driver provides a reset controller capable of
181           interfacing with RPi4's co-processor and model these firmware
182           initialization routines as reset lines.
183
184 config RESET_SCMI
185         bool "Enable SCMI reset domain driver"
186         select SCMI_FIRMWARE
187         help
188           Enable this option if you want to support reset controller
189           devices exposed by a SCMI agent based on SCMI reset domain
190           protocol communication with a SCMI server.
191 endmenu