Loading...
1/*
2 * linux/include/asm-alpha/err_common.h
3 *
4 * Copyright (C) 2000 Jeff Wiedemeier (Compaq Computer Corporation)
5 *
6 * Contains declarations and macros to support Alpha error handling
7 * implementations.
8 */
9
10#ifndef __ALPHA_ERR_COMMON_H
11#define __ALPHA_ERR_COMMON_H 1
12
13/*
14 * SCB Vector definitions
15 */
16#define SCB_Q_SYSERR 0x620
17#define SCB_Q_PROCERR 0x630
18#define SCB_Q_SYSMCHK 0x660
19#define SCB_Q_PROCMCHK 0x670
20#define SCB_Q_SYSEVENT 0x680
21
22/*
23 * Disposition definitions for logout frame parser
24 */
25#define MCHK_DISPOSITION_UNKNOWN_ERROR 0x00
26#define MCHK_DISPOSITION_REPORT 0x01
27#define MCHK_DISPOSITION_DISMISS 0x02
28
29/*
30 * Error Log definitions
31 */
32/*
33 * Types
34 */
35
36#define EL_CLASS__TERMINATION (0)
37# define EL_TYPE__TERMINATION__TERMINATION (0)
38#define EL_CLASS__HEADER (5)
39# define EL_TYPE__HEADER__SYSTEM_ERROR_FRAME (1)
40# define EL_TYPE__HEADER__SYSTEM_EVENT_FRAME (2)
41# define EL_TYPE__HEADER__HALT_FRAME (3)
42# define EL_TYPE__HEADER__LOGOUT_FRAME (19)
43#define EL_CLASS__GENERAL_NOTIFICATION (9)
44#define EL_CLASS__PCI_ERROR_FRAME (11)
45#define EL_CLASS__REGATTA_FAMILY (12)
46# define EL_TYPE__REGATTA__PROCESSOR_ERROR_FRAME (1)
47# define EL_TYPE__REGATTA__SYSTEM_ERROR_FRAME (2)
48# define EL_TYPE__REGATTA__ENVIRONMENTAL_FRAME (3)
49# define EL_TYPE__REGATTA__TITAN_PCHIP0_EXTENDED (8)
50# define EL_TYPE__REGATTA__TITAN_PCHIP1_EXTENDED (9)
51# define EL_TYPE__REGATTA__TITAN_MEMORY_EXTENDED (10)
52# define EL_TYPE__REGATTA__PROCESSOR_DBL_ERROR_HALT (11)
53# define EL_TYPE__REGATTA__SYSTEM_DBL_ERROR_HALT (12)
54#define EL_CLASS__PAL (14)
55# define EL_TYPE__PAL__LOGOUT_FRAME (1)
56# define EL_TYPE__PAL__EV7_PROCESSOR (4)
57# define EL_TYPE__PAL__EV7_ZBOX (5)
58# define EL_TYPE__PAL__EV7_RBOX (6)
59# define EL_TYPE__PAL__EV7_IO (7)
60# define EL_TYPE__PAL__ENV__AMBIENT_TEMPERATURE (10)
61# define EL_TYPE__PAL__ENV__AIRMOVER_FAN (11)
62# define EL_TYPE__PAL__ENV__VOLTAGE (12)
63# define EL_TYPE__PAL__ENV__INTRUSION (13)
64# define EL_TYPE__PAL__ENV__POWER_SUPPLY (14)
65# define EL_TYPE__PAL__ENV__LAN (15)
66# define EL_TYPE__PAL__ENV__HOT_PLUG (16)
67
68union el_timestamp {
69 struct {
70 u8 second;
71 u8 minute;
72 u8 hour;
73 u8 day;
74 u8 month;
75 u8 year;
76 } b;
77 u64 as_int;
78};
79
80struct el_subpacket {
81 u16 length; /* length of header (in bytes) */
82 u16 class; /* header class and type... */
83 u16 type; /* ...determine content */
84 u16 revision; /* header revision */
85 union {
86 struct { /* Class 5, Type 1 - System Error */
87 u32 frame_length;
88 u32 frame_packet_count;
89 } sys_err;
90 struct { /* Class 5, Type 2 - System Event */
91 union el_timestamp timestamp;
92 u32 frame_length;
93 u32 frame_packet_count;
94 } sys_event;
95 struct { /* Class 5, Type 3 - Double Error Halt */
96 u16 halt_code;
97 u16 reserved;
98 union el_timestamp timestamp;
99 u32 frame_length;
100 u32 frame_packet_count;
101 } err_halt;
102 struct { /* Clasee 5, Type 19 - Logout Frame Header */
103 u32 frame_length;
104 u32 frame_flags;
105 u32 cpu_offset;
106 u32 system_offset;
107 } logout_header;
108 struct { /* Class 12 - Regatta */
109 u64 cpuid;
110 u64 data_start[1];
111 } regatta_frame;
112 struct { /* Raw */
113 u64 data_start[1];
114 } raw;
115 } by_type;
116};
117
118#endif /* __ALPHA_ERR_COMMON_H */
1/* SPDX-License-Identifier: GPL-2.0 */
2/*
3 * linux/include/asm-alpha/err_common.h
4 *
5 * Copyright (C) 2000 Jeff Wiedemeier (Compaq Computer Corporation)
6 *
7 * Contains declarations and macros to support Alpha error handling
8 * implementations.
9 */
10
11#ifndef __ALPHA_ERR_COMMON_H
12#define __ALPHA_ERR_COMMON_H 1
13
14/*
15 * SCB Vector definitions
16 */
17#define SCB_Q_SYSERR 0x620
18#define SCB_Q_PROCERR 0x630
19#define SCB_Q_SYSMCHK 0x660
20#define SCB_Q_PROCMCHK 0x670
21#define SCB_Q_SYSEVENT 0x680
22
23/*
24 * Disposition definitions for logout frame parser
25 */
26#define MCHK_DISPOSITION_UNKNOWN_ERROR 0x00
27#define MCHK_DISPOSITION_REPORT 0x01
28#define MCHK_DISPOSITION_DISMISS 0x02
29
30/*
31 * Error Log definitions
32 */
33/*
34 * Types
35 */
36
37#define EL_CLASS__TERMINATION (0)
38# define EL_TYPE__TERMINATION__TERMINATION (0)
39#define EL_CLASS__HEADER (5)
40# define EL_TYPE__HEADER__SYSTEM_ERROR_FRAME (1)
41# define EL_TYPE__HEADER__SYSTEM_EVENT_FRAME (2)
42# define EL_TYPE__HEADER__HALT_FRAME (3)
43# define EL_TYPE__HEADER__LOGOUT_FRAME (19)
44#define EL_CLASS__GENERAL_NOTIFICATION (9)
45#define EL_CLASS__PCI_ERROR_FRAME (11)
46#define EL_CLASS__REGATTA_FAMILY (12)
47# define EL_TYPE__REGATTA__PROCESSOR_ERROR_FRAME (1)
48# define EL_TYPE__REGATTA__SYSTEM_ERROR_FRAME (2)
49# define EL_TYPE__REGATTA__ENVIRONMENTAL_FRAME (3)
50# define EL_TYPE__REGATTA__TITAN_PCHIP0_EXTENDED (8)
51# define EL_TYPE__REGATTA__TITAN_PCHIP1_EXTENDED (9)
52# define EL_TYPE__REGATTA__TITAN_MEMORY_EXTENDED (10)
53# define EL_TYPE__REGATTA__PROCESSOR_DBL_ERROR_HALT (11)
54# define EL_TYPE__REGATTA__SYSTEM_DBL_ERROR_HALT (12)
55#define EL_CLASS__PAL (14)
56# define EL_TYPE__PAL__LOGOUT_FRAME (1)
57# define EL_TYPE__PAL__EV7_PROCESSOR (4)
58# define EL_TYPE__PAL__EV7_ZBOX (5)
59# define EL_TYPE__PAL__EV7_RBOX (6)
60# define EL_TYPE__PAL__EV7_IO (7)
61# define EL_TYPE__PAL__ENV__AMBIENT_TEMPERATURE (10)
62# define EL_TYPE__PAL__ENV__AIRMOVER_FAN (11)
63# define EL_TYPE__PAL__ENV__VOLTAGE (12)
64# define EL_TYPE__PAL__ENV__INTRUSION (13)
65# define EL_TYPE__PAL__ENV__POWER_SUPPLY (14)
66# define EL_TYPE__PAL__ENV__LAN (15)
67# define EL_TYPE__PAL__ENV__HOT_PLUG (16)
68
69union el_timestamp {
70 struct {
71 u8 second;
72 u8 minute;
73 u8 hour;
74 u8 day;
75 u8 month;
76 u8 year;
77 } b;
78 u64 as_int;
79};
80
81struct el_subpacket {
82 u16 length; /* length of header (in bytes) */
83 u16 class; /* header class and type... */
84 u16 type; /* ...determine content */
85 u16 revision; /* header revision */
86 union {
87 struct { /* Class 5, Type 1 - System Error */
88 u32 frame_length;
89 u32 frame_packet_count;
90 } sys_err;
91 struct { /* Class 5, Type 2 - System Event */
92 union el_timestamp timestamp;
93 u32 frame_length;
94 u32 frame_packet_count;
95 } sys_event;
96 struct { /* Class 5, Type 3 - Double Error Halt */
97 u16 halt_code;
98 u16 reserved;
99 union el_timestamp timestamp;
100 u32 frame_length;
101 u32 frame_packet_count;
102 } err_halt;
103 struct { /* Clasee 5, Type 19 - Logout Frame Header */
104 u32 frame_length;
105 u32 frame_flags;
106 u32 cpu_offset;
107 u32 system_offset;
108 } logout_header;
109 struct { /* Class 12 - Regatta */
110 u64 cpuid;
111 u64 data_start[1];
112 } regatta_frame;
113 struct { /* Raw */
114 u64 data_start[1];
115 } raw;
116 } by_type;
117};
118
119#endif /* __ALPHA_ERR_COMMON_H */