edac.h 1014 B

123456789101112131415161718192021222324252627282930313233343536373839404142434445
  1. /*
  2. * Generic EDAC defs
  3. *
  4. * Author: Dave Jiang <djiang@mvista.com>
  5. *
  6. * 2006-2008 (c) MontaVista Software, Inc. This file is licensed under
  7. * the terms of the GNU General Public License version 2. This program
  8. * is licensed "as is" without any warranty of any kind, whether express
  9. * or implied.
  10. *
  11. */
  12. #ifndef _LINUX_EDAC_H_
  13. #define _LINUX_EDAC_H_
  14. #include <asm/atomic.h>
  15. #include <linux/sysdev.h>
  16. #define EDAC_OPSTATE_INVAL -1
  17. #define EDAC_OPSTATE_POLL 0
  18. #define EDAC_OPSTATE_NMI 1
  19. #define EDAC_OPSTATE_INT 2
  20. extern int edac_op_state;
  21. extern int edac_err_assert;
  22. extern atomic_t edac_handlers;
  23. extern struct sysdev_class edac_class;
  24. extern int edac_handler_set(void);
  25. extern void edac_atomic_assert_error(void);
  26. extern struct sysdev_class *edac_get_sysfs_class(void);
  27. extern void edac_put_sysfs_class(void);
  28. static inline void opstate_init(void)
  29. {
  30. switch (edac_op_state) {
  31. case EDAC_OPSTATE_POLL:
  32. case EDAC_OPSTATE_NMI:
  33. break;
  34. default:
  35. edac_op_state = EDAC_OPSTATE_POLL;
  36. }
  37. return;
  38. }
  39. #endif