1#
2# System reset devices
3#
4
5menu "System reset device drivers"
6
7config SYSRESET
8	bool "Enable support for system reset drivers"
9	depends on DM
10	help
11	  Enable system reset drivers which can be used to reset the CPU or
12	  board. Each driver can provide a reset method which will be called
13	  to effect a reset. The uclass will try all available drivers when
14	  reset_walk() is called.
15
16config SPL_SYSRESET
17	bool "Enable support for system reset drivers in SPL mode"
18	depends on SYSRESET && SPL_DM
19	help
20	  Enable system reset drivers which can be used to reset the CPU or
21	  board. Each driver can provide a reset method which will be called
22	  to effect a reset. The uclass will try all available drivers when
23	  reset_walk() is called.
24
25config TPL_SYSRESET
26	bool "Enable support for system reset drivers in TPL mode"
27	depends on SYSRESET && TPL_DM
28	help
29	  Enable system reset drivers which can be used to reset the CPU or
30	  board. Each driver can provide a reset method which will be called
31	  to effect a reset. The uclass will try all available drivers when
32	  reset_walk() is called.
33
34config VPL_SYSRESET
35	bool "Enable support for system reset drivers in VPL mode"
36	depends on SYSRESET && VPL_DM
37	default y if TPL_SYSRESET
38	help
39	  Enable system reset drivers which can be used to reset the CPU or
40	  board. Each driver can provide a reset method which will be called
41	  to effect a reset. The uclass will try all available drivers when
42	  reset_walk() is called.
43
44if SYSRESET
45
46config SYSRESET_CMD_RESET
47	bool "sysreset implementation of the reset command"
48	default y
49	help
50	  Enable sysreset implementation of the reset command.
51
52if CMD_POWEROFF
53
54config SYSRESET_CMD_POWEROFF
55	bool "sysreset implementation of the poweroff command"
56	help
57	  This should be selected by the appropriate PMIC driver if
58	  the poweroff command is enabled.
59
60endif
61
62config POWEROFF_GPIO
63	bool "Enable support for GPIO poweroff driver"
64	select DM_GPIO
65	help
66	  Support for system poweroff using a GPIO pin. This can be used
67	  for systems having a single GPIO to trigger a system poweroff.
68
69config SYSRESET_GPIO
70	bool "Enable support for GPIO reset driver"
71	select DM_GPIO
72	help
73	  Reset support via GPIO pin connected reset logic. This is used for
74	  example on Microblaze where reset logic can be controlled via GPIO
75	  pin which triggers cpu reset.
76
77config SYSRESET_MICROBLAZE
78	bool "Enable support for Microblaze soft reset"
79	depends on MICROBLAZE
80	help
81	  This is soft reset on Microblaze which does jump to 0x0 address.
82
83config SYSRESET_OCTEON
84	bool "Enable support for Marvell Octeon SoC family"
85	depends on ARCH_OCTEON
86	help
87	  This enables the system reset driver support for Marvell Octeon
88	  SoCs.
89
90config SYSRESET_AT91
91	bool "Enable support for Microchip/Atmel reset driver"
92	depends on ARCH_AT91
93	select SYSRESET_SPL_AT91 if SPL && SPL_SYSRESET
94	help
95	  This enables the system reset driver support for Microchip/Atmel
96	  SoCs.
97
98config SYSRESET_SPL_AT91
99	bool "Enable support for Microchip/Atmel reset driver in SPL"
100	depends on ARCH_AT91
101	help
102	  This enables the system reset driver support for Microchip/Atmel
103	  SoCs in SPL.
104
105config SYSRESET_PSCI
106	bool "Enable support for PSCI System Reset"
107	depends on ARM_PSCI_FW
108	select SPL_ARM_PSCI_FW if SPL
109	help
110	  Enable PSCI SYSTEM_RESET function call.  To use this, PSCI firmware
111	  must be running on your system.
112
113config SYSRESET_SBI
114	bool "Enable support for SBI System Reset"
115	depends on RISCV_SMODE && SBI_V02
116	default y
117	select SYSRESET_CMD_POWEROFF if CMD_POWEROFF
118	help
119	  Enable system reset and poweroff via the SBI system reset extension.
120	  The extension was introduced in version 0.3 of the SBI specification.
121
122	  If the SBI implementation provides the extension, is board specific.
123	  The RISC-V platform specification mandates the extension for rich
124	  operating system platforms.
125
126config SYSRESET_SOCFPGA
127	bool "Enable support for Intel SOCFPGA family"
128	depends on ARCH_SOCFPGA && (TARGET_SOCFPGA_GEN5 || TARGET_SOCFPGA_ARRIA10)
129	help
130	  This enables the system reset driver support for Intel SOCFPGA SoCs
131	  (Cyclone 5, Arria 5 and Arria 10).
132
133config SYSRESET_SOCFPGA_SOC64
134	bool "Enable support for Intel SOCFPGA SoC64 family (Stratix10/Agilex)"
135	depends on ARCH_SOCFPGA && TARGET_SOCFPGA_SOC64
136	help
137	  This enables the system reset driver support for Intel SOCFPGA
138	  SoC64 SoCs.
139
140config SYSRESET_TI_SCI
141	bool "TI System Control Interface (TI SCI) system reset driver"
142	depends on TI_SCI_PROTOCOL
143	help
144	  This enables the system reset driver support over TI System Control
145	  Interface available on some new TI's SoCs.
146
147config SYSRESET_SYSCON
148	bool "Enable support for mfd syscon reboot driver"
149	select REGMAP
150	select SYSCON
151	help
152	  Reboot support for generic SYSCON mapped register reset.
153
154config SYSRESET_WATCHDOG
155	bool "Enable support for watchdog reboot driver"
156	select WDT
157	help
158	  Reboot support for generic watchdog reset.
159
160config SYSRESET_WATCHDOG_AUTO
161	bool "Automatically register first watchdog with sysreset"
162	depends on SYSRESET_WATCHDOG
163	help
164	  If enabled, the first watchdog (as selected by the watchdog uclass)
165	  will automatically be registered with the watchdog reboot driver.
166
167config SYSRESET_RESETCTL
168	bool "Enable support for reset controller reboot driver"
169	select DM_RESET
170	help
171	  Reboot support using generic reset controller.
172
173config SYSRESET_X86
174	bool "Enable support for x86 processor reboot driver"
175	depends on X86
176	help
177	  Reboot support for generic x86 processor reset.
178
179config SYSRESET_SPL_X86
180	bool "Enable support for x86 processor reboot driver in SPL"
181	depends on X86
182	help
183	  Reboot support for generic x86 processor reset in SPL.
184
185config SYSRESET_TPL_X86
186	bool "Enable support for x86 processor reboot driver in TPL"
187	depends on X86
188	help
189	  Reboot support for generic x86 processor reset in TPL.
190
191config SYSRESET_MPC83XX
192	bool "Enable support MPC83xx SoC family reboot driver"
193	help
194	  Reboot support for NXP MPC83xx SoCs.
195
196endif
197
198endmenu
199