blob: badf4227f1719f27ccb737c88381caa333dde9ba [file] [log] [blame]
Lawrence Tang4dbe3d72022-07-06 13:51:01 +01001#ifndef CPER_SECTION_PCIE_H
2#define CPER_SECTION_PCIE_H
3
4#include "json.h"
5#include "../edk/Cper.h"
6
7#define PCIE_ERROR_VALID_BITFIELD_NAMES (const char*[]) {"portTypeValid", "versionValid", "commandStatusValid", \
8 "deviceIDValid", "deviceSerialNumberValid", "bridgeControlStatusValid", "capabilityStructureStatusValid", \
9 "aerInfoValid"}
10#define PCIE_ERROR_PORT_TYPES_KEYS (int []){0, 1, 4, 5, 6, 7, 8, 9, 10}
11#define PCIE_ERROR_PORT_TYPES_VALUES (const char*[]){"PCI Express End Point", "Legacy PCI End Point Device", \
12 "Root Port", "Upstream Switch Port", "Downstream Switch Port", "PCI Express to PCI/PCI-X Bridge", \
13 "PCI/PCI-X Bridge to PCI Express Bridge", "Root Complex Integrated Endpoint Device", "Root Complex Event Collector"}
14
Lawrence Tang4dbe3d72022-07-06 13:51:01 +010015json_object* cper_section_pcie_to_ir(void* section, EFI_ERROR_SECTION_DESCRIPTOR* descriptor);
Lawrence Tang3b7f45b2022-07-14 14:14:30 +010016void ir_section_pcie_to_cper(json_object* section, FILE* out);
Lawrence Tang4dbe3d72022-07-06 13:51:01 +010017
18#endif