blob: f40852230e51c0d71699d527e800091baa800e4c [file] [log] [blame]
{
"$id": "cper-json-section-descriptor",
"$schema": "https://json-schema.org/draft/2020-12/schema",
"type": "object",
"description": "Common Platform Record Section Descriptor as defined in UEFI Appendix N section 2.2",
"required": [
"sectionOffset",
"sectionLength",
"revision",
"validationBits",
"flags",
"sectionType",
"severity"
],
"additionalProperties": false,
"properties": {
"sectionOffset": {
"type": "integer",
"description": "Offset in bytes of the section body from the base of the record header."
},
"sectionLength": {
"type": "integer",
"description": "The length in bytes of the section body."
},
"revision": {
"type": "object",
"description": "This is a 2-byte field representing a major and minor version number for the error record definition in BCD format.",
"required": ["major", "minor"],
"properties": {
"major": {
"type": "integer",
"minimum": 0
},
"minor": {
"type": "integer",
"minimum": 0
}
}
},
"validationBits": {
"type": "object",
"description": "This field indicates the validity of other feilds in this descriptor.",
"required": ["fruIDValid", "fruStringValid"],
"properties": {
"fruIDValid": {
"type": "boolean"
},
"fruStringValid": {
"type": "boolean"
}
}
},
"flags": {
"type": "object",
"required": [
"primary",
"containmentWarning",
"reset",
"errorThresholdExceeded",
"resourceNotAccessible",
"latentError",
"propagated",
"overflow"
],
"properties": {
"primary": {
"type": "boolean",
"description": "If set, identifies the section as the section to be associated with the error condition."
},
"containmentWarning": {
"type": "boolean",
"description": "If set, the error was not contained within the processor or memory hierarchy and the error may have propagated to persistent storage or network."
},
"reset": {
"type": "boolean",
"description": "If set, the component has been reset and must be re-initialized or re-enabled by the operating system prior to use."
},
"errorThresholdExceeded": {
"type": "boolean",
"description": "If set, OS may choose to discontinue use of this resource."
},
"resourceNotAccessible": {
"type": "boolean",
"description": "If set, the resource could not be queried for error information due to conflicts with other system software or resources."
},
"latentError": {
"type": "boolean",
"description": "If set this flag indicates that action has been taken to ensure error containment"
},
"propagated": {
"type": "boolean",
"description": "If set this flag indicates the section is to be associated with an error that has been propagated due to hardware poisoning."
},
"overflow": {
"type": "boolean",
"description": "If set this flag indicates the firmware has detected an overflow of buffers/queues that are used to accumulate, collect, or report errors"
}
}
},
"sectionType": {
"type": "object",
"description": "This field holds a pre-assigned GUID value indicating that it is a section of a particular error.",
"required": ["data", "type"],
"properties": {
"data": {
"type": "string",
"pattern": "^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{16}$"
},
"type": {
"type": "string"
}
}
},
"fruID": {
"type": "string",
"description": "GUID representing the FRU ID, if it exists, for the section reporting the error. The default value is zero indicating an invalid FRU ID."
},
"severity": {
"type": "object",
"description": "This field indicates the severity associated with the error section.",
"required": ["code", "name"],
"properties": {
"code": {
"type": "integer",
"minimum": 0
},
"name": {
"type": "string"
}
}
},
"fruText": {
"type": "string",
"description": "ASCII string identifying the FRU hardware."
}
}
}