PHAL: Clock error handling support

-Supporting new flag to indicate planar callout required
    -This flag can be set from either clock HWP error or clock
     non-HWP error.
-Adding new error type for ipl error callback
    -This error type can be called for non-hwp failures
    -Additional data sent will be parsed and included in PEL
-Different prefix is added for HWP error and PLAT error.
Tested:
"Primary SRC": {
    "Deconfigured":             "False",
    "Guarded":                  "False",
    "Error Details": {
        "Message":              "Failure occured during boot process"
    },
    "Callout Section": {
        "Callout Count":        "1",
        "Callouts": [{
            "FRU Type":         "Normal Hardware FRU",
            "Priority":         "Mandatory, replace all with this type as a unit",
            "Location Code":    "U780C.ND0.1234567-P0",
            "Part Number":      "F040221",
            "CCIN":             "2E33",
            "Serial Number":    "YL2E33010000"
        }]
    }
},
"User Data 1": {
    "Section Version": "1",
    "Sub-section type": "1",
    "Created by": "0x2000",

    "PLAT_FFDC_FAIL_TYPE": "STATUS_READ",
    "PLAT_FFDC_I2C_RC": "0",
    "PLAT_HW_CO_01_CALLOUT_PLANAR": "true",
    "PLAT_HW_CO_01_CLK_POS": "1",
    "PLAT_HW_CO_01_HW_ID": "PROC_REF_CLOCK",
    "PLAT_HW_CO_01_PRIORITY": "HIGH",
    "PLAT_RC": "10",
    "PLAT_RC_DESC": "Error in executing clock initialisation",
    "_PID": "21916"
},
"User Data 2": {
    "Section Version": "1",
    "Sub-section type": "1",
    "Created by": "0x2000",
    "Data": [
        {
            "Deconfigured": false,
            "Guarded": false,
            "InventoryPath": "/xyz/openbmc_project/inventory/system/chassis/motherboard",
            "Priority": "H"
        }
    ]
}

Signed-off-by: Rajees P P <rajerpp1@in.ibm.com>
Change-Id: Ifd2268b1c99be4dbfa9234e910d7e87771adb176
1 file changed
tree: 45cedd54cd63488c3b9f8c28ba8abe4e640ec24f
  1. extensions/
  2. procedures/
  3. service_files/
  4. test/
  5. .clang-format
  6. .gitignore
  7. .shellcheck
  8. cfam_access.cpp
  9. cfam_access.hpp
  10. ext_interface.cpp
  11. ext_interface.hpp
  12. filedescriptor.cpp
  13. filedescriptor.hpp
  14. LICENSE
  15. MAINTAINERS
  16. meson.build
  17. meson_options.txt
  18. nmi_interface.cpp
  19. nmi_interface.hpp
  20. nmi_main.cpp
  21. OWNERS
  22. p10_cfam.hpp
  23. p9_cfam.hpp
  24. proc_control.cpp
  25. README.md
  26. registration.hpp
  27. targeting.cpp
  28. targeting.hpp
  29. temporary_file.cpp
  30. temporary_file.hpp
  31. util.cpp
  32. util.hpp
README.md

Contains procedures that interact with the OpenPower nest chipset.

To Build

To build this package, do the following steps:

    1. meson builddir
    2. ninja -C builddir

To build with phal feature:
    1. meson builddir -Dphal=enabled -Dopenfsi=enabled
    2. ninja -C builddir

To clean the repository run `ninja -C builddir/ clean`.