Files
luban-lite-t3e-pro/bsp/common/include/aic_reboot_reason.h

80 lines
2.4 KiB
C
Raw Normal View History

2023-11-09 20:19:51 +08:00
/*
2024-09-03 11:16:08 +08:00
* Copyright (c) 2023-2024, ArtInChip Technology Co., Ltd
2023-11-09 20:19:51 +08:00
*
* SPDX-License-Identifier: Apache-2.0
*/
2023-08-30 16:21:18 +08:00
#ifndef __REBOOT_REASON_H__
#define __REBOOT_REASON_H__
2023-11-09 20:19:51 +08:00
#include "aic_common.h"
2023-08-30 16:21:18 +08:00
enum aic_reboot_reason {
REBOOT_REASON_COLD = 0,
2023-11-09 20:19:51 +08:00
#if defined(AIC_WRI_DRV_V12) || defined(AIC_WRI_DRV_V11) || defined(AIC_WRI_DRV_V10)
2023-08-30 16:21:18 +08:00
REBOOT_REASON_CMD_REBOOT = 1,
REBOOT_REASON_CMD_SHUTDOWN = 2,
REBOOT_REASON_SUSPEND = 3,
2024-06-04 19:00:30 +08:00
REBOOT_REASON_UPGRADE = 4, /* Goto BROM upgrade mode */
REBOOT_REASON_BL_UPGRADE = 5, /* Goto Bootloader upgrade mode */
2023-11-09 20:19:51 +08:00
#endif
#if defined(AIC_WRI_DRV_V13)
REBOOT_REASON_CS_CMD_REBOOT = 1,
REBOOT_REASON_SC_CMD_REBOOT = 2,
REBOOT_REASON_SP_CMD_REBOOT = 3,
2024-01-27 08:47:24 +08:00
REBOOT_REASON_SE_CMD_REBOOT = 4,
REBOOT_REASON_CMD_SHUTDOWN = 5,
REBOOT_REASON_SUSPEND = 6,
2024-06-04 19:00:30 +08:00
REBOOT_REASON_UPGRADE = 7, /* Goto BROM upgrade mode */
REBOOT_REASON_BL_UPGRADE = 8, /* Goto Bootloader upgrade mode */
2023-11-09 20:19:51 +08:00
#endif
2023-08-30 16:21:18 +08:00
/* Some software exception reason */
REBOOT_REASON_SW_LOCKUP = 8,
REBOOT_REASON_HW_LOCKUP = 9,
REBOOT_REASON_PANIC = 10,
REBOOT_REASON_RAMDUMP = 11,
/* Some hardware exception reason */
2023-11-09 20:19:51 +08:00
#if defined(AIC_WRI_DRV_V12) || defined(AIC_WRI_DRV_V11) || defined(AIC_WRI_DRV_V10)
2023-08-30 16:21:18 +08:00
REBOOT_REASON_RTC = 17,
REBOOT_REASON_EXTEND = 18,
REBOOT_REASON_JTAG = 19,
REBOOT_REASON_OTP = 20,
REBOOT_REASON_UNDER_VOL = 21,
2023-11-09 20:19:51 +08:00
#endif
#if defined(AIC_WRI_DRV_V13)
REBOOT_REASON_VDD11_SP_POR = 17,
2024-06-04 19:00:30 +08:00
REBOOT_REASON_VDD11_SW_POR,
REBOOT_REASON_VDD11_C908_POR,
REBOOT_REASON_RTC_POR,
REBOOT_REASON_PIN_RST,
REBOOT_REASON_THS_RST,
REBOOT_REASON_SP_WDOG_SYS_RST,
REBOOT_REASON_SP_WDOG_CPU_RST,
REBOOT_REASON_SP_DM_NDM_RST,
REBOOT_REASON_SP_DM_CPU_RST,
REBOOT_REASON_CS_WDOG_SYS_RST,
REBOOT_REASON_CS_WDOG_CPU_RST,
REBOOT_REASON_CS_DM_NDM_RST,
REBOOT_REASON_CS_DM_CPU_RST,
REBOOT_REASON_SC_WDOG_SYS_RST,
REBOOT_REASON_SC_WDOG_CPU_RST,
REBOOT_REASON_SC_DM_NDM_RST,
REBOOT_REASON_SC_DM_CPU_RST,
REBOOT_REASON_SE_WDOG_SYS_RST,
REBOOT_REASON_SE_WDOG_CPU_RST,
REBOOT_REASON_SE_DM_NDM_RST,
2023-11-09 20:19:51 +08:00
#endif
2023-08-30 16:21:18 +08:00
REBOOT_REASON_INVALID = 0xff,
};
/* Defined in ArtInChip RTC/WRI module */
void aic_set_reboot_reason(enum aic_reboot_reason reason);
enum aic_reboot_reason aic_get_reboot_reason(void);
2024-06-04 19:00:30 +08:00
void aic_clr_reboot_reason(void);
2023-08-30 16:21:18 +08:00
void aic_show_gtc_time(char *tag, u32 val);
void aic_show_startup_time(void);
#endif // end of __REBOOT_REASON_H__