diff options
Diffstat (limited to 'arch/powerpc/include/asm/rtas.h')
| -rw-r--r-- | arch/powerpc/include/asm/rtas.h | 34 | 
1 files changed, 33 insertions, 1 deletions
diff --git a/arch/powerpc/include/asm/rtas.h b/arch/powerpc/include/asm/rtas.h index 01c143bb77a..f0a4db31ecb 100644 --- a/arch/powerpc/include/asm/rtas.h +++ b/arch/powerpc/include/asm/rtas.h @@ -74,7 +74,6 @@ struct rtas_suspend_me_data {  /* RTAS event classes */  #define RTAS_INTERNAL_ERROR		0x80000000 /* set bit 0 */  #define RTAS_EPOW_WARNING		0x40000000 /* set bit 1 */ -#define RTAS_POWERMGM_EVENTS		0x20000000 /* set bit 2 */  #define RTAS_HOTPLUG_EVENTS		0x10000000 /* set bit 3 */  #define RTAS_IO_EVENTS			0x08000000 /* set bit 4 */  #define RTAS_EVENT_SCAN_ALL_EVENTS	0xffffffff @@ -204,6 +203,39 @@ struct rtas_ext_event_log_v6 {  					/* Variable length.		*/  }; +/* pSeries event log format */ + +/* Two bytes ASCII section IDs */ +#define PSERIES_ELOG_SECT_ID_PRIV_HDR		(('P' << 8) | 'H') +#define PSERIES_ELOG_SECT_ID_USER_HDR		(('U' << 8) | 'H') +#define PSERIES_ELOG_SECT_ID_PRIMARY_SRC	(('P' << 8) | 'S') +#define PSERIES_ELOG_SECT_ID_EXTENDED_UH	(('E' << 8) | 'H') +#define PSERIES_ELOG_SECT_ID_FAILING_MTMS	(('M' << 8) | 'T') +#define PSERIES_ELOG_SECT_ID_SECONDARY_SRC	(('S' << 8) | 'S') +#define PSERIES_ELOG_SECT_ID_DUMP_LOCATOR	(('D' << 8) | 'H') +#define PSERIES_ELOG_SECT_ID_FW_ERROR		(('S' << 8) | 'W') +#define PSERIES_ELOG_SECT_ID_IMPACT_PART_ID	(('L' << 8) | 'P') +#define PSERIES_ELOG_SECT_ID_LOGIC_RESOURCE_ID	(('L' << 8) | 'R') +#define PSERIES_ELOG_SECT_ID_HMC_ID		(('H' << 8) | 'M') +#define PSERIES_ELOG_SECT_ID_EPOW		(('E' << 8) | 'P') +#define PSERIES_ELOG_SECT_ID_IO_EVENT		(('I' << 8) | 'E') +#define PSERIES_ELOG_SECT_ID_MANUFACT_INFO	(('M' << 8) | 'I') +#define PSERIES_ELOG_SECT_ID_CALL_HOME		(('C' << 8) | 'H') +#define PSERIES_ELOG_SECT_ID_USER_DEF		(('U' << 8) | 'D') + +/* Vendor specific Platform Event Log Format, Version 6, section header */ +struct pseries_errorlog { +	uint16_t id;			/* 0x00 2-byte ASCII section ID	*/ +	uint16_t length;		/* 0x02 Section length in bytes	*/ +	uint8_t version;		/* 0x04 Section version		*/ +	uint8_t subtype;		/* 0x05 Section subtype		*/ +	uint16_t creator_component;	/* 0x06 Creator component ID	*/ +	uint8_t data[];			/* 0x08 Start of section data	*/ +}; + +struct pseries_errorlog *get_pseries_errorlog(struct rtas_error_log *log, +					      uint16_t section_id); +  /*   * This can be set by the rtas_flash module so that it can get called   * as the absolutely last thing before the kernel terminates.  |