Re: [PATCH v4 19/63] Documentation: ACPI: move apei/output_format.txt to firmware-guide/acpi and convert to reST
From: Mauro Carvalho Chehab
Date: Wed Apr 24 2019 - 10:29:51 EST
Em Wed, 24 Apr 2019 00:28:48 +0800
Changbin Du <changbin.du@xxxxxxxxx> escreveu:
> This converts the plain text documentation to reStructuredText format and
> add it to Sphinx TOC tree. No essential content change.
>
> Signed-off-by: Changbin Du <changbin.du@xxxxxxxxx>
For the conversion changes:
Reviewed-by: Mauro Carvalho Chehab <mchehab+samsung@xxxxxxxxxx>
> ---
> Documentation/acpi/apei/output_format.txt | 147 -----------------
> .../acpi/apei/output_format.rst | 150 ++++++++++++++++++
> Documentation/firmware-guide/acpi/index.rst | 1 +
> 3 files changed, 151 insertions(+), 147 deletions(-)
> delete mode 100644 Documentation/acpi/apei/output_format.txt
> create mode 100644 Documentation/firmware-guide/acpi/apei/output_format.rst
>
> 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 @@
> - APEI output format
> - ~~~~~~~~~~~~~~~~~~
> -
> -APEI uses printk as hardware error reporting interface, the output
> -format is as follow.
> -
> -<error record> :=
> -APEI generic hardware error status
> -severity: <integer>, <severity string>
> -section: <integer>, severity: <integer>, <severity string>
> -flags: <integer>
> -<section flags strings>
> -fru_id: <uuid string>
> -fru_text: <string>
> -section_type: <section type string>
> -<section data>
> -
> -<severity string>* := recoverable | fatal | corrected | info
> -
> -<section flags strings># :=
> -[primary][, containment warning][, reset][, threshold exceeded]\
> -[, resource not accessible][, latent error]
> -
> -<section type string> := generic processor error | memory error | \
> -PCIe error | unknown, <uuid string>
> -
> -<section data> :=
> -<generic processor section data> | <memory section data> | \
> -<pcie section data> | <null>
> -
> -<generic processor section data> :=
> -[processor_type: <integer>, <proc type string>]
> -[processor_isa: <integer>, <proc isa string>]
> -[error_type: <integer>
> -<proc error type strings>]
> -[operation: <integer>, <proc operation string>]
> -[flags: <integer>
> -<proc flags strings>]
> -[level: <integer>]
> -[version_info: <integer>]
> -[processor_id: <integer>]
> -[target_address: <integer>]
> -[requestor_id: <integer>]
> -[responder_id: <integer>]
> -[IP: <integer>]
> -
> -<proc type string>* := IA32/X64 | IA64
> -
> -<proc isa string>* := IA32 | IA64 | X64
> -
> -<processor error type strings># :=
> -[cache error][, TLB error][, bus error][, micro-architectural error]
> -
> -<proc operation string>* := unknown or generic | data read | data write | \
> -instruction execution
> -
> -<proc flags strings># :=
> -[restartable][, precise IP][, overflow][, corrected]
> -
> -<memory section data> :=
> -[error_status: <integer>]
> -[physical_address: <integer>]
> -[physical_address_mask: <integer>]
> -[node: <integer>]
> -[card: <integer>]
> -[module: <integer>]
> -[bank: <integer>]
> -[device: <integer>]
> -[row: <integer>]
> -[column: <integer>]
> -[bit_position: <integer>]
> -[requestor_id: <integer>]
> -[responder_id: <integer>]
> -[target_id: <integer>]
> -[error_type: <integer>, <mem error type string>]
> -
> -<mem error type string>* :=
> -unknown | no error | single-bit ECC | multi-bit ECC | \
> -single-symbol chipkill ECC | multi-symbol chipkill ECC | master abort | \
> -target abort | parity error | watchdog timeout | invalid address | \
> -mirror Broken | memory sparing | scrub corrected error | \
> -scrub uncorrected error
> -
> -<pcie section data> :=
> -[port_type: <integer>, <pcie port type string>]
> -[version: <integer>.<integer>]
> -[command: <integer>, status: <integer>]
> -[device_id: <integer>:<integer>:<integer>.<integer>
> -slot: <integer>
> -secondary_bus: <integer>
> -vendor_id: <integer>, device_id: <integer>
> -class_code: <integer>]
> -[serial number: <integer>, <integer>]
> -[bridge: secondary_status: <integer>, control: <integer>]
> -[aer_status: <integer>, aer_mask: <integer>
> -<aer status string>
> -[aer_uncor_severity: <integer>]
> -aer_layer=<aer layer string>, aer_agent=<aer agent string>
> -aer_tlp_header: <integer> <integer> <integer> <integer>]
> -
> -<pcie port type string>* := PCIe end point | legacy PCI end point | \
> -unknown | unknown | root port | upstream switch port | \
> -downstream switch port | PCIe to PCI/PCI-X bridge | \
> -PCI/PCI-X to PCIe bridge | root complex integrated endpoint device | \
> -root complex event collector
> -
> -if section severity is fatal or recoverable
> -<aer status string># :=
> -unknown | unknown | unknown | unknown | Data Link Protocol | \
> -unknown | unknown | unknown | unknown | unknown | unknown | unknown | \
> -Poisoned TLP | Flow Control Protocol | Completion Timeout | \
> -Completer Abort | Unexpected Completion | Receiver Overflow | \
> -Malformed TLP | ECRC | Unsupported Request
> -else
> -<aer status string># :=
> -Receiver Error | unknown | unknown | unknown | unknown | unknown | \
> -Bad TLP | Bad DLLP | RELAY_NUM Rollover | unknown | unknown | unknown | \
> -Replay Timer Timeout | Advisory Non-Fatal
> -fi
> -
> -<aer layer string> :=
> -Physical Layer | Data Link Layer | Transaction Layer
> -
> -<aer agent string> :=
> -Receiver ID | Requester ID | Completer ID | Transmitter ID
> -
> -Where, [] designate corresponding content is optional
> -
> -All <field string> description with * has the following format:
> -
> -field: <integer>, <field string>
> -
> -Where value of <integer> should be the position of "string" in <field
> -string> description. Otherwise, <field string> will be "unknown".
> -
> -All <field strings> description with # has the following format:
> -
> -field: <integer>
> -<field strings>
> -
> -Where each string in <fields strings> corresponding to one set bit of
> -<integer>. The bit position is the position of "string" in <field
> -strings> description.
> -
> -For more detailed explanation of every field, please refer to UEFI
> -specification version 2.3 or later, section Appendix N: Common
> -Platform 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 @@
> +.. SPDX-License-Identifier: GPL-2.0
> +
> +==================
> +APEI output format
> +==================
> +
> +APEI uses printk as hardware error reporting interface, the output
> +format is as follow::
> +
> + <error record> :=
> + APEI generic hardware error status
> + severity: <integer>, <severity string>
> + section: <integer>, severity: <integer>, <severity string>
> + flags: <integer>
> + <section flags strings>
> + fru_id: <uuid string>
> + fru_text: <string>
> + section_type: <section type string>
> + <section data>
> +
> + <severity string>* := recoverable | fatal | corrected | info
> +
> + <section flags strings># :=
> + [primary][, containment warning][, reset][, threshold exceeded]\
> + [, resource not accessible][, latent error]
> +
> + <section type string> := generic processor error | memory error | \
> + PCIe error | unknown, <uuid string>
> +
> + <section data> :=
> + <generic processor section data> | <memory section data> | \
> + <pcie section data> | <null>
> +
> + <generic processor section data> :=
> + [processor_type: <integer>, <proc type string>]
> + [processor_isa: <integer>, <proc isa string>]
> + [error_type: <integer>
> + <proc error type strings>]
> + [operation: <integer>, <proc operation string>]
> + [flags: <integer>
> + <proc flags strings>]
> + [level: <integer>]
> + [version_info: <integer>]
> + [processor_id: <integer>]
> + [target_address: <integer>]
> + [requestor_id: <integer>]
> + [responder_id: <integer>]
> + [IP: <integer>]
> +
> + <proc type string>* := IA32/X64 | IA64
> +
> + <proc isa string>* := IA32 | IA64 | X64
> +
> + <processor error type strings># :=
> + [cache error][, TLB error][, bus error][, micro-architectural error]
> +
> + <proc operation string>* := unknown or generic | data read | data write | \
> + instruction execution
> +
> + <proc flags strings># :=
> + [restartable][, precise IP][, overflow][, corrected]
> +
> + <memory section data> :=
> + [error_status: <integer>]
> + [physical_address: <integer>]
> + [physical_address_mask: <integer>]
> + [node: <integer>]
> + [card: <integer>]
> + [module: <integer>]
> + [bank: <integer>]
> + [device: <integer>]
> + [row: <integer>]
> + [column: <integer>]
> + [bit_position: <integer>]
> + [requestor_id: <integer>]
> + [responder_id: <integer>]
> + [target_id: <integer>]
> + [error_type: <integer>, <mem error type string>]
> +
> + <mem error type string>* :=
> + unknown | no error | single-bit ECC | multi-bit ECC | \
> + single-symbol chipkill ECC | multi-symbol chipkill ECC | master abort | \
> + target abort | parity error | watchdog timeout | invalid address | \
> + mirror Broken | memory sparing | scrub corrected error | \
> + scrub uncorrected error
> +
> + <pcie section data> :=
> + [port_type: <integer>, <pcie port type string>]
> + [version: <integer>.<integer>]
> + [command: <integer>, status: <integer>]
> + [device_id: <integer>:<integer>:<integer>.<integer>
> + slot: <integer>
> + secondary_bus: <integer>
> + vendor_id: <integer>, device_id: <integer>
> + class_code: <integer>]
> + [serial number: <integer>, <integer>]
> + [bridge: secondary_status: <integer>, control: <integer>]
> + [aer_status: <integer>, aer_mask: <integer>
> + <aer status string>
> + [aer_uncor_severity: <integer>]
> + aer_layer=<aer layer string>, aer_agent=<aer agent string>
> + aer_tlp_header: <integer> <integer> <integer> <integer>]
> +
> + <pcie port type string>* := PCIe end point | legacy PCI end point | \
> + unknown | unknown | root port | upstream switch port | \
> + downstream switch port | PCIe to PCI/PCI-X bridge | \
> + PCI/PCI-X to PCIe bridge | root complex integrated endpoint device | \
> + root complex event collector
> +
> + if section severity is fatal or recoverable
> + <aer status string># :=
> + unknown | unknown | unknown | unknown | Data Link Protocol | \
> + unknown | unknown | unknown | unknown | unknown | unknown | unknown | \
> + Poisoned TLP | Flow Control Protocol | Completion Timeout | \
> + Completer Abort | Unexpected Completion | Receiver Overflow | \
> + Malformed TLP | ECRC | Unsupported Request
> + else
> + <aer status string># :=
> + Receiver Error | unknown | unknown | unknown | unknown | unknown | \
> + Bad TLP | Bad DLLP | RELAY_NUM Rollover | unknown | unknown | unknown | \
> + Replay Timer Timeout | Advisory Non-Fatal
> + fi
> +
> + <aer layer string> :=
> + Physical Layer | Data Link Layer | Transaction Layer
> +
> + <aer agent string> :=
> + Receiver ID | Requester ID | Completer ID | Transmitter ID
> +
> +Where, [] designate corresponding content is optional
> +
> +All <field string> description with * has the following format::
> +
> + field: <integer>, <field string>
> +
> +Where value of <integer> should be the position of "string" in <field
> +string> description. Otherwise, <field string> will be "unknown".
> +
> +All <field strings> description with # has the following format::
> +
> + field: <integer>
> + <field strings>
> +
> +Where each string in <fields strings> corresponding to one set bit of
> +<integer>. The bit position is the position of "string" in <field
> +strings> description.
> +
> +For more detailed explanation of every field, please refer to UEFI
> +specification version 2.3 or later, section Appendix N: Common
> +Platform 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
> DSD-properties-rules
> debug
> aml-debugger
> + apei/output_format
> gpio-properties
> i2c-muxes
> acpi-lid
Thanks,
Mauro