1*e6acc406SArnd Bergmann /* SPDX-License-Identifier: GPL-2.0 */ 2*e6acc406SArnd Bergmann #ifndef __ASM_ARCH_RESET_H 3*e6acc406SArnd Bergmann #define __ASM_ARCH_RESET_H 4*e6acc406SArnd Bergmann 5*e6acc406SArnd Bergmann #define RESET_STATUS_HARDWARE (1 << 0) /* Hardware Reset */ 6*e6acc406SArnd Bergmann #define RESET_STATUS_WATCHDOG (1 << 1) /* Watchdog Reset */ 7*e6acc406SArnd Bergmann #define RESET_STATUS_LOWPOWER (1 << 2) /* Low Power/Sleep Exit */ 8*e6acc406SArnd Bergmann #define RESET_STATUS_GPIO (1 << 3) /* GPIO Reset */ 9*e6acc406SArnd Bergmann #define RESET_STATUS_ALL (0xf) 10*e6acc406SArnd Bergmann 11*e6acc406SArnd Bergmann extern void clear_reset_status(unsigned int mask); 12*e6acc406SArnd Bergmann extern void pxa_register_wdt(unsigned int reset_status); 13*e6acc406SArnd Bergmann 14*e6acc406SArnd Bergmann /** 15*e6acc406SArnd Bergmann * init_gpio_reset() - register GPIO as reset generator 16*e6acc406SArnd Bergmann * @gpio: gpio nr 17*e6acc406SArnd Bergmann * @output: set gpio as output instead of input during normal work 18*e6acc406SArnd Bergmann * @level: output level 19*e6acc406SArnd Bergmann */ 20*e6acc406SArnd Bergmann extern int init_gpio_reset(int gpio, int output, int level); 21*e6acc406SArnd Bergmann 22*e6acc406SArnd Bergmann #endif /* __ASM_ARCH_RESET_H */ 23