blob: d9c6ac622888d6dfd62f6815ecebc47aec74af27 [file] [log] [blame]
Patrick Georgiac959032020-05-05 22:49:26 +02001/* SPDX-License-Identifier: GPL-2.0-or-later */
Patrick Rudolphf677d172018-10-01 19:17:11 +02002
3#ifndef _INTEL_COMMON_RESET_H_
4#define _INTEL_COMMON_RESET_H_
5
Furquan Shaikhb13bd1e2020-09-21 22:44:27 +00006/*
7 * Implement SoC specific global reset (i.e. a reset of both host and
8 * ME partitions). Usually the ME is asked to perform the reset first.
9 * If that doesn't work out, fall back to a manual global reset.
10 */
11void do_global_reset(void);
12
13/* Prepare for reset, run do_global_reset(), halt. */
Patrick Rudolphf677d172018-10-01 19:17:11 +020014__noreturn void global_reset(void);
15
Subrata Banikda7d00e2023-04-26 16:31:56 +053016/*
17 * Return PCH Reset Status
18 * The return status can be between EfiResetCold, EfiResetWarm, EfiResetShutdown
19 * or EfiResetPlatformSpecific.
20 *
21 * If reset type if `EfiResetPlatformSpecific` then relying on pch_reset_data structure
22 * to know if the reset type is a global reset.
23 */
24uint32_t fsp_get_pch_reset_status(void);
25
Patrick Rudolphf677d172018-10-01 19:17:11 +020026#endif /* _INTEL_COMMON_RESET_H_ */