xref: /linux/arch/powerpc/include/uapi/asm/eeh.h (revision 5f5c9952b33cb4e8d25c70ef29f7a45cd26b6a9b)
1 /* SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note */
2 /*
3  * Copyright IBM Corp. 2015
4  *
5  * Authors: Gavin Shan <gwshan@linux.vnet.ibm.com>
6  */
7 
8 #ifndef _ASM_POWERPC_EEH_H
9 #define _ASM_POWERPC_EEH_H
10 
11 /* PE states */
12 #define EEH_PE_STATE_NORMAL		0	/* Normal state		*/
13 #define EEH_PE_STATE_RESET		1	/* PE reset asserted	*/
14 #define EEH_PE_STATE_STOPPED_IO_DMA	2	/* Frozen PE		*/
15 #define EEH_PE_STATE_STOPPED_DMA	4	/* Stopped DMA only	*/
16 #define EEH_PE_STATE_UNAVAIL		5	/* Unavailable		*/
17 
18 /* EEH error types and functions */
19 #define EEH_ERR_TYPE_32			0       /* 32-bits error	*/
20 #define EEH_ERR_TYPE_64			1       /* 64-bits error	*/
21 #define EEH_ERR_FUNC_MIN		0
22 #define EEH_ERR_FUNC_LD_MEM_ADDR	0	/* Memory load	*/
23 #define EEH_ERR_FUNC_LD_MEM_DATA	1
24 #define EEH_ERR_FUNC_LD_IO_ADDR		2	/* IO load	*/
25 #define EEH_ERR_FUNC_LD_IO_DATA		3
26 #define EEH_ERR_FUNC_LD_CFG_ADDR	4	/* Config load	*/
27 #define EEH_ERR_FUNC_LD_CFG_DATA	5
28 #define EEH_ERR_FUNC_ST_MEM_ADDR	6	/* Memory store	*/
29 #define EEH_ERR_FUNC_ST_MEM_DATA	7
30 #define EEH_ERR_FUNC_ST_IO_ADDR		8	/* IO store	*/
31 #define EEH_ERR_FUNC_ST_IO_DATA		9
32 #define EEH_ERR_FUNC_ST_CFG_ADDR	10	/* Config store	*/
33 #define EEH_ERR_FUNC_ST_CFG_DATA	11
34 #define EEH_ERR_FUNC_DMA_RD_ADDR	12	/* DMA read	*/
35 #define EEH_ERR_FUNC_DMA_RD_DATA	13
36 #define EEH_ERR_FUNC_DMA_RD_MASTER	14
37 #define EEH_ERR_FUNC_DMA_RD_TARGET	15
38 #define EEH_ERR_FUNC_DMA_WR_ADDR	16	/* DMA write	*/
39 #define EEH_ERR_FUNC_DMA_WR_DATA	17
40 #define EEH_ERR_FUNC_DMA_WR_MASTER	18
41 #define EEH_ERR_FUNC_DMA_WR_TARGET	19
42 #define EEH_ERR_FUNC_MAX		19
43 
44 #endif /* _ASM_POWERPC_EEH_H */
45