#
81bc5611 |
| 01-Jun-2023 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Fixes for gcc13
* Add the cstdint header file as now required to get the uint* types. * Fix a move assignment test * Refactor some nlohmann::json code to avoid:
``` /usr/include/c++/13/valarra
PEL: Fixes for gcc13
* Add the cstdint header file as now required to get the uint* types. * Fix a move assignment test * Refactor some nlohmann::json code to avoid:
``` /usr/include/c++/13/valarray:1201:1: note: template argument deduction/substitution failed: ../extensions/openpower-pels/registry.cpp:665:43: note: ‘const nlohmann::json_abi_v3_11_2::basic_json<>::value_type’ {aka ‘const nlohmann::json_abi_v3_11_2::basic_json<>’} is not derived from ‘const std::valarray<_Tp>’ 665 | (name == j["SRC"]["ReasonCode"] && type == LookupType::reasonCode)); ```
Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ia3e733602134a60008d0d47934f95a217d2a0eb1
show more ...
|
#
593a4c66 |
| 16-Jun-2021 |
Vijay Lobo <vijaylobo@gmail.com> |
PEL: Support resolution property Support resolution property to add callouts Tested: Created new PEL using busctl and checked for the property to see if the value is updated. Th
PEL: Support resolution property Support resolution property to add callouts Tested: Created new PEL using busctl and checked for the property to see if the value is updated. The error log daemon was restarted and the property is checked again to make sure the value is restored. Verified serialization of new error log by recreating it on a old code version to make sure logs are created w/o the new property and the daemon did not crash. Result: root@rainier:~# busctl get-property xyz.openbmc_project.Logging \ /xyz/openbmc_project/logging/entry/1 xyz.openbmc_project.Logging.\ Entry Resolution s "1. Priority: High, Procedure: BMCSP02\n2. Priority: Medium, PN: \ SVCDOCS\n" Test with location Code: root@p10bmc:~# busctl get-property xyz.openbmc_project.Logging \ /xyz/openbmc_project/logging/entry/3 xyz.openbmc_project.Logging.Entry \ Resolution s "1. Location Code: U78DA.ND0.1234567-P0, Priority: Medium, PN: SVCDOCS\n2. \ Priority: Low, Procedure: BMCSP02\n" Signed-off-by: Vijay Lobo <vijaylobo@gmail.com> Change-Id: I44eebbf794efeb8e752fff98de7c638c927982cd
show more ...
|
#
2b6dfa00 |
| 09-Apr-2020 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Add symbolic FRU support to FRUIdentity A symbolic FRU is a FRU where the part is known, but the part number is not available for it. A trusted symbolic FRU adds the requirement th
PEL: Add symbolic FRU support to FRUIdentity A symbolic FRU is a FRU where the part is known, but the part number is not available for it. A trusted symbolic FRU adds the requirement that the location code is known to be correct so it can be used for lighting LEDs and FRU replacement. The symbolic FRU name shares the same field as the part number. Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I2fa936d9d7235c5cff245effcdb9d445aefffe23
show more ...
|
#
a27e2e50 |
| 09-Apr-2020 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Get rid of the enum for a maint procedure It simplifies the code to just use the string name of the procedure as defined by the message registry schema, and make it be less maintena
PEL: Get rid of the enum for a maint procedure It simplifies the code to just use the string name of the procedure as defined by the message registry schema, and make it be less maintenance to add new procedures in the future, especially if they come from the registry so the enum isn't even needed. This will also make it the same as upcoming support for symbolic FRU callouts, which will always just come from the registry or an external user so would not need an enum. Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ia8550235678ba1fc717a6b0875e2d7ff3888bfec
show more ...
|
#
578e070f |
| 13-Mar-2020 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Maintenance procedure callout definitions A maintenance procedure is a short string that resides in the FRU identity structure in the SRC section of a PEL that maps to a service
PEL: Maintenance procedure callout definitions A maintenance procedure is a short string that resides in the FRU identity structure in the SRC section of a PEL that maps to a service procedure in the service documentation. This commit adds the initial framework for dealing with these by adding an enum type to specify them, and a pel_values.hpp function to get the actual string value of the maintenance procedure based on its enum. A single procedure is created in this commit, NoVPDforFRU, which will be used in a future commit when the location code, part number, etc, aren't available when trying to do a callout and so this procedure will be used instead. Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: I45f366e98794462c70d851f743e4f497c0af77b4
show more ...
|
#
bebeb948 |
| 12-Mar-2020 |
Harisuddin Mohamed Isa <harisuddin@gmail.com> |
PEL: peltool: Add const strings for section header Added "Section Version", "Sub-section type" and "Created by" constant strings. Updated all getJSON() functions to use the new cons
PEL: peltool: Add const strings for section header Added "Section Version", "Sub-section type" and "Created by" constant strings. Updated all getJSON() functions to use the new constants. Signed-off-by: Harisuddin Mohamed Isa <harisuddin@gmail.com> Change-Id: I434192afed929972845c3cfb8876cc5ef784eec2
show more ...
|
#
0f717e10 |
| 15-Jan-2020 |
Harisuddin Mohamed Isa <harisuddin@gmail.com> |
PEL: Print SRC section into JSON For BMC created errors, look up the reason code in the message registry for error description and also meaning of data stored in hexwords 6-9 (if any
PEL: Print SRC section into JSON For BMC created errors, look up the reason code in the message registry for error description and also meaning of data stored in hexwords 6-9 (if any). Added registry message field in peltool list output. "Primary SRC": { "Section Version": "1", "Sub-section type": "1", "Created by": "0x1000", "SRC Version": "0x02", "SRC Format": "0x55", "Power Control Net Fault": "False", "Error Details": { "Message": "PS 0x64 had a PGOOD Fault", "PS_NUM": "0x64" }, "Valid Word Count": "0x09", "Reference Code": "BD8D1001", "Hex Word 2": "00000055", "Hex Word 3": "00000010", "Hex Word 4": "00000000", "Hex Word 5": "00000000", "Hex Word 6": "00000064", "Hex Word 7": "00000000", "Hex Word 8": "00000000", "Hex Word 9": "00000000" } "Primary SRC": { "Section Version": "1", "Sub-section type": "0", "Created by": "0x4552", "SRC Version": "0x02", "SRC Format": "0x2008000", "Power Control Net Fault": "False", "Valid Word Count": "0x04", "Reference Code": "B2001020", "Hex Word 2": "02008000", "Hex Word 3": "00000000", "Hex Word 4": "00000012", "Callout Section": { "Callout Count": "1", "Callouts": [{ "FRU Type": "Symbolic FRU", "Priority": "Medium Priority", "Part Number": "NEXTLVL" }] } } Testing: Manually run peltool and verified out. All unit tests passed. Signed-off-by: Harisuddin Mohamed Isa <harisuddin@gmail.com> Change-Id: I124627ba785413ebda02305b7d9f95431922e714
show more ...
|
#
455587e5 |
| 15-Jan-2020 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Print host trans state in peltool In the UserHeader section, add an entry into peltool's JSON output for the host transmission state. Signed-off-by: Matt Spinler <spinler@u
PEL: Print host trans state in peltool In the UserHeader section, add an entry into peltool's JSON output for the host transmission state. Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Ie906a447859e30175652d291ef2f929e8a7077f6
show more ...
|
#
600d15af |
| 19-Dec-2019 |
Harisuddin Mohamed Isa <harisuddin@gmail.com> |
PEL: Print action flags into JSON aligned "User Header": { "Section Version": "1", "Sub-section type": "0", "Log Committed by": "0x4552",
PEL: Print action flags into JSON aligned "User Header": { "Section Version": "1", "Sub-section type": "0", "Log Committed by": "0x4552", "Subsystem": "System Hypervisor Firmware", "Event Scope": "Entire Platform", "Event Severity": "Informational Event", "Event Type": "Miscellaneous, Informational Only", "Action Flags": [ "Report Externally" ] } Testing: Manually run peltool and verified output Signed-off-by: Harisuddin Mohamed Isa <harisuddin@gmail.com> Change-Id: Ie8376953b5f1baa093fc0aa9564d50cd4208564e
show more ...
|
#
7b291ec6 |
| 19-Nov-2019 |
Aatir <aatrapps@gmail.com> |
PEL: Print list of PELs PelTool commands for printing a list of PELs. PEL list sample: { "0x50000004": { "SRC": "BD8D1001",
PEL: Print list of PELs PelTool commands for printing a list of PELs. PEL list sample: { "0x50000004": { "SRC": "BD8D1001", "PLID": "0x50000004", "CreatorID": "BMC", "Subsystem": "bmc_firmware", "Commit Time": "10/24/2019 15:50:08", "Sev": "unrecoverable", "CompID": "0x1000" } } Change-Id: Ifd864a6561c09de098689195edcf107b3fe550e3 Signed-off-by: Aatir <aatrapps@gmail.com>
show more ...
|
#
c92b4eb4 |
| 18-Nov-2019 |
Aatir <aatrapps@gmail.com> |
PEL: private header in JSON The PELTool application is able to convert sections to JSON. This commit takes care of converting the private header section to JSON. private header
PEL: private header in JSON The PELTool application is able to convert sections to JSON. This commit takes care of converting the private header section to JSON. private header section in JSON sample: "Private Header":[ {"Section Version": "1"}, {"Sub-section type": "0"}, {"Log Committed by": "0x1000"}, {"Entry Creation": "10/24/2019 15:50:08"}, {"Entry Commit": "10/24/2019 15:50:08"}, {"Creator ID": "BMC"}, {"Creator Implementation": ""}, {"Platform Log ID": "0x50000004"}, {"Log Entry ID": "0x50000004"} ] Signed-off-by: Aatir <aatrapps@gmail.com> Change-Id: I8b0d7dc7b70cd2a03f67f7c9a48755803634005d
show more ...
|
#
186ce8c9 |
| 20-Oct-2019 |
Aatir <aatrapps@gmail.com> |
PEL: PELTool Application PELTooL application would be used to interact with PELs. This commit has the first functionality, where a PEL file is passed and all PEL sections are hexdump
PEL: PELTool Application PELTooL application would be used to interact with PELs. This commit has the first functionality, where a PEL file is passed and all PEL sections are hexdumped in a JSON object. Signed-off-by: Aatir <aatrapps@gmail.com> Change-Id: I155d75bb58cbd14a297b094314f7fd1f271f4f37
show more ...
|
#
835a8693 |
| 27-Aug-2019 |
Matt Spinler <spinler@us.ibm.com> |
PEL: Support for going between PELs & registry Add tables that allow one to go between how a PEL field actually shows up in the PEL (raw bytes) and how it shows up in the message registr
PEL: Support for going between PELs & registry Add tables that allow one to go between how a PEL field actually shows up in the PEL (raw bytes) and how it shows up in the message registry (a string enumeration). The tables also have a column to show a string description of that value that can be used by the parser, though for now those descriptions are all left at "TODO". There only needs to be a table for a PEL field when there is a corresponding message registry field that is a string enumeration, so that when code looks up an error in the message registry it knows what to fill in the PEL with. Also provide APIs to look up a row in the table by either the PEL value or the message registry value. Signed-off-by: Matt Spinler <spinler@us.ibm.com> Change-Id: Iac849bcd2b0449a8d03fac7eb067484e91d28259
show more ...
|