Annotation of elwix/tools/uboot_mkimage/include/watchdog.h, revision 1.1
1.1 ! misho 1: /*
! 2: * (C) Copyright 2001
! 3: * Erik Theisen, Wave 7 Optics, etheisen@mindspring.com.
! 4: *
! 5: * See file CREDITS for list of people who contributed to this
! 6: * project.
! 7: *
! 8: * This program is free software; you can redistribute it and/or
! 9: * modify it under the terms of the GNU General Public License as
! 10: * published by the Free Software Foundation; either version 2 of
! 11: * the License, or (at your option) any later version.
! 12: *
! 13: * This program is distributed in the hope that it will be useful,
! 14: * but WITHOUT ANY WARRANTY; without even the implied warranty of
! 15: * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
! 16: * GNU General Public License for more details.
! 17: *
! 18: * You should have received a copy of the GNU General Public License
! 19: * along with this program; if not, write to the Free Software
! 20: * Foundation, Inc., 59 Temple Place, Suite 330, Boston,
! 21: * MA 02111-1307 USA
! 22: */
! 23:
! 24: /*
! 25: * Watchdog functions and macros.
! 26: */
! 27: #ifndef _WATCHDOG_H_
! 28: #define _WATCHDOG_H_
! 29:
! 30: #if defined(CONFIG_HW_WATCHDOG) && defined(CONFIG_WATCHDOG)
! 31: # error "Configuration error: CONFIG_HW_WATCHDOG and CONFIG_WATCHDOG can't be used together."
! 32: #endif
! 33:
! 34: /*
! 35: * Hardware watchdog
! 36: */
! 37: #ifdef CONFIG_HW_WATCHDOG
! 38: #if defined(__ASSEMBLY__)
! 39: #define WATCHDOG_RESET bl hw_watchdog_reset
! 40: #else
! 41: extern void hw_watchdog_reset(void);
! 42:
! 43: #define WATCHDOG_RESET hw_watchdog_reset
! 44: #endif /* __ASSEMBLY__ */
! 45: #else
! 46: /*
! 47: * Maybe a software watchdog?
! 48: */
! 49: #if defined(CONFIG_WATCHDOG)
! 50: #if defined(__ASSEMBLY__)
! 51: #define WATCHDOG_RESET bl watchdog_reset
! 52: #else
! 53: extern void watchdog_reset(void);
! 54:
! 55: #define WATCHDOG_RESET watchdog_reset
! 56: #endif
! 57: #else
! 58: /*
! 59: * No hardware or software watchdog.
! 60: */
! 61: #if defined(__ASSEMBLY__)
! 62: #define WATCHDOG_RESET /*XXX DO_NOT_DEL_THIS_COMMENT*/
! 63: #else
! 64: #define WATCHDOG_RESET() {}
! 65: #endif /* __ASSEMBLY__ */
! 66: #endif /* CONFIG_WATCHDOG && !__ASSEMBLY__ */
! 67: #endif /* CONFIG_HW_WATCHDOG */
! 68:
! 69: /*
! 70: * Prototypes from $(CPU)/cpu.c.
! 71: */
! 72:
! 73: /* MPC 8xx */
! 74: #if (defined(CONFIG_8xx) || defined(CONFIG_MPC860)) && !defined(__ASSEMBLY__)
! 75: void reset_8xx_watchdog(volatile immap_t *immr);
! 76: #endif
! 77:
! 78: /* MPC 5xx */
! 79: #if defined(CONFIG_5xx) && !defined(__ASSEMBLY__)
! 80: void reset_5xx_watchdog(volatile immap_t *immr);
! 81: #endif
! 82:
! 83: /* MPC 5xxx */
! 84: #if defined(CONFIG_MPC5xxx) && !defined(__ASSEMBLY__)
! 85: void reset_5xxx_watchdog(void);
! 86: #endif
! 87:
! 88: /* AMCC 4xx */
! 89: #if defined(CONFIG_4xx) && !defined(__ASSEMBLY__)
! 90: void reset_4xx_watchdog(void);
! 91: #endif
! 92:
! 93: #endif /* _WATCHDOG_H_ */
FreeBSD-CVSweb <freebsd-cvsweb@FreeBSD.org>