Blame view
include/linux/aer.h
1.68 KB
6c2b374d7
|
1 2 3 4 5 6 7 8 |
/* * Copyright (C) 2006 Intel Corp. * Tom Long Nguyen (tom.l.nguyen@intel.com) * Zhang Yanmin (yanmin.zhang@intel.com) */ #ifndef _AER_H_ #define _AER_H_ |
c89e5b802
|
9 |
#include <linux/errno.h> |
efd01a72e
|
10 |
#include <linux/types.h> |
9e50a9122
|
11 12 13 |
#define AER_NONFATAL 0 #define AER_FATAL 1 #define AER_CORRECTABLE 2 |
5ccb8225a
|
14 |
struct pci_dev; |
c413d7682
|
15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 |
struct aer_header_log_regs { unsigned int dw0; unsigned int dw1; unsigned int dw2; unsigned int dw3; }; struct aer_capability_regs { u32 header; u32 uncor_status; u32 uncor_mask; u32 uncor_severity; u32 cor_status; u32 cor_mask; u32 cap_control; struct aer_header_log_regs header_log; u32 root_command; u32 root_status; u16 cor_err_source; u16 uncor_err_source; }; |
6c2b374d7
|
36 37 |
#if defined(CONFIG_PCIEAER) /* pci-e port driver needs this function to enable aer */ |
fde41b9fa
|
38 39 40 |
int pci_enable_pcie_error_reporting(struct pci_dev *dev); int pci_disable_pcie_error_reporting(struct pci_dev *dev); int pci_cleanup_aer_uncorrect_error_status(struct pci_dev *dev); |
b07461a8e
|
41 |
int pci_cleanup_aer_error_status_regs(struct pci_dev *dev); |
6c2b374d7
|
42 |
#else |
5547bbeed
|
43 44 45 46 |
static inline int pci_enable_pcie_error_reporting(struct pci_dev *dev) { return -EINVAL; } |
5547bbeed
|
47 48 49 50 51 52 53 54 |
static inline int pci_disable_pcie_error_reporting(struct pci_dev *dev) { return -EINVAL; } static inline int pci_cleanup_aer_uncorrect_error_status(struct pci_dev *dev) { return -EINVAL; } |
b07461a8e
|
55 56 57 58 |
static inline int pci_cleanup_aer_error_status_regs(struct pci_dev *dev) { return -EINVAL; } |
6c2b374d7
|
59 |
#endif |
95c35491f
|
60 |
void cper_print_aer(struct pci_dev *dev, int aer_severity, |
fde41b9fa
|
61 62 63 |
struct aer_capability_regs *aer); int cper_severity_to_aer(int cper_severity); void aer_recover_queue(int domain, unsigned int bus, unsigned int devfn, |
862f00125
|
64 65 |
int severity, struct aer_capability_regs *aer_regs); |
6c2b374d7
|
66 |
#endif //_AER_H_ |