{ "$schema": "https://json-schema.org/draft/2020-12/schema", "type": "object", "description": "ARM Processor Error Section", "required": [ "validationBits", "errorInfoNum", "contextInfoNum", "sectionLength", "errorAffinity", "mpidrEl1", "affinity3", "midrEl1", "running", "errorInfo", "contextInfo" ], "additionalProperties": false, "properties": { "validationBits": { "type": "object", "description": "Indiciates what fields in the section are valid", "required": [ "mpidrValid", "errorAffinityLevelValid", "runningStateValid", "vendorSpecificInfoValid" ], "properties": { "mpidrValid": { "type": "boolean" }, "errorAffinityLevelValid": { "type": "boolean" }, "runningStateValid": { "type": "boolean" }, "vendorSpecificInfoValid": { "type": "boolean" } } }, "errorInfoNum": { "type": "integer", "description": "The number of Processor Error Information Structures" }, "contextInfoNum": { "type": "integer", "description": "The number of Context Information Structures" }, "sectionLength": { "type": "integer", "description": "This describes the total size of the ARM processor error section" }, "errorAffinity": { "type": "object", "description": "For errors that can be attributed to a specific affinity level, this field defines the affinity level at which the error was produced, detected, and/or consumed", "required": ["value", "type"], "properties": { "value": { "type": "integer" }, "type": { "type": "string" } } }, "mpidrEl1": { "type": "integer", "description": "This field is valid for “attributable errors” that can be attributed to a specific CPU, cache, or cluster. This is the processor’s unique ID in the system" }, "affinity3": { "type": "integer" }, "midrEl1": { "type": "integer" }, "running": { "type": "boolean" }, "psciState": { "type": "integer" }, "errorInfo": { "type": "array", "items": { "type": "object", "required": [ "version", "length", "validationBits", "errorType", "multipleError", "flags", "errorInformation", "virtualFaultAddress", "physicalFaultAddress" ], "additionalProperties": false, "properties": { "version": { "type": "integer" }, "length": { "type": "integer" }, "validationBits": { "type": "object", "required": [ "multipleErrorValid", "flagsValid", "errorInformationValid", "virtualFaultAddressValid", "physicalFaultAddressValid" ], "properties": { "multipleErrorValid": { "type": "boolean" }, "flagsValid": { "type": "boolean" }, "errorInformationValid": { "type": "boolean" }, "virtualFaultAddressValid": { "type": "boolean" }, "physicalFaultAddressValid": { "type": "boolean" } } }, "errorType": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "multipleError": { "type": "object", "required": ["type", "value"], "additionalProperties": false, "properties": { "type": { "type": "string" }, "value": { "type": "integer" } } }, "flags": { "type": "object", "required": [ "firstErrorCaptured", "lastErrorCaptured", "propagated", "overflow" ], "properties": { "firstErrorCaptured": { "type": "boolean" }, "lastErrorCaptured": { "type": "boolean" }, "propagated": { "type": "boolean" }, "overflow": { "type": "boolean" } } }, "errorInformation": { "type": "object", "oneOf": [ { "$id": "cper-json-cacheerror-section", "type": "object", "required": ["cacheError"], "properties": { "cacheError": { "type": "object", "required": [ "validationBits", "transactionType", "operation", "level", "processorContextCorrupt", "corrected", "precisePC", "restartablePC" ], "additionalProperties": false, "properties": { "validationBits": { "type": "object", "required": [ "transactionTypeValid", "operationValid", "levelValid", "processorContextCorruptValid", "correctedValid", "precisePCValid", "restartablePCValid" ], "properties": { "transactionTypeValid": { "type": "boolean" }, "operationValid": { "type": "boolean" }, "levelValid": { "type": "boolean" }, "processorContextCorruptValid": { "type": "boolean" }, "correctedValid": { "type": "boolean" }, "precisePCValid": { "type": "boolean" }, "restartablePCValid": { "type": "boolean" } } }, "transactionType": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "operation": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "level": { "type": "integer" }, "processorContextCorrupt": { "type": "boolean" }, "corrected": { "type": "boolean" }, "precisePC": { "type": "boolean" }, "restartablePC": { "type": "boolean" } } } } }, { "$id": "cper-json-tlberror-section", "type": "object", "required": ["tlbError"], "properties": { "tlbError": { "type": "object", "required": [ "validationBits", "transactionType", "operation", "level", "processorContextCorrupt", "corrected", "precisePC", "restartablePC", "timedOut", "participationType", "addressSpace", "memoryAttributes", "accessMode" ], "additionalProperties": false, "properties": { "validationBits": { "type": "object", "required": [ "transactionTypeValid", "operationValid", "levelValid", "processorContextCorruptValid", "correctedValid", "precisePCValid", "restartablePCValid", "participationTypeValid", "timedOutValid", "addressSpaceValid", "memoryAttributesValid", "accessModeValid" ], "properties": { "transactionTypeValid": { "type": "boolean" }, "operationValid": { "type": "boolean" }, "levelValid": { "type": "boolean" }, "processorContextCorruptValid": { "type": "boolean" }, "correctedValid": { "type": "boolean" }, "precisePCValid": { "type": "boolean" }, "restartablePCValid": { "type": "boolean" }, "participationTypeValid": { "type": "boolean" }, "timedOutValid": { "type": "boolean" }, "addressSpaceValid": { "type": "boolean" }, "memoryAttributesValid": { "type": "boolean" }, "accessModeValid": { "type": "boolean" } } }, "transactionType": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "operation": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "level": { "type": "integer" }, "processorContextCorrupt": { "type": "boolean" }, "corrected": { "type": "boolean" }, "precisePC": { "type": "boolean" }, "restartablePC": { "type": "boolean" }, "timedOut": { "type": "boolean" }, "participationType": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "addressSpace": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "accessMode": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "memoryAttributes": { "type": "integer" } } } } } ] }, "virtualFaultAddress": { "type": "integer" }, "physicalFaultAddress": { "type": "integer" } } } }, "contextInfo": { "type": "array", "items": { "type": "object", "required": [ "version", "registerContextType", "registerArraySize", "registerArray" ], "additionalProperties": false, "properties": { "version": { "type": "integer", "minimum": 0 }, "registerContextType": { "type": "object", "$ref": "./common/cper-json-nvp.json" }, "registerArraySize": { "type": "integer" }, "registerArray": { "type": "object", "oneOf": [ { "$id": "cper-json-registerarray0", "type": "object", "required": [ "r1", "r2", "r3", "r4", "r5", "r6", "r7", "r8", "r9", "r10", "r11", "r12", "r13_sp", "r14_lr", "r15_pc" ], "properties": { "r0": { "type": "integer" }, "r1": { "type": "integer" }, "r2": { "type": "integer" }, "r3": { "type": "integer" }, "r4": { "type": "integer" }, "r5": { "type": "integer" }, "r6": { "type": "integer" }, "r7": { "type": "integer" }, "r8": { "type": "integer" }, "r9": { "type": "integer" }, "r10": { "type": "integer" }, "r11": { "type": "integer" }, "r12": { "type": "integer" }, "r13_sp": { "type": "integer" }, "r14_lr": { "type": "integer" }, "r15_pc": { "type": "integer" } } }, { "$id": "cper-json-registerarray1", "type": "object", "required": [ "dfar", "dfsr", "ifar", "isr", "mair0", "mair1", "midr", "mpidr", "nmrr", "prrr", "sctlr_ns", "spsr", "spsr_abt", "spsr_fiq", "spsr_irq", "spsr_svc", "spsr_und", "tpidrprw", "tpidruro", "tpidrurw", "ttbcr", "ttbr0", "ttbr1", "dacr" ], "properties": { "dfar": { "type": "integer" }, "dfsr": { "type": "integer" }, "ifar": { "type": "integer" }, "isr": { "type": "integer" }, "mair0": { "type": "integer" }, "mair1": { "type": "integer" }, "midr": { "type": "integer" }, "mpidr": { "type": "integer" }, "nmrr": { "type": "integer" }, "prrr": { "type": "integer" }, "sctlr_ns": { "type": "integer" }, "spsr": { "type": "integer" }, "spsr_abt": { "type": "integer" }, "spsr_fiq": { "type": "integer" }, "spsr_irq": { "type": "integer" }, "spsr_svc": { "type": "integer" }, "spsr_und": { "type": "integer" }, "tpidrprw": { "type": "integer" }, "tpidruro": { "type": "integer" }, "tpidrurw": { "type": "integer" }, "ttbcr": { "type": "integer" }, "ttbr0": { "type": "integer" }, "ttbr1": { "type": "integer" }, "dacr": { "type": "integer" } } }, { "$id": "cper-json-registerarray2", "type": "object", "required": [ "elr_hyp", "hamair0", "hamair1", "hcr", "hcr2", "hdfar", "hifar", "hpfar", "hsr", "htcr", "htpidr", "httbr", "spsr_hyp", "vtcr", "vttbr", "dacr32_el2" ], "properties": { "elr_hyp": { "type": "integer" }, "hamair0": { "type": "integer" }, "hamair1": { "type": "integer" }, "hcr": { "type": "integer" }, "hcr2": { "type": "integer" }, "hdfar": { "type": "integer" }, "hifar": { "type": "integer" }, "hpfar": { "type": "integer" }, "hsr": { "type": "integer" }, "htcr": { "type": "integer" }, "htpidr": { "type": "integer" }, "httbr": { "type": "integer" }, "spsr_hyp": { "type": "integer" }, "vtcr": { "type": "integer" }, "vttbr": { "type": "integer" }, "dacr32_el2": { "type": "integer" } } }, { "$id": "cper-json-registerarray3", "type": "object", "required": ["sctlr_s", "spsr_mon"], "properties": { "sctlr_s": { "type": "integer" }, "spsr_mon": { "type": "integer" } } }, { "$id": "cper-json-registerarray4", "type": "object", "required": [ "x0", "x1", "x2", "x3", "x4", "x5", "x6", "x7", "x8", "x9", "x10", "x11", "x12", "x13", "x14", "x15", "x16", "x17", "x18", "x19", "x20", "x21", "x22", "x23", "x24", "x25", "x26", "x27", "x28", "x29", "x30", "sp" ], "properties": { "x0": { "type": "integer" }, "x1": { "type": "integer" }, "x2": { "type": "integer" }, "x3": { "type": "integer" }, "x4": { "type": "integer" }, "x5": { "type": "integer" }, "x6": { "type": "integer" }, "x7": { "type": "integer" }, "x8": { "type": "integer" }, "x9": { "type": "integer" }, "x10": { "type": "integer" }, "x11": { "type": "integer" }, "x12": { "type": "integer" }, "x13": { "type": "integer" }, "x14": { "type": "integer" }, "x15": { "type": "integer" }, "x16": { "type": "integer" }, "x17": { "type": "integer" }, "x18": { "type": "integer" }, "x19": { "type": "integer" }, "x20": { "type": "integer" }, "x21": { "type": "integer" }, "x22": { "type": "integer" }, "x23": { "type": "integer" }, "x24": { "type": "integer" }, "x25": { "type": "integer" }, "x26": { "type": "integer" }, "x27": { "type": "integer" }, "x28": { "type": "integer" }, "x29": { "type": "integer" }, "x30": { "type": "integer" }, "sp": { "type": "integer" } } }, { "$id": "cper-json-registerarray5", "type": "object", "required": [ "elr_el1", "esr_el1", "far_el1", "isr_el1", "mair_el1", "midr_el1", "mpidr_el1", "sctlr_el1", "sp_el0", "sp_el1", "spsr_el1", "tcr_el1", "tpidr_el0", "tpidr_el1", "tpidrro_el0", "ttbr0_el1", "ttbr1_el1" ], "properties": { "elr_el1": { "type": "integer" }, "esr_el1": { "type": "integer" }, "far_el1": { "type": "integer" }, "isr_el1": { "type": "integer" }, "mair_el1": { "type": "integer" }, "midr_el1": { "type": "integer" }, "mpidr_el1": { "type": "integer" }, "sctlr_el1": { "type": "integer" }, "sp_el0": { "type": "integer" }, "sp_el1": { "type": "integer" }, "spsr_el1": { "type": "integer" }, "tcr_el1": { "type": "integer" }, "tpidr_el0": { "type": "integer" }, "tpidr_el1": { "type": "integer" }, "tpidrro_el0": { "type": "integer" }, "ttbr0_el1": { "type": "integer" }, "ttbr1_el1": { "type": "integer" } } }, { "$id": "cper-json-registerarray6", "type": "object", "required": [ "elr_el2", "esr_el2", "far_el2", "hacr_el2", "hcr_el2", "hpfar_el2", "mair_el2", "sctlr_el2", "sp_el2", "spsr_el2", "tcr_el2", "tpidr_el2", "ttbr0_el2", "vtcr_el2", "vttbr_el2" ], "properties": { "elr_el2": { "type": "integer" }, "esr_el2": { "type": "integer" }, "far_el2": { "type": "integer" }, "hacr_el2": { "type": "integer" }, "hcr_el2": { "type": "integer" }, "hpfar_el2": { "type": "integer" }, "mair_el2": { "type": "integer" }, "sctlr_el2": { "type": "integer" }, "sp_el2": { "type": "integer" }, "spsr_el2": { "type": "integer" }, "tcr_el2": { "type": "integer" }, "tpidr_el2": { "type": "integer" }, "ttbr0_el2": { "type": "integer" }, "vtcr_el2": { "type": "integer" }, "vttbr_el2": { "type": "integer" } } }, { "$id": "cper-json-registerarray7", "type": "object", "required": [ "elr_el3", "esr_el3", "far_el3", "mair_el3", "sctlr_el3", "sp_el3", "spsr_el3", "tcr_el3", "tpidr_el3", "ttbr0_el3" ], "properties": { "elr_el3": { "type": "integer" }, "esr_el3": { "type": "integer" }, "far_el3": { "type": "integer" }, "mair_el3": { "type": "integer" }, "sctlr_el3": { "type": "integer" }, "sp_el3": { "type": "integer" }, "spsr_el3": { "type": "integer" }, "tcr_el3": { "type": "integer" }, "tpidr_el3": { "type": "integer" }, "ttbr0_el3": { "type": "integer" } } }, { "$id": "cper-json-registerarray8", "type": "object", "required": ["mrsEncoding", "value"], "additionalProperties": false, "properties": { "mrsEncoding": { "type": "object", "required": [ "op2", "crm", "crn", "op1", "o0" ], "properties": { "op2": { "type": "integer" }, "crm": { "type": "integer" }, "crn": { "type": "integer" }, "op1": { "type": "integer" }, "o0": { "type": "integer" } } }, "value": { "type": "integer" } } }, { "$id": "cper-json-registerarray9", "type": "object", "required": ["data"], "properties": { "data": { "type": "string" } } } ] } } } }, "vendorSpecificInfo": { "type": "object", "required": ["data"], "additionalProperties": false, "properties": { "data": { "type": "string" } } } } }