aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChangbin Du <changbin.du@gmail.com>2019-04-24 13:53:01 -0400
committerRafael J. Wysocki <rafael.j.wysocki@intel.com>2019-04-25 17:07:20 -0400
commitdeb95169ef4279362f4c6167c4c59c8d68711d97 (patch)
tree2ec27192dae525298a2ccc48c2d658b74daea5bf
parent472e89b4e1a87cd7f9b5ae99759a635711cf00fb (diff)
Documentation: ACPI: move apei/output_format.txt to firmware-guide/acpi and convert to reST
This converts the plain text documentation to reStructuredText format and adds it to Sphinx TOC tree. No essential content change. Signed-off-by: Changbin Du <changbin.du@gmail.com> Reviewed-by: Mauro Carvalho Chehab <mchehab+samsung@kernel.org> Signed-off-by: Rafael J. Wysocki <rafael.j.wysocki@intel.com>
-rw-r--r--Documentation/acpi/apei/output_format.txt147
-rw-r--r--Documentation/firmware-guide/acpi/apei/output_format.rst150
-rw-r--r--Documentation/firmware-guide/acpi/index.rst1
3 files changed, 151 insertions, 147 deletions
diff --git a/Documentation/acpi/apei/output_format.txt b/Documentation/acpi/apei/output_format.txt
deleted file mode 100644
index 0c49c197c47a..000000000000
--- a/Documentation/acpi/apei/output_format.txt
+++ /dev/null
@@ -1,147 +0,0 @@
1 APEI output format
2 ~~~~~~~~~~~~~~~~~~
3
4APEI uses printk as hardware error reporting interface, the output
5format is as follow.
6
7<error record> :=
8APEI generic hardware error status
9severity: <integer>, <severity string>
10section: <integer>, severity: <integer>, <severity string>
11flags: <integer>
12<section flags strings>
13fru_id: <uuid string>
14fru_text: <string>
15section_type: <section type string>
16<section data>
17
18<severity string>* := recoverable | fatal | corrected | info
19
20<section flags strings># :=
21[primary][, containment warning][, reset][, threshold exceeded]\
22[, resource not accessible][, latent error]
23
24<section type string> := generic processor error | memory error | \
25PCIe error | unknown, <uuid string>
26
27<section data> :=
28<generic processor section data> | <memory section data> | \
29<pcie section data> | <null>
30
31<generic processor section data> :=
32[processor_type: <integer>, <proc type string>]
33[processor_isa: <integer>, <proc isa string>]
34[error_type: <integer>
35<proc error type strings>]
36[operation: <integer>, <proc operation string>]
37[flags: <integer>
38<proc flags strings>]
39[level: <integer>]
40[version_info: <integer>]
41[processor_id: <integer>]
42[target_address: <integer>]
43[requestor_id: <integer>]
44[responder_id: <integer>]
45[IP: <integer>]
46
47<proc type string>* := IA32/X64 | IA64
48
49<proc isa string>* := IA32 | IA64 | X64
50
51<processor error type strings># :=
52[cache error][, TLB error][, bus error][, micro-architectural error]
53
54<proc operation string>* := unknown or generic | data read | data write | \
55instruction execution
56
57<proc flags strings># :=
58[restartable][, precise IP][, overflow][, corrected]
59
60<memory section data> :=
61[error_status: <integer>]
62[physical_address: <integer>]
63[physical_address_mask: <integer>]
64[node: <integer>]
65[card: <integer>]
66[module: <integer>]
67[bank: <integer>]
68[device: <integer>]
69[row: <integer>]
70[column: <integer>]
71[bit_position: <integer>]
72[requestor_id: <integer>]
73[responder_id: <integer>]
74[target_id: <integer>]
75[error_type: <integer>, <mem error type string>]
76
77<mem error type string>* :=
78unknown | no error | single-bit ECC | multi-bit ECC | \
79single-symbol chipkill ECC | multi-symbol chipkill ECC | master abort | \
80target abort | parity error | watchdog timeout | invalid address | \
81mirror Broken | memory sparing | scrub corrected error | \
82scrub uncorrected error
83
84<pcie section data> :=
85[port_type: <integer>, <pcie port type string>]
86[version: <integer>.<integer>]
87[command: <integer>, status: <integer>]
88[device_id: <integer>:<integer>:<integer>.<integer>
89slot: <integer>
90secondary_bus: <integer>
91vendor_id: <integer>, device_id: <integer>
92class_code: <integer>]
93[serial number: <integer>, <integer>]
94[bridge: secondary_status: <integer>, control: <integer>]
95[aer_status: <integer>, aer_mask: <integer>
96<aer status string>
97[aer_uncor_severity: <integer>]
98aer_layer=<aer layer string>, aer_agent=<aer agent string>
99aer_tlp_header: <integer> <integer> <integer> <integer>]
100
101<pcie port type string>* := PCIe end point | legacy PCI end point | \
102unknown | unknown | root port | upstream switch port | \
103downstream switch port | PCIe to PCI/PCI-X bridge | \
104PCI/PCI-X to PCIe bridge | root complex integrated endpoint device | \
105root complex event collector
106
107if section severity is fatal or recoverable
108<aer status string># :=
109unknown | unknown | unknown | unknown | Data Link Protocol | \
110unknown | unknown | unknown | unknown | unknown | unknown | unknown | \
111Poisoned TLP | Flow Control Protocol | Completion Timeout | \
112Completer Abort | Unexpected Completion | Receiver Overflow | \
113Malformed TLP | ECRC | Unsupported Request
114else
115<aer status string># :=
116Receiver Error | unknown | unknown | unknown | unknown | unknown | \
117Bad TLP | Bad DLLP | RELAY_NUM Rollover | unknown | unknown | unknown | \
118Replay Timer Timeout | Advisory Non-Fatal
119fi
120
121<aer layer string> :=
122Physical Layer | Data Link Layer | Transaction Layer
123
124<aer agent string> :=
125Receiver ID | Requester ID | Completer ID | Transmitter ID
126
127Where, [] designate corresponding content is optional
128
129All <field string> description with * has the following format:
130
131field: <integer>, <field string>
132
133Where value of <integer> should be the position of "string" in <field
134string> description. Otherwise, <field string> will be "unknown".
135
136All <field strings> description with # has the following format:
137
138field: <integer>
139<field strings>
140
141Where each string in <fields strings> corresponding to one set bit of
142<integer>. The bit position is the position of "string" in <field
143strings> description.
144
145For more detailed explanation of every field, please refer to UEFI
146specification version 2.3 or later, section Appendix N: Common
147Platform Error Record.
diff --git a/Documentation/firmware-guide/acpi/apei/output_format.rst b/Documentation/firmware-guide/acpi/apei/output_format.rst
new file mode 100644
index 000000000000..c2e7ebddb529
--- /dev/null
+++ b/Documentation/firmware-guide/acpi/apei/output_format.rst
@@ -0,0 +1,150 @@
1.. SPDX-License-Identifier: GPL-2.0
2
3==================
4APEI output format
5==================
6
7APEI uses printk as hardware error reporting interface, the output
8format is as follow::
9
10 <error record> :=
11 APEI generic hardware error status
12 severity: <integer>, <severity string>
13 section: <integer>, severity: <integer>, <severity string>
14 flags: <integer>
15 <section flags strings>
16 fru_id: <uuid string>
17 fru_text: <string>
18 section_type: <section type string>
19 <section data>
20
21 <severity string>* := recoverable | fatal | corrected | info
22
23 <section flags strings># :=
24 [primary][, containment warning][, reset][, threshold exceeded]\
25 [, resource not accessible][, latent error]
26
27 <section type string> := generic processor error | memory error | \
28 PCIe error | unknown, <uuid string>
29
30 <section data> :=
31 <generic processor section data> | <memory section data> | \
32 <pcie section data> | <null>
33
34 <generic processor section data> :=
35 [processor_type: <integer>, <proc type string>]
36 [processor_isa: <integer>, <proc isa string>]
37 [error_type: <integer>
38 <proc error type strings>]
39 [operation: <integer>, <proc operation string>]
40 [flags: <integer>
41 <proc flags strings>]
42 [level: <integer>]
43 [version_info: <integer>]
44 [processor_id: <integer>]
45 [target_address: <integer>]
46 [requestor_id: <integer>]
47 [responder_id: <integer>]
48 [IP: <integer>]
49
50 <proc type string>* := IA32/X64 | IA64
51
52 <proc isa string>* := IA32 | IA64 | X64
53
54 <processor error type strings># :=
55 [cache error][, TLB error][, bus error][, micro-architectural error]
56
57 <proc operation string>* := unknown or generic | data read | data write | \
58 instruction execution
59
60 <proc flags strings># :=
61 [restartable][, precise IP][, overflow][, corrected]
62
63 <memory section data> :=
64 [error_status: <integer>]
65 [physical_address: <integer>]
66 [physical_address_mask: <integer>]
67 [node: <integer>]
68 [card: <integer>]
69 [module: <integer>]
70 [bank: <integer>]
71 [device: <integer>]
72 [row: <integer>]
73 [column: <integer>]
74 [bit_position: <integer>]
75 [requestor_id: <integer>]
76 [responder_id: <integer>]
77 [target_id: <integer>]
78 [error_type: <integer>, <mem error type string>]
79
80 <mem error type string>* :=
81 unknown | no error | single-bit ECC | multi-bit ECC | \
82 single-symbol chipkill ECC | multi-symbol chipkill ECC | master abort | \
83 target abort | parity error | watchdog timeout | invalid address | \
84 mirror Broken | memory sparing | scrub corrected error | \
85 scrub uncorrected error
86
87 <pcie section data> :=
88 [port_type: <integer>, <pcie port type string>]
89 [version: <integer>.<integer>]
90 [command: <integer>, status: <integer>]
91 [device_id: <integer>:<integer>:<integer>.<integer>
92 slot: <integer>
93 secondary_bus: <integer>
94 vendor_id: <integer>, device_id: <integer>
95 class_code: <integer>]
96 [serial number: <integer>, <integer>]
97 [bridge: secondary_status: <integer>, control: <integer>]
98 [aer_status: <integer>, aer_mask: <integer>
99 <aer status string>
100 [aer_uncor_severity: <integer>]
101 aer_layer=<aer layer string>, aer_agent=<aer agent string>
102 aer_tlp_header: <integer> <integer> <integer> <integer>]
103
104 <pcie port type string>* := PCIe end point | legacy PCI end point | \
105 unknown | unknown | root port | upstream switch port | \
106 downstream switch port | PCIe to PCI/PCI-X bridge | \
107 PCI/PCI-X to PCIe bridge | root complex integrated endpoint device | \
108 root complex event collector
109
110 if section severity is fatal or recoverable
111 <aer status string># :=
112 unknown | unknown | unknown | unknown | Data Link Protocol | \
113 unknown | unknown | unknown | unknown | unknown | unknown | unknown | \
114 Poisoned TLP | Flow Control Protocol | Completion Timeout | \
115 Completer Abort | Unexpected Completion | Receiver Overflow | \
116 Malformed TLP | ECRC | Unsupported Request
117 else
118 <aer status string># :=
119 Receiver Error | unknown | unknown | unknown | unknown | unknown | \
120 Bad TLP | Bad DLLP | RELAY_NUM Rollover | unknown | unknown | unknown | \
121 Replay Timer Timeout | Advisory Non-Fatal
122 fi
123
124 <aer layer string> :=
125 Physical Layer | Data Link Layer | Transaction Layer
126
127 <aer agent string> :=
128 Receiver ID | Requester ID | Completer ID | Transmitter ID
129
130Where, [] designate corresponding content is optional
131
132All <field string> description with * has the following format::
133
134 field: <integer>, <field string>
135
136Where value of <integer> should be the position of "string" in <field
137string> description. Otherwise, <field string> will be "unknown".
138
139All <field strings> description with # has the following format::
140
141 field: <integer>
142 <field strings>
143
144Where each string in <fields strings> corresponding to one set bit of
145<integer>. The bit position is the position of "string" in <field
146strings> description.
147
148For more detailed explanation of every field, please refer to UEFI
149specification version 2.3 or later, section Appendix N: Common
150Platform Error Record.
diff --git a/Documentation/firmware-guide/acpi/index.rst b/Documentation/firmware-guide/acpi/index.rst
index e9f253d54897..869badba6d7a 100644
--- a/Documentation/firmware-guide/acpi/index.rst
+++ b/Documentation/firmware-guide/acpi/index.rst
@@ -17,6 +17,7 @@ ACPI Support
17 DSD-properties-rules 17 DSD-properties-rules
18 debug 18 debug
19 aml-debugger 19 aml-debugger
20 apei/output_format
20 gpio-properties 21 gpio-properties
21 i2c-muxes 22 i2c-muxes
22 acpi-lid 23 acpi-lid