xref: /openbmc/linux/include/linux/ras.h (revision 0607512d)
1d963cd95SChen, Gong #ifndef __RAS_H__
2d963cd95SChen, Gong #define __RAS_H__
3d963cd95SChen, Gong 
4011d8261SBorislav Petkov #include <asm/errno.h>
5297b64c7STyler Baicar #include <linux/uuid.h>
6e9279e83STyler Baicar #include <linux/cper.h>
7011d8261SBorislav Petkov 
8d963cd95SChen, Gong #ifdef CONFIG_DEBUG_FS
9d963cd95SChen, Gong int ras_userspace_consumers(void);
10d963cd95SChen, Gong void ras_debugfs_init(void);
11d963cd95SChen, Gong int ras_add_daemon_trace(void);
12d963cd95SChen, Gong #else
13d963cd95SChen, Gong static inline int ras_userspace_consumers(void) { return 0; }
14011d8261SBorislav Petkov static inline void ras_debugfs_init(void) { }
15d963cd95SChen, Gong static inline int ras_add_daemon_trace(void) { return 0; }
16d963cd95SChen, Gong #endif
17d963cd95SChen, Gong 
18011d8261SBorislav Petkov #ifdef CONFIG_RAS_CEC
19011d8261SBorislav Petkov void __init cec_init(void);
20011d8261SBorislav Petkov int __init parse_cec_param(char *str);
21011d8261SBorislav Petkov int cec_add_elem(u64 pfn);
22011d8261SBorislav Petkov #else
23011d8261SBorislav Petkov static inline void __init cec_init(void)	{ }
24011d8261SBorislav Petkov static inline int cec_add_elem(u64 pfn)		{ return -ENODEV; }
25d963cd95SChen, Gong #endif
26011d8261SBorislav Petkov 
27297b64c7STyler Baicar #ifdef CONFIG_RAS
28297b64c7STyler Baicar void log_non_standard_event(const guid_t *sec_type,
29297b64c7STyler Baicar 			    const guid_t *fru_id, const char *fru_text,
30297b64c7STyler Baicar 			    const u8 sev, const u8 *err, const u32 len);
31e9279e83STyler Baicar void log_arm_hw_error(struct cper_sec_proc_arm *err);
32297b64c7STyler Baicar #else
33*0607512dSArnd Bergmann static inline void
34*0607512dSArnd Bergmann log_non_standard_event(const guid_t *sec_type,
35297b64c7STyler Baicar 		       const guid_t *fru_id, const char *fru_text,
36*0607512dSArnd Bergmann 		       const u8 sev, const u8 *err, const u32 len)
37*0607512dSArnd Bergmann { return; }
38*0607512dSArnd Bergmann static inline void
39*0607512dSArnd Bergmann log_arm_hw_error(struct cper_sec_proc_arm *err) { return; }
40297b64c7STyler Baicar #endif
41297b64c7STyler Baicar 
42011d8261SBorislav Petkov #endif /* __RAS_H__ */
43