1{
2    "PELs":
3    [
4        {
5            "Name": "xyz.openbmc_project.Common.Error.Timeout",
6            "Subsystem": "bmc_firmware",
7
8            "SRC":
9            {
10                "ReasonCode": "0x1001",
11                "Words6To9":
12                {
13                    "6":
14                    {
15                        "Description": "Timeout in ms",
16                        "AdditionalDataPropSource": "TIMEOUT_IN_MSEC"
17                    }
18                }
19            },
20
21            "Documentation":
22            {
23                "Description": "This is a generic timeout error",
24                "Message": "An operation timed out",
25                "Notes": [
26                    "The journal should contain more information"
27                ]
28            }
29        },
30
31        {
32            "Name": "xyz.openbmc_project.Common.Error.InternalFailure",
33            "Subsystem": "bmc_firmware",
34
35            "SRC":
36            {
37                "ReasonCode": "0x1002",
38                "Words6To9":
39                {
40                }
41            },
42
43            "Documentation":
44            {
45                "Description": "BMC code had a generic internal failure",
46                "Message": "An application had an internal failure",
47                "Notes": [
48                    "The journal should contain more information"
49                ]
50            }
51        },
52
53        {
54            "Name": "xyz.openbmc_project.Common.Error.InvalidArgument",
55            "Subsystem": "user_error",
56
57            "SRC":
58            {
59                "ReasonCode": "0x1003",
60                "Words6To9":
61                {
62                }
63            },
64
65            "Documentation":
66            {
67                "Description": "BMC code was given an invalid argument",
68                "Message": "Code was given an invalid argument",
69                "Notes": [
70                    "The journal should contain more information"
71                ]
72            }
73        },
74        {
75            "Name": "xyz.openbmc_project.Common.Error.InsufficientPermission",
76            "Subsystem": "user_error",
77
78            "SRC":
79            {
80                "ReasonCode": "0x1004",
81                "Words6To9":
82                {
83                }
84            },
85
86            "Documentation":
87            {
88                "Description": "An operation failed due to insufficient permission",
89                "Message": "An operation failed due to unsufficient permission",
90                "Notes": [
91                    "The journal should contain more information"
92                ]
93            }
94        },
95
96        {
97            "Name": "xyz.openbmc_project.Common.Error.NotAllowed",
98            "Subsystem": "user_error",
99
100            "SRC":
101            {
102                "ReasonCode": "0x1005",
103                "Words6To9":
104                {
105                }
106            },
107
108            "Documentation":
109            {
110                "Description": "An operation failed because it isn't allowed",
111                "Message": "An operation failed because it isn't allowed",
112                "Notes": [
113                    "The journal should contain more information"
114                ]
115            }
116        },
117
118        {
119            "Name": "xyz.openbmc_project.Common.Error.NoCACertificate",
120            "Subsystem": "user_error",
121
122            "SRC":
123            {
124                "ReasonCode": "0x1006",
125                "Words6To9":
126                {
127                }
128            },
129
130            "Documentation":
131            {
132                "Description": "The server's CA certificate has not been provided",
133                "Message": "The server's CA certificate has not been provided"
134            }
135        },
136
137        {
138            "Name": "xyz.openbmc_project.Sensor.Device.Error.ReadFailure",
139            "Subsystem": "cec_chip_iface",
140
141            "SRC":
142            {
143                "ReasonCode": "0x1007",
144                "Words6To9":
145                {
146                    "6":
147                    {
148                        "Description": "errno of the failure",
149                        "AdditionalDataPropSource": "CALLOUT_ERRNO"
150                    }
151                }
152            },
153
154            "Documentation":
155            {
156                "Description": "Sensor device read failure",
157                "Message": "There was a failure when reading a sensor device",
158                "Notes": [
159                    "The severity is set by the creator.",
160                    "The action flags are set automatically by the code.",
161                    "Callouts added based on CALLOUT_DEVICE_PATH."
162                ]
163            }
164        },
165
166        {
167            "Name": "xyz.openbmc_project.Common.Device.Error.ReadFailure",
168            "Subsystem": "cec_chip_iface",
169
170            "SRC":
171            {
172                "ReasonCode": "0x1008",
173                "Words6To9":
174                {
175                    "6":
176                    {
177                        "Description": "errno of the failure",
178                        "AdditionalDataPropSource": "CALLOUT_ERRNO"
179                    }
180                }
181            },
182
183            "Documentation":
184            {
185                "Description": "Device read failure",
186                "Message": "There was a failure when reading a hardware device",
187                "Notes": [
188                    "The severity is set by the creator.",
189                    "The action flags are set automatically by the code.",
190                    "Callouts added based on CALLOUT_DEVICE_PATH."
191                ]
192            }
193        },
194
195        {
196            "Name": "xyz.openbmc_project.Control.Device.Error.WriteFailure",
197            "Subsystem": "cec_chip_iface",
198
199            "SRC":
200            {
201                "ReasonCode": "0x1009",
202                "Words6To9":
203                {
204                    "6":
205                    {
206                        "Description": "errno of the failure",
207                        "AdditionalDataPropSource": "CALLOUT_ERRNO"
208                    }
209                }
210            },
211
212            "Documentation":
213            {
214                "Description": "Device write failure",
215                "Message": "There was a failure when writing to a hardware device",
216                "Notes": [
217                    "The severity is set by the creator.",
218                    "The action flags are set automatically by the code.",
219                    "Callouts added based on CALLOUT_DEVICE_PATH"
220                ]
221            }
222        },
223
224        {
225            "Name": "xyz.openbmc_project.Common.Device.Error.WriteFailure",
226            "Subsystem": "cec_chip_iface",
227
228            "SRC":
229            {
230                "ReasonCode": "0x100A",
231                "Words6To9":
232                {
233                    "6":
234                    {
235                        "Description": "errno of the failure",
236                        "AdditionalDataPropSource": "CALLOUT_ERRNO"
237                    }
238                }
239            },
240
241            "Documentation":
242            {
243                "Description": "Device write failure",
244                "Message": "There was a failure when writing to a hardware device",
245                "Notes": [
246                    "The severity is set by the creator.",
247                    "The action flags are set automatically by the code.",
248                    "Callouts added based on CALLOUT_DEVICE_PATH"
249                ]
250            }
251        },
252        {
253            "Name": "org.open_power.Logging.Error.SentBadPELToHost",
254            "Subsystem": "bmc_firmware",
255            "Severity": "non_error",
256
257            "SRC":
258            {
259                "ReasonCode": "0x2001",
260                "Words6To9":
261                {
262                    "6":
263                    {
264                        "Description": "The bad PEL ID",
265                        "AdditionalDataPropSource": "BAD_ID"
266                    }
267                }
268            },
269
270            "Documentation":
271            {
272                "Description": "The BMC sent the host a malformed PEL",
273                "Message": "The BMC sent the host a malformed PEL",
274                "Notes": [
275                    "The host firmware rejected that PEL."
276                ]
277            }
278        },
279
280        {
281            "Name": "org.open_power.Logging.Error.BadHostPEL",
282            "Subsystem": "platform_firmware",
283            "Severity": "unrecoverable",
284
285            "SRC":
286            {
287                "ReasonCode": "0x2002",
288                "Words6To9":
289                {
290                    "6":
291                    {
292                        "Description": "The PLID of the invalid PEL",
293                        "AdditionalDataPropSource": "PLID"
294                    },
295                    "7":
296                    {
297                        "Description": "The corresponding OpenBMC event log ID",
298                        "AdditionalDataPropSource": "OBMC_LOG_ID"
299                    },
300                    "8":
301                    {
302                        "Description": "The size of the invalid PEL",
303                        "AdditionalDataPropSource": "PEL_SIZE"
304                    }
305                }
306            },
307
308            "Documentation":
309            {
310                "Description": "The host sent the BMC an invalid PEL",
311                "Message": "The host sent the BMC an invalid PEL",
312                "Notes": [
313                ]
314            }
315        },
316
317        {
318            "Name": "org.open_power.Logging.Error.TestError1",
319            "Subsystem": "platform_firmware",
320            "Severity": "unrecoverable",
321
322            "SRC":
323            {
324                "ReasonCode": "0x2003",
325                "Words6To9":
326                {
327                }
328            },
329
330            "Callouts": [
331                {
332                    "CalloutList": [
333                        {"Priority": "high", "Procedure": "bmc_code"},
334                        {"Priority": "medium", "SymbolicFRU": "service_docs"}
335                    ]
336                }
337            ],
338
339            "Documentation":
340            {
341                "Description": "An error for testing",
342                "Message": "This is a test error"
343            }
344        },
345
346        {
347            "Name": "xyz.openbmc_project.Logging.Error.Default",
348            "Subsystem": "other_na",
349
350            "SRC":
351            {
352                "ReasonCode": "0x2004",
353                "Words6To9":
354                {
355                }
356            },
357
358            "Documentation":
359            {
360                "Description": "This entry is used when no other matching entry is found",
361                "Message": "Unknown (Original event not in message registry)",
362                "Notes": [
363                    "This is used when the actual error name isn't found in ",
364                    "the registry.  The original error name will be stored ",
365                    "in the UserData section that contains the AdditionalData ",
366                    "properties using the key ERROR_NAME.",
367                    "This error may contain callouts if the creator passed ",
368                    "them in.",
369                    "The severity is set by the creator.",
370                    "If this error is seen, then a code change needs to be ",
371                    "made to add the missing error entry to this registry."
372                ]
373            }
374        },
375
376        {
377            "Name": "org.open_power.PHAL.Error.Boot",
378            "Subsystem": "cec_hardware",
379            "Severity": "unrecoverable",
380
381            "SRC":
382            {
383                "ReasonCode": "0x3000",
384                "Words6To9":
385                {
386                }
387            },
388
389            "Documentation":
390            {
391                "Description": "Failure occured during boot process",
392                "Message": "Failure occured during boot process",
393                "Notes": [
394                    "Debug traces will be captured in AdditionalData section"
395                ]
396            }
397        },
398
399        {
400            "Name": "org.open_power.Attn.Error.Terminate",
401            "Subsystem": "other_na",
402            "Severity": "critical_system_term",
403
404            "SRC":
405            {
406                "ReasonCode": "0xD138",
407                "Words6To9":
408                {
409                }
410            },
411
412            "Documentation":
413            {
414                "Description": "Status shows TI special attention active",
415                "Message": "TI special attention detected",
416                "Notes": [
417                    "This entry is for any TI special attention event ",
418                    "reported by the attention handler component"
419                ]
420            }
421        },
422
423        {
424            "Name": "org.open_power.Attn.Error.Fail",
425            "Subsystem": "bmc_firmware",
426            "Severity": "unrecoverable_loss_of_function",
427
428            "SRC":
429            {
430                "ReasonCode": "0xD13E",
431                "Words6To9":
432                {
433                    "6":
434                    {
435                        "Description": "Error code from attention handler",
436                        "AdditionalDataPropSource": "ERROR_CODE"
437                    }
438                }
439            },
440            "Documentation":
441            {
442                "Description": "The attention handler encountered an error",
443                "MessageArgSources" : ["SRCWord6"],
444                "Message": "Attention handler error %1",
445                "Notes": [
446                    "Attention handler will provide error code"
447                ]
448            }
449        },
450
451        {
452            "Name": "org.open_power.Attn.Error.Vital",
453            "Subsystem": "processor_chip",
454            "Severity": "critical",
455
456            "SRC":
457            {
458                "ReasonCode": "0xD16D",
459                "Words6To9":
460                {
461                }
462            },
463
464            "Documentation":
465            {
466                "Description": "Status shows SBE vital attention active",
467                "Message": "SBE vital attention detected",
468                "Notes": [
469                    "This entry is for any SBE vital attention event ",
470                    "reported by the attention handler component"
471                ]
472            }
473        },
474
475        {
476            "Name": "org.open_power.HwDiags.Error.Checkstop",
477            "Subsystem": "cec_hardware",
478            "ActionFlags": [ "service_action", "report", "call_home" ],
479
480            "SRC":
481            {
482                "ReasonCode": "0xE510",
483                "SymptomIDFields": [ "SRCWord6", "SRCWord7", "SRCWord8" ],
484                "Words6To9":
485                {
486                    "6":
487                    {
488                        "Description": "[0:15] chip model, [16:23] reserved, [24:31] chip EC level",
489                        "AdditionalDataPropSource": "SRC6"
490                    },
491                    "7":
492                    {
493                        "Description": "[0:15] chip position, [16:23] unused, [24:31] signature attn type",
494                        "AdditionalDataPropSource": "SRC7"
495                    },
496                    "8":
497                    {
498                        "Description": "[0:15] signature ID, [16:23] signature instance, [24:31] signature bit position",
499                        "AdditionalDataPropSource": "SRC8"
500                    }
501                }
502            },
503
504            "Documentation":
505            {
506                "Description": "A system checkstop attention has occurred",
507                "MessageArgSources" : [ "SRCWord6", "SRCWord7", "SRCWord8" ],
508                "Message": "hw-diags signature: %1 %2 %3"
509            }
510        },
511
512        {
513            "Name": "org.open_power.HwDiags.Error.Predictive",
514            "Subsystem": "cec_hardware",
515            "ActionFlags": [ "service_action", "report", "call_home" ],
516
517            "SRC":
518            {
519                "ReasonCode": "0xE511",
520                "SymptomIDFields": [ "SRCWord6", "SRCWord7", "SRCWord8" ],
521                "Words6To9":
522                {
523                    "6":
524                    {
525                        "Description": "[0:15] chip model, [16:23] reserved, [24:31] chip EC level",
526                        "AdditionalDataPropSource": "SRC6"
527                    },
528                    "7":
529                    {
530                        "Description": "[0:15] chip position, [16:23] unused, [24:31] signature attn type",
531                        "AdditionalDataPropSource": "SRC7"
532                    },
533                    "8":
534                    {
535                        "Description": "[0:15] signature ID, [16:23] signature instance, [24:31] signature bit position",
536                        "AdditionalDataPropSource": "SRC8"
537                    }
538                }
539            },
540
541            "Documentation":
542            {
543                "Description": "A hardware attention requiring service has occurred",
544                "MessageArgSources" : [ "SRCWord6", "SRCWord7", "SRCWord8" ],
545                "Message": "hw-diags signature: %1 %2 %3"
546            }
547        },
548
549        {
550            "Name": "xyz.openbmc_project.Power.PowerSupply.Error.InputFault",
551            "Subsystem": "power_supply",
552            "Severity": "unrecoverable_redundancy_loss",
553            "ActionFlags": ["service_action", "report"],
554            "ComponentID": "0x2700",
555
556            "SRC": {
557                "Type": "11",
558                "ReasonCode": "0x15F0",
559                "Words6To9": {}
560            },
561
562            "Callouts": [
563                {
564                    "CalloutList": [
565                        { "Priority": "high", "SymbolicFRU": "pwrsply" }
566                    ]
567                }
568            ],
569
570            "Documentation": {
571                "Description": "Power Supply input power fault",
572                "Message": "A power supply has indicated an input or under voltage condition.",
573                "Notes": [
574                    "Check the power supply cabling and/or input power ",
575                    "source. The PWRSPLY procedure is used rather than ",
576                    "calling out a location code, as typically these faults ",
577                    "are related to the supplied power, the cable, or the ",
578                    "cable connectors. If the input fault resolves down to an ",
579                    "issue with the power supply itself, the power supply ",
580                    "indicating this input fault should be called out. Add the ",
581                    "CALLOUT_INVENTORY_PATH to the additional data, and set the",
582                    "CALLOUT_PRIORITY to something other than high."
583                ]
584            }
585        },
586
587        {
588            "Name": "xyz.openbmc_project.Power.PowerSupply.Error.Fault",
589            "Subsystem": "power_supply",
590            "Severity": "unrecoverable_redundancy_loss",
591            "ActionFlags": ["service_action", "report", "call_home"],
592            "ComponentID": "0x2700",
593
594            "SRC": {
595                "Type": "11",
596                "ReasonCode": "0x15F1",
597                "Words6To9": {}
598            },
599
600            "Documentation": {
601                "Description": "Power Supply power fault",
602                "Message": "The power supply detected a fault condition, see AdditionalData for further details.",
603                "Notes": [
604                    "The power supply reporting the fault should be called ",
605                    "out using the CALLOUT_INVENTORY_PATH keyword. Include ",
606                    "specific fault, STATUS_* details, and code level in the ",
607                    "AdditionalData section."
608                ]
609            }
610        },
611
612        {
613            "Name": "xyz.openbmc_project.Power.PowerSupply.Error.CommFault",
614            "Subsystem": "power_supply",
615            "Severity": "unrecoverable",
616            "ActionFlags": ["service_action", "report", "call_home"],
617            "ComponentID": "0x2700",
618
619            "SRC": {
620                "Type": "11",
621                "ReasonCode": "0x15F2",
622                "Words6To9": {}
623            },
624
625            "Documentation": {
626                "Description": "Power Supply non-power fault",
627                "Message": "A communication failure occurred talking to the power supply",
628                "Notes": [
629                    "Communication problems with the power supply could be ",
630                    "the power supply, or any hardware between it and the ",
631                    "BMC. Reporting the error should be passing in a call ",
632                    "out using CALLOUT_DEVICE_PATH."
633                ]
634            }
635        },
636
637        {
638            "Name": "xyz.openbmc_project.Power.PowerSupply.Error.Missing",
639            "Subsystem": "power_supply",
640            "Severity": "unrecoverable_redundancy_loss",
641            "ActionFlags": ["service_action", "report", "call_home"],
642            "ComponentID": "0x2700",
643
644            "SRC": {
645                "Type": "11",
646                "ReasonCode": "0x15F6",
647                "Words6To9": {}
648            },
649
650            "Callouts": [
651                {
652                    "CalloutList": [
653                        {
654                            "Priority": "high",
655                            "SymbolicFRUTrusted": "pwrsply",
656                            "UseInventoryLocCode": true
657                        }
658                    ]
659                }
660            ],
661
662            "Documentation": {
663                "Description": "Power Supply is missing",
664                "Message": "A power supply that should be present is missing",
665                "Notes": [
666                    "The CalloutList should use the PWRSPLY symbolic FRU ",
667                    "with the trusted location code property.  The ",
668                    "location code in this callout is obtained from ",
669                    "the passed in CALLOUT_INVENTORY_PATH value."
670                ]
671            }
672        },
673
674        {
675            "Name": "xyz.openbmc_project.State.Shutdown.Power.Error.Blackout",
676            "Subsystem": "power",
677            "ActionFlags": [ "report", "service_action" ],
678            "Severity": "unrecoverable",
679            "ComponentID": "0x2700",
680
681            "SRC":
682            {
683                "Type": "11",
684                "ReasonCode": "0x00AC",
685                "Words6To9": {},
686                "PowerFault": true
687            },
688
689            "Callouts": [
690                {
691                    "CalloutList": [
692                        { "Priority": "high", "SymbolicFRU": "ac_module"}
693                    ]
694                }
695            ],
696
697            "Documentation": {
698                "Description": "Input power was lost while the system was powered on.",
699                "Message": "Input power was lost while the system was powered on.",
700                "Notes": [
701                    "Input power was lost while system powered on.",
702                    "The CalloutList should use the ACMODUL symbolic FRU."
703                ]
704            }
705        },
706
707        {
708            "Name": "xyz.openbmc_project.Power.Error.Shutdown",
709            "Subsystem": "power_sequencer",
710            "ComponentID": "0x2700",
711
712            "SRC": {
713                "Type": "11",
714                "ReasonCode": "0x2600",
715                "Words6To9": {}
716            },
717
718            "Callouts": [
719                {
720                    "CalloutList": [
721                        { "Priority": "high", "SymbolicFRU": "pgood_part" }
722                    ]
723                }
724            ],
725
726            "Documentation": {
727                "Description": "A power off was issued because a power fault was detected",
728                "Message": "A power off was issued because a power fault was detected",
729                "Notes": [
730                ]
731            }
732        },
733
734        {
735            "Name": "xyz.openbmc_project.Power.Error.PowerSequencerPGOODFault",
736            "Subsystem": "power_sequencer",
737            "ComponentID": "0x2700",
738
739            "SRC": {
740                "Type": "11",
741                "ReasonCode": "0x2610",
742                "Words6To9": {}
743            },
744
745            "CalloutsUsingAD": {
746                "ADName": "INPUT_NAME", "CalloutsWithTheirADValues": [
747                    {
748                        "ADValue": "PCIE_SLOT0", "Callouts": [
749                            {
750                                "CalloutList": [
751                                    { "Priority": "high", "LocCode": "P0-C0" },
752                                    { "Priority": "medium", "LocCode": "P0" }
753                                ]
754                            }
755                        ]
756                    },
757                    {
758                        "ADValue": "PCIE_SLOT1", "Callouts": [
759                            {
760                                "CalloutList": [
761                                    { "Priority": "high", "LocCode": "P0-C1" },
762                                    { "Priority": "medium", "LocCode": "P0" }
763                                ]
764                            }
765                        ]
766                    },
767                    {
768                        "ADValue": "PCIE_SLOT2", "Callouts": [
769                            {
770                                "CalloutList": [
771                                    { "Priority": "high", "LocCode": "P0-C2" },
772                                    { "Priority": "medium", "LocCode": "P0" }
773                                ]
774                            }
775                        ]
776                    },
777                    {
778                        "ADValue": "PCIE_SLOT3", "Callouts": [
779                            {
780                                "CalloutList": [
781                                    { "Priority": "high", "LocCode": "P0-C3" },
782                                    { "Priority": "medium", "LocCode": "P0" }
783                                ]
784                            }
785                        ]
786                    },
787                    {
788                        "ADValue": "PCIE_SLOT4", "Callouts": [
789                            {
790                                "CalloutList": [
791                                    { "Priority": "high", "LocCode": "P0-C4" },
792                                    { "Priority": "medium", "LocCode": "P0" }
793                                ]
794                            }
795                        ]
796                    },
797                    {
798                        "ADValue": "PCIE_SLOT7", "Callouts": [
799                            {
800                                "CalloutList": [
801                                    { "Priority": "high", "LocCode": "P0-C7" },
802                                    { "Priority": "medium", "LocCode": "P0" }
803                                ]
804                            }
805                        ]
806                    },
807                    {
808                        "ADValue": "PCIE_SLOT8", "Callouts": [
809                            {
810                                "CalloutList": [
811                                    { "Priority": "high", "LocCode": "P0-C8" },
812                                    { "Priority": "medium", "LocCode": "P0" }
813                                ]
814                            }
815                        ]
816                    },
817                    {
818                        "ADValue": "PCIE_SLOT9", "Callouts": [
819                            {
820                                "CalloutList": [
821                                    { "Priority": "high", "LocCode": "P0-C9" },
822                                    { "Priority": "medium", "LocCode": "P0" }
823                                ]
824                            }
825                        ]
826                    },
827                    {
828                        "ADValue": "PCIE_SLOT10", "Callouts": [
829                            {
830                                "CalloutList": [
831                                    { "Priority": "high", "LocCode": "P0-C10" },
832                                    { "Priority": "medium", "LocCode": "P0" }
833                                ]
834                            }
835                        ]
836                    },
837                    {
838                        "ADValue": "PCIE_SLOT11", "Callouts": [
839                            {
840                                "CalloutList": [
841                                    { "Priority": "high", "LocCode": "P0-C11" },
842                                    { "Priority": "medium", "LocCode": "P0" }
843                                ]
844                            }
845                        ]
846                    },
847                    {
848                        "ADValue": "PGOOD_12A", "Callouts": [
849                            {
850                                "CalloutList": [
851                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
852                                ]
853                            }
854                        ]
855                    },
856                    {
857                        "ADValue": "PGOOD_12B", "Callouts": [
858                            {
859                                "CalloutList": [
860                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
861                                ]
862                            }
863                        ]
864                    },
865                    {
866                        "ADValue": "PGOOD_12C", "Callouts": [
867                            {
868                                "CalloutList": [
869                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
870                                ]
871                            }
872                        ]
873                    },
874                    {
875                        "ADValue": "PGOOD_12D", "Callouts": [
876                            {
877                                "CalloutList": [
878                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
879                                ]
880                            }
881                        ]
882                    },
883                    {
884                        "ADValue": "PGOOD_12L", "Callouts": [
885                            {
886                                "CalloutList": [
887                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
888                                ]
889                            }
890                        ]
891                    },
892                    {
893                        "ADValue": "PGOOD_12M", "Callouts": [
894                            {
895                                "CalloutList": [
896                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
897                                ]
898                            }
899                        ]
900                    },
901                    {
902                        "ADValue": "PGOOD_12N", "Callouts": [
903                            {
904                                "CalloutList": [
905                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
906                                ]
907                            }
908                        ]
909                    },
910                    {
911                        "ADValue": "PGOOD_12P", "Callouts": [
912                            {
913                                "CalloutList": [
914                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
915                                ]
916                            }
917                        ]
918                    },
919                    {
920                        "ADValue": "PGOOD_12PCIE", "Callouts": [
921                            {
922                                "CalloutList": [
923                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
924                                ]
925                            }
926                        ]
927                    },
928                    {
929                        "ADValue": "PGOOD_12Q", "Callouts": [
930                            {
931                                "CalloutList": [
932                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
933                                ]
934                            }
935                        ]
936                    },
937                    {
938                        "ADValue": "PGOOD_12R", "Callouts": [
939                            {
940                                "CalloutList": [
941                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
942                                ]
943                            }
944                        ]
945                    },
946                    {
947                        "ADValue": "PGOOD_VDN_DCM0", "Callouts": [
948                            {
949                                "CalloutList": [
950                                    { "Priority": "high", "LocCode": "P0-C14" },
951                                    { "Priority": "medium", "LocCode": "P0-C15" },
952                                    { "Priority": "low", "LocCode": "P0" }
953                                ]
954                            }
955                        ]
956                    },
957                    {
958                        "ADValue": "PGOOD_VDN_DCM1", "Callouts": [
959                            {
960                                "CalloutList": [
961                                    { "Priority": "high", "LocCode": "P0-C23" },
962                                    { "Priority": "medium", "LocCode": "P0-C24" },
963                                    { "Priority": "low", "LocCode": "P0" }
964                                ]
965                            }
966                        ]
967                    },
968                    {
969                        "ADValue": "PGOOD_VCS_DCM0", "Callouts": [
970                            {
971                                "CalloutList": [
972                                    { "Priority": "high", "LocCode": "P0-C14" },
973                                    { "Priority": "medium", "LocCode": "P0-C15" },
974                                    { "Priority": "low", "LocCode": "P0" }
975                                ]
976                            }
977                        ]
978                    },
979                    {
980                        "ADValue": "PGOOD_VCS_DCM1", "Callouts": [
981                            {
982                                "CalloutList": [
983                                    { "Priority": "high", "LocCode": "P0-C23" },
984                                    { "Priority": "medium", "LocCode": "P0-C24" },
985                                    { "Priority": "low", "LocCode": "P0" }
986                                ]
987                            }
988                        ]
989                    },
990                    {
991                        "ADValue": "PGOOD_VIO_DCM0", "Callouts": [
992                            {
993                                "CalloutList": [
994                                    { "Priority": "high", "LocCode": "P0-C14" },
995                                    { "Priority": "medium", "LocCode": "P0-C15" },
996                                    { "Priority": "low", "LocCode": "P0" }
997                                ]
998                            }
999                        ]
1000                    },
1001                    {
1002                        "ADValue": "PGOOD_VIO_DCM1", "Callouts": [
1003                            {
1004                                "CalloutList": [
1005                                    { "Priority": "high", "LocCode": "P0-C23" },
1006                                    { "Priority": "medium", "LocCode": "P0-C24" },
1007                                    { "Priority": "low", "LocCode": "P0" }
1008                                ]
1009                            }
1010                        ]
1011                    },
1012                    {
1013                        "ADValue": "PGOOD_VPCIE_DCM0", "Callouts": [
1014                            {
1015                                "CalloutList": [
1016                                    { "Priority": "high", "LocCode": "P0-C14" },
1017                                    { "Priority": "medium", "LocCode": "P0-C15" },
1018                                    { "Priority": "low", "LocCode": "P0" }
1019                                ]
1020                            }
1021                        ]
1022                    },
1023                    {
1024                        "ADValue": "PGOOD_VPCIE_DCM1", "Callouts": [
1025                            {
1026                                "CalloutList": [
1027                                    { "Priority": "high", "LocCode": "P0-C23" },
1028                                    { "Priority": "medium", "LocCode": "P0-C24" },
1029                                    { "Priority": "low", "LocCode": "P0" }
1030                                ]
1031                            }
1032                        ]
1033                    }
1034                ]
1035            },
1036
1037            "Documentation": {
1038                "Description": "The power sequencer chip detected a PGOOD fault",
1039                "Message": "The power sequencer chip detected a PGOOD fault",
1040                "Notes": [
1041                ]
1042            }
1043        },
1044
1045        {
1046            "Name": "xyz.openbmc_project.Power.Error.PowerSequencerVoltageFault",
1047            "Subsystem": "power_sequencer",
1048            "ComponentID": "0x2700",
1049
1050            "SRC": {
1051                "Type": "11",
1052                "ReasonCode": "0x2620",
1053                "Words6To9": {}
1054            },
1055
1056            "CalloutsUsingAD": {
1057                "ADName": "RAIL_NAME", "CalloutsWithTheirADValues": [
1058                    {
1059                        "ADValue": "12.0V", "Callouts": [
1060                            {
1061                                "CalloutList": [
1062                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
1063                                ]
1064                            }
1065                        ]
1066                    },
1067                    {
1068                        "ADValue": "5.0V_USB", "Callouts": [
1069                            {
1070                                "CalloutList": [
1071                                    { "Priority": "high", "SymbolicFRU": "usb_pgood" },
1072                                    { "Priority": "medium", "LocCode": "P0" }
1073                                ]
1074                            }
1075                        ]
1076                    },
1077                    {
1078                        "ADValue": "5.0V_DASD", "Callouts": [
1079                            {
1080                                "CalloutList": [
1081                                    { "Priority": "medium", "LocCode": "P1" },
1082                                    { "Priority": "medium", "LocCode": "P2" },
1083                                    { "Priority": "medium", "LocCode": "P3" },
1084                                    { "Priority": "low", "LocCode": "P0" }
1085                                ]
1086                            }
1087                        ]
1088                    },
1089                    {
1090                        "ADValue": "3.3VA", "Callouts": [
1091                            {
1092                                "CalloutList": [
1093                                    { "Priority": "high", "LocCode": "P0" }
1094                                ]
1095                            }
1096                        ]
1097                    },
1098                    {
1099                        "ADValue": "3.3VB", "Callouts": [
1100                            {
1101                                "CalloutList": [
1102                                    { "Priority": "high", "LocCode": "P0" }
1103                                ]
1104                            }
1105                        ]
1106                    },
1107                    {
1108                        "ADValue": "1.5V", "Callouts": [
1109                            {
1110                                "CalloutList": [
1111                                    { "Priority": "high", "LocCode": "P0" }
1112                                ]
1113                            }
1114                        ]
1115                    },
1116                    {
1117                        "ADValue": "1.1V", "Callouts": [
1118                            {
1119                                "CalloutList": [
1120                                    { "Priority": "high", "LocCode": "P0" }
1121                                ]
1122                            }
1123                        ]
1124                    },
1125                    {
1126                        "ADValue": "VDDA_DCM0", "Callouts": [
1127                            {
1128                                "CalloutList": [
1129                                    { "Priority": "high", "LocCode": "P0-C14" },
1130                                    { "Priority": "medium", "LocCode": "P0-C15" },
1131                                    { "Priority": "low", "LocCode": "P0" }
1132                                ]
1133                            }
1134                        ]
1135                    },
1136                    {
1137                        "ADValue": "VDDB_DCM0", "Callouts": [
1138                            {
1139                                "CalloutList": [
1140                                    { "Priority": "high", "LocCode": "P0-C14" },
1141                                    { "Priority": "medium", "LocCode": "P0-C15" },
1142                                    { "Priority": "low", "LocCode": "P0" }
1143                                ]
1144                            }
1145                        ]
1146                    },
1147                    {
1148                        "ADValue": "VDDA_DCM1", "Callouts": [
1149                            {
1150                                "CalloutList": [
1151                                    { "Priority": "high", "LocCode": "P0-C23" },
1152                                    { "Priority": "medium", "LocCode": "P0-C24" },
1153                                    { "Priority": "low", "LocCode": "P0" }
1154                                ]
1155                            }
1156                        ]
1157                    },
1158                    {
1159                        "ADValue": "VDDB_DCM1", "Callouts": [
1160                            {
1161                                "CalloutList": [
1162                                    { "Priority": "high", "LocCode": "P0-C23" },
1163                                    { "Priority": "medium", "LocCode": "P0-C24" },
1164                                    { "Priority": "low", "LocCode": "P0" }
1165                                ]
1166                            }
1167                        ]
1168                    },
1169                    {
1170                        "ADValue": "12.0VCS", "Callouts": [
1171                            {
1172                                "CalloutList": [
1173                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
1174                                ]
1175                            }
1176                        ]
1177                    },
1178                    {
1179                        "ADValue": "3.3VCS", "Callouts": [
1180                            {
1181                                "CalloutList": [
1182                                    { "Priority": "high", "LocCode": "P0" }
1183                                ]
1184                            }
1185                        ]
1186                    },
1187                    {
1188                        "ADValue": "1.1V_Current", "Callouts": [
1189                            {
1190                                "CalloutList": [
1191                                    { "Priority": "high", "LocCode": "P0" }
1192                                ]
1193                            }
1194                        ]
1195                    },
1196                    {
1197                        "ADValue": "5.0V_USB_Current", "Callouts": [
1198                            {
1199                                "CalloutList": [
1200                                    { "Priority": "high", "SymbolicFRU": "usb_pgood" },
1201                                    { "Priority": "medium", "LocCode": "P0" }
1202                                ]
1203                            }
1204                        ]
1205                    },
1206                    {
1207                        "ADValue": "5.0V_DASD_Current", "Callouts": [
1208                            {
1209                                "CalloutList": [
1210                                    { "Priority": "medium", "LocCode": "P1" },
1211                                    { "Priority": "medium", "LocCode": "P2" },
1212                                    { "Priority": "medium", "LocCode": "P3" },
1213                                    { "Priority": "low", "LocCode": "P0" }
1214                                ]
1215                            }
1216                        ]
1217                    },
1218                    {
1219                        "ADValue": "12.0VN", "Callouts": [
1220                            {
1221                                "CalloutList": [
1222                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
1223                                ]
1224                            }
1225                        ]
1226                    },
1227                    {
1228                        "ADValue": "12.0VP", "Callouts": [
1229                            {
1230                                "CalloutList": [
1231                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
1232                                ]
1233                            }
1234                        ]
1235                    },
1236                    {
1237                        "ADValue": "12.0VQ", "Callouts": [
1238                            {
1239                                "CalloutList": [
1240                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
1241                                ]
1242                            }
1243                        ]
1244                    },
1245                    {
1246                        "ADValue": "12.0VR", "Callouts": [
1247                            {
1248                                "CalloutList": [
1249                                    { "Priority": "high", "SymbolicFRU": "pgood_part" }
1250                                ]
1251                            }
1252                        ]
1253                    },
1254                    {
1255                        "ADValue": "ThermalDiode1", "Callouts": [
1256                            {
1257                                "CalloutList": [
1258                                    { "Priority": "high", "LocCode": "P0" }
1259                                ]
1260                            }
1261                        ]
1262                    },
1263                    {
1264                        "ADValue": "ThermalDiode2", "Callouts": [
1265                            {
1266                                "CalloutList": [
1267                                    { "Priority": "high", "LocCode": "P0" }
1268                                ]
1269                            }
1270                        ]
1271                    },
1272                    {
1273                        "ADValue": "ThermalDiode3", "Callouts": [
1274                            {
1275                                "CalloutList": [
1276                                    { "Priority": "high", "LocCode": "P0" }
1277                                ]
1278                            }
1279                        ]
1280                    },
1281                    {
1282                        "ADValue": "ThermalDiode4", "Callouts": [
1283                            {
1284                                "CalloutList": [
1285                                    { "Priority": "high", "LocCode": "P0" }
1286                                ]
1287                            }
1288                        ]
1289                    }
1290                ]
1291            },
1292
1293            "Documentation": {
1294                "Description": "The power sequencer chip detected a voltage fault",
1295                "Message": "The power sequencer chip detected a voltage fault",
1296                "Notes": [
1297                ]
1298            }
1299        },
1300
1301        {
1302            "Name": "xyz.openbmc_project.Power.Regulators.Error.WriteVerification",
1303            "Subsystem": "power",
1304            "ComponentID": "0x2700",
1305
1306            "SRC": {
1307                "Type": "11",
1308                "ReasonCode": "0x2900",
1309                "Words6To9": {}
1310            },
1311
1312            "Documentation": {
1313                "Description": "A write verification error occurred on a device",
1314                "Message": "A write verification error occurred on a device",
1315                "Notes": [
1316                    "This error occurs when a device register is written, ",
1317                    "read back, and the two values do not match.  This is ",
1318                    "also called a read-back error.  The device should be ",
1319                    "identified using the CALLOUT_DEVICE_PATH or ",
1320                    "CALLOUT_IIC_BUS/CALLOUT_IIC_ADDR keywords in the ",
1321                    "AdditionalData property of the event log.  This will ",
1322                    "cause the device and the hardware in the communication ",
1323                    "path to be called out."
1324                ]
1325            }
1326        },
1327
1328        {
1329            "Name": "xyz.openbmc_project.Power.Regulators.Error.ConfigFile",
1330            "Subsystem": "power",
1331            "ComponentID": "0x2700",
1332
1333            "SRC": {
1334                "Type": "11",
1335                "ReasonCode": "0xA013",
1336                "Words6To9": {}
1337            },
1338
1339            "Callouts": [
1340                {
1341                    "CalloutList": [
1342                        { "Priority": "high", "Procedure": "bmc_code" }
1343                    ]
1344                }
1345            ],
1346
1347            "Documentation": {
1348                "Description": "A regulators configuration file error occurred",
1349                "Message": "A regulators configuration file error occurred",
1350                "Notes": [
1351                    "The regulators configuration file could not be found, ",
1352                    "could not be read, or had invalid contents."
1353                ]
1354            }
1355        },
1356
1357        {
1358            "Name": "xyz.openbmc_project.Power.Regulators.Error.ConfigFile.Critical",
1359            "Subsystem": "power",
1360            "Severity": "critical_system_term",
1361            "ComponentID": "0x2700",
1362
1363            "SRC": {
1364                "Type": "11",
1365                "ReasonCode": "0xA014",
1366                "Words6To9": {},
1367                "PowerFault": true
1368            },
1369
1370            "Callouts": [
1371                {
1372                    "CalloutList": [
1373                        { "Priority": "high", "Procedure": "bmc_code" }
1374                    ]
1375                }
1376            ],
1377
1378            "Documentation": {
1379                "Description": "A critical regulators configuration file error occurred",
1380                "Message": "A critical regulators configuration file error occurred",
1381                "Notes": [
1382                    "The regulators configuration file could not be found, ",
1383                    "could not be read, or had invalid contents.  As a result ",
1384                    "voltage regulators could not be configured, and the ",
1385                    "chassis could not be powered on."
1386                ]
1387            }
1388        },
1389
1390        {
1391            "Name": "xyz.openbmc_project.Power.Error.PowerSequencerFault",
1392            "Subsystem": "power_sequencer",
1393            "ComponentID": "0x2700",
1394
1395            "SRC": {
1396                "Type": "11",
1397                "ReasonCode": "0xD000",
1398                "Words6To9": {}
1399            },
1400
1401            "Callouts": [
1402                {
1403                    "CalloutList": [
1404                        { "Priority": "high", "LocCode": "P0" }
1405                    ]
1406                }
1407            ],
1408
1409            "Documentation": {
1410                "Description": "The power sequencer chip detected a fault",
1411                "Message": "The power sequencer chip detected a fault",
1412                "Notes": [
1413                ]
1414            }
1415        },
1416
1417        {
1418            "Name": "xyz.openbmc_project.Power.Error.PowerOnFailure",
1419            "Subsystem": "power_sequencer",
1420            "ComponentID": "0x2700",
1421
1422            "SRC": {
1423                "Type": "11",
1424                "ReasonCode": "0xD002",
1425                "Words6To9": {}
1426            },
1427
1428            "Callouts": [
1429                {
1430                    "CalloutList": [
1431                        { "Priority": "high", "LocCode": "P0" }
1432                    ]
1433                }
1434            ],
1435
1436            "Documentation": {
1437                "Description": "System power failed to turn on",
1438                "Message": "System power failed to turn on",
1439                "Notes": [
1440                ]
1441            }
1442        },
1443
1444        {
1445            "Name": "xyz.openbmc_project.Power.Error.Internal",
1446            "Subsystem": "power",
1447            "ComponentID": "0x2700",
1448
1449            "SRC": {
1450                "Type": "11",
1451                "ReasonCode": "0xE000",
1452                "Words6To9": {}
1453            },
1454
1455            "Callouts": [
1456                {
1457                    "CalloutList": [
1458                        { "Priority": "high", "Procedure": "bmc_code" }
1459                    ]
1460                }
1461            ],
1462
1463            "Documentation": {
1464                "Description": "An internal firmware error occurred",
1465                "Message": "An internal firmware error occurred",
1466                "Notes": [
1467                    "The error details must be provided in the AdditionalData ",
1468                    "property of the event log."
1469                ]
1470            }
1471        },
1472
1473        {
1474            "Name": "xyz.openbmc_project.Power.Error.I2C",
1475            "Subsystem": "cec_i2c",
1476            "ComponentID": "0x2700",
1477
1478            "SRC": {
1479                "Type": "11",
1480                "ReasonCode": "0xE100",
1481                "Words6To9": {}
1482            },
1483
1484            "Documentation": {
1485                "Description": "An I2C error occurred communicating with a device",
1486                "Message": "An I2C error occurred communicating with a device",
1487                "Notes": [
1488                    "The device should be identified using the ",
1489                    "CALLOUT_DEVICE_PATH or CALLOUT_IIC_BUS/CALLOUT_IIC_ADDR ",
1490                    "keywords in the AdditionalData property of the event ",
1491                    "log.  This will cause the device and the hardware in the ",
1492                    "communication path to be called out."
1493                ]
1494            }
1495        },
1496
1497        {
1498            "Name": "xyz.openbmc_project.Power.Error.PMBus",
1499            "Subsystem": "power",
1500            "ComponentID": "0x2700",
1501
1502            "SRC": {
1503                "Type": "11",
1504                "ReasonCode": "0xE200",
1505                "Words6To9": {}
1506            },
1507
1508            "Documentation": {
1509                "Description": "A PMBus error occurred on a device",
1510                "Message": "A PMBus error occurred on a device",
1511                "Notes": [
1512                    "This error occurs when the I2C communication was ",
1513                    "successful, but the PMBus value read is invalid or ",
1514                    "unsupported.  CALLOUT_INVENTORY_PATH should be specified ",
1515                    "in the AdditionalData property of the event log so that ",
1516                    "the device is called out but not the communication path."
1517                ]
1518            }
1519        },
1520
1521        {
1522            "Name": "xyz.openbmc_project.Power.Error.DBus",
1523            "Subsystem": "power",
1524            "ComponentID": "0x2700",
1525
1526            "SRC": {
1527                "Type": "11",
1528                "ReasonCode": "0xE300",
1529                "Words6To9": {}
1530            },
1531
1532            "Callouts": [
1533                {
1534                    "CalloutList": [
1535                        { "Priority": "high", "Procedure": "bmc_code" }
1536                    ]
1537                }
1538            ],
1539
1540            "Documentation": {
1541                "Description": "A firmware inter-process communication (D-Bus) error occurred",
1542                "Message": "A firmware inter-process communication (D-Bus) error occurred"
1543            }
1544        },
1545
1546        {
1547            "Name": "xyz.openbmc_project.Fan.Error.Fault",
1548            "Subsystem": "power_fans",
1549            "ComponentID": "0x2800",
1550
1551            "SRC": {
1552                "Type": "11",
1553                "ReasonCode": "0x76F0",
1554                "Words6To9": {}
1555            },
1556
1557            "Documentation": {
1558                "Description": "Fan rotor fault",
1559                "Message": "Fan rotor fault",
1560                "Notes": [
1561                    "This error occurs when a fan rotor has been faulted for a ",
1562                    "certain amount of time.  The callout is the fan which is ",
1563                    "passed in with CALLOUT_INVENTORY_PATH.  The severity is ",
1564                    "passed in during creation and will be either informational ",
1565                    "or unrecoverable.  The action flags use the defaults and ",
1566                    "vary based on the severity."
1567                ]
1568            }
1569        },
1570
1571        {
1572            "Name": "xyz.openbmc_project.Fan.Error.Missing",
1573            "Subsystem": "power_fans",
1574            "ComponentID": "0x2800",
1575            "Severity": "unrecoverable_redundancy_loss",
1576            "ActionFlags": ["service_action", "report", "call_home"],
1577
1578            "SRC": {
1579                "Type": "11",
1580                "ReasonCode": "0x76F1",
1581                "Words6To9": {}
1582            },
1583
1584            "Callouts": [
1585                {
1586                    "CalloutList": [
1587                        {
1588                          "Priority": "high",
1589                          "SymbolicFRUTrusted": "air_mover",
1590                          "UseInventoryLocCode": true
1591                        },
1592                        {
1593                            "Priority": "low",
1594                            "LocCode": "P0"
1595                        }
1596                    ]
1597                }
1598            ],
1599
1600            "Documentation": {
1601                "Description": "A fan is missing",
1602                "Message": "A fan is missing",
1603                "Notes": [
1604                    "This error occurs when a fan has been missing for a ",
1605                    "certain amount of time.  The first callout is the ",
1606                    "symbolic FRU AIR_MOVR that has the trusted fan location ",
1607                    "code, which it gets using the passed in ",
1608                    "CALLOUT_INVENTORY_PATH.  The second callout is the FRU ",
1609                    "where the controller is."
1610                ]
1611            }
1612        },
1613
1614        {
1615            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.TemperaturePerfLossHigh",
1616            "Subsystem": "power",
1617            "ComponentID": "0x2800",
1618            "Severity": "predictive",
1619            "ActionFlags": ["service_action", "report"],
1620
1621            "SRC": {
1622                "ReasonCode": "0x2801",
1623                "Words6To9": {}
1624            },
1625
1626            "CalloutsUsingAD": {
1627                "ADName": "SENSOR_NAME",
1628                "CalloutsWithTheirADValues": [
1629                    {
1630                        "ADValue": "/xyz/openbmc_project/sensors/temperature/Ambient_Virtual_Temp",
1631                        "Callouts": [
1632                            {
1633                                "CalloutList": [
1634                                    { "Priority": "high", "SymbolicFRU": "ambient_temp" }
1635                                ]
1636                            }
1637                        ]
1638                    }
1639                ]
1640            },
1641
1642            "Documentation": {
1643                "Description": "A temperature sensor exceeded its performance loss threshold.",
1644                "Message": "A temperature sensor exceeded its performance loss threshold.",
1645                "Notes": [
1646                    "A temperature sensor crossed its performance loss threshold value",
1647                    "If it is the ambient sensor, then a symbolic FRU will be added.",
1648                    "Otherwise, CALLOUT_INVENTORY_PATH will be passed in to add",
1649                    "a FRU callout."
1650                ]
1651            }
1652        },
1653
1654        {
1655            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.TemperaturePerfLossHighClear",
1656            "Subsystem": "power",
1657            "ComponentID": "0x2800",
1658            "Severity": "non_error",
1659            "ActionFlags": ["report"],
1660            "EventType": "env_normal",
1661
1662            "SRC": {
1663                "ReasonCode": "0x2802",
1664                "Words6To9": {}
1665            },
1666
1667            "CalloutsUsingAD": {
1668                "ADName": "SENSOR_NAME",
1669                "CalloutsWithTheirADValues": [
1670                    {
1671                        "ADValue": "/xyz/openbmc_project/sensors/temperature/Ambient_Virtual_Temp",
1672                        "Callouts": [
1673                            {
1674                                "CalloutList": [
1675                                    { "Priority": "high", "SymbolicFRU": "ambient_temp_back" }
1676                                ]
1677                            }
1678                        ]
1679                    }
1680                ]
1681            },
1682
1683            "Documentation": {
1684                "Description": "A temperature sensor is under its performance loss threshold.",
1685                "Message": "A temperature sensor is under its performance loss threshold.",
1686                "Notes": [
1687                    "A temperature sensor crossed under its performance loss threshold value",
1688                    "If it is the ambient sensor, then a symbolic FRU will be added."
1689                ]
1690            }
1691        },
1692
1693        {
1694            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.TemperatureWarningHigh",
1695            "Subsystem": "power",
1696            "ComponentID": "0x2800",
1697            "Severity": "predictive",
1698            "ActionFlags": ["service_action", "report"],
1699
1700            "SRC": {
1701                "ReasonCode": "0x2803",
1702                "Words6To9": {}
1703            },
1704
1705            "CalloutsUsingAD": {
1706                "ADName": "SENSOR_NAME",
1707                "CalloutsWithTheirADValues": [
1708                    {
1709                        "ADValue": "/xyz/openbmc_project/sensors/temperature/Ambient_Virtual_Temp",
1710                        "Callouts": [
1711                            {
1712                                "CalloutList": [
1713                                    { "Priority": "high", "SymbolicFRU": "ambient_temp" }
1714                                ]
1715                            }
1716                        ]
1717                    }
1718                ]
1719            },
1720
1721            "Documentation": {
1722                "Description": "A temperature sensor exceeded its warning threshold.",
1723                "Message": "A temperature sensor exceeded its warning threshold.",
1724                "Notes": [
1725                    "A temperature sensor crossed its warning threshold value",
1726                    "If it is the ambient sensor, then a symbolic FRU will be added.",
1727                    "Otherwise, CALLOUT_INVENTORY_PATH will be passed in to add",
1728                    "a FRU callout."
1729                ]
1730            }
1731        },
1732
1733        {
1734            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.TemperatureWarningHighClear",
1735            "Subsystem": "power",
1736            "ComponentID": "0x2800",
1737            "Severity": "non_error",
1738            "ActionFlags": ["report"],
1739            "EventType": "env_normal",
1740
1741            "SRC": {
1742                "ReasonCode": "0x2804",
1743                "Words6To9": {}
1744            },
1745
1746            "CalloutsUsingAD": {
1747                "ADName": "SENSOR_NAME",
1748                "CalloutsWithTheirADValues": [
1749                    {
1750                        "ADValue": "/xyz/openbmc_project/sensors/temperature/Ambient_Virtual_Temp",
1751                        "Callouts": [
1752                            {
1753                                "CalloutList": [
1754                                    { "Priority": "high", "SymbolicFRU": "ambient_temp_back" }
1755                                ]
1756                            }
1757                        ]
1758                    }
1759                ]
1760            },
1761
1762            "Documentation": {
1763                "Description": "A temperature sensor is under its warning threshold.",
1764                "Message": "A temperature sensor is under its warning threshold.",
1765                "Notes": [
1766                    "A temperature sensor crossed under its warning threshold value",
1767                    "If it is the ambient sensor, then a symbolic FRU will be added."
1768                ]
1769            }
1770        },
1771
1772        {
1773            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.TemperatureCriticalHigh",
1774            "Subsystem": "power",
1775            "ComponentID": "0x2800",
1776            "Severity": "predictive",
1777            "ActionFlags": ["service_action", "report"],
1778
1779            "SRC": {
1780                "ReasonCode": "0x2805",
1781                "Words6To9": {}
1782            },
1783
1784            "CalloutsUsingAD": {
1785                "ADName": "SENSOR_NAME",
1786                "CalloutsWithTheirADValues": [
1787                    {
1788                        "ADValue": "/xyz/openbmc_project/sensors/temperature/Ambient_Virtual_Temp",
1789                        "Callouts": [
1790                            {
1791                                "CalloutList": [
1792                                    { "Priority": "high", "SymbolicFRU": "ambient_temp" }
1793                                ]
1794                            }
1795                        ]
1796                    }
1797                ]
1798            },
1799
1800            "Documentation": {
1801                "Description": "A temperature sensor exceeded its critical threshold.",
1802                "Message": "A temperature sensor exceeded its critical threshold.",
1803                "Notes": [
1804                    "A temperature sensor crossed its critical threshold value",
1805                    "If it is the ambient sensor, then a symbolic FRU will be added.",
1806                    "Otherwise, CALLOUT_INVENTORY_PATH will be passed in to add",
1807                    "a FRU callout."
1808                ]
1809            }
1810        },
1811
1812        {
1813            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.TemperatureCriticalHighClear",
1814            "Subsystem": "power",
1815            "ComponentID": "0x2800",
1816            "Severity": "non_error",
1817            "ActionFlags": ["report"],
1818            "EventType": "env_normal",
1819
1820            "SRC": {
1821                "ReasonCode": "0x2806",
1822                "Words6To9": {}
1823            },
1824
1825            "CalloutsUsingAD": {
1826                "ADName": "SENSOR_NAME",
1827                "CalloutsWithTheirADValues": [
1828                    {
1829                        "ADValue": "/xyz/openbmc_project/sensors/temperature/Ambient_Virtual_Temp",
1830                        "Callouts": [
1831                            {
1832                                "CalloutList": [
1833                                    { "Priority": "high", "SymbolicFRU": "ambient_temp_back" }
1834                                ]
1835                            }
1836                        ]
1837                    }
1838                ]
1839            },
1840
1841            "Documentation": {
1842                "Description": "A temperature sensor is under its critical threshold.",
1843                "Message": "A temperature sensor is under its critical threshold.",
1844                "Notes": [
1845                    "A temperature sensor crossed under its critical threshold value",
1846                    "If it is the ambient sensor, then a symbolic FRU will be added."
1847                ]
1848            }
1849        },
1850
1851        {
1852            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.SoftShutdownAlarmHigh",
1853            "Subsystem": "power",
1854            "ComponentID": "0x2800",
1855            "Severity": "predictive",
1856            "ActionFlags": ["service_action", "report"],
1857
1858            "SRC": {
1859                "ReasonCode": "0x2807",
1860                "Words6To9": {}
1861            },
1862
1863            "Callouts": [
1864                {
1865                    "CalloutList": [
1866                        {
1867                          "Priority": "high",
1868                          "SymbolicFRU": "ambient_temp"
1869                        }
1870                    ]
1871                }
1872            ],
1873
1874            "Documentation": {
1875                "Description": "The ambient temperature passed the EPOW3 limit.",
1876                "Message": "The ambient temperature passed the EPOW3 limit. The system will shut down if temp doesn't decrease.",
1877                "Notes": [
1878                    "This error occurs when the ambient temperature surpassed",
1879                    "the EPOW3 shutdown limit."
1880                ]
1881            }
1882        },
1883
1884        {
1885            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.SoftShutdownAlarmHighClear",
1886            "Subsystem": "power",
1887            "ComponentID": "0x2800",
1888            "Severity": "non_error",
1889            "ActionFlags": ["report"],
1890            "EventType": "env_normal",
1891
1892            "SRC": {
1893                "ReasonCode": "0x2808",
1894                "Words6To9": {}
1895            },
1896
1897            "Callouts": [
1898                {
1899                    "CalloutList": [
1900                        {
1901                          "Priority": "high",
1902                          "SymbolicFRU": "ambient_temp_back"
1903                        }
1904                    ]
1905                }
1906            ],
1907
1908            "Documentation": {
1909                "Description": "The ambient temperature is back under the EPOW3 limit.",
1910                "Message": "The ambient temperature is back under the EPOW3 limit."
1911            }
1912        },
1913
1914        {
1915            "Name": "xyz.openbmc_project.Sensor.Threshold.Error.HardShutdownAlarmHigh",
1916            "Subsystem": "power",
1917            "ComponentID": "0x2800",
1918            "Severity": "unrecoverable",
1919            "ActionFlags": ["service_action", "report"],
1920
1921            "SRC": {
1922                "ReasonCode": "0x2809",
1923                "Words6To9": {}
1924            },
1925
1926            "Callouts": [
1927                {
1928                    "CalloutList": [
1929                        {
1930                          "Priority": "high",
1931                          "SymbolicFRU": "ambient_temp"
1932                        }
1933                    ]
1934                }
1935            ],
1936
1937            "Documentation": {
1938                "Description": "The ambient temperature passed the EPOW4 limit.",
1939                "Message": "The ambient temperature passed the EPOW4 limit. The system will shut down",
1940                "Notes": [
1941                    "This error occurs when the ambient temperature surpassed",
1942                    "the EPOW4 shutdown limit."
1943                ]
1944            }
1945        },
1946
1947        {
1948            "Name": "com.ibm.VPD.Error.InvalidEepromPath",
1949            "Subsystem": "cec_vpd",
1950            "ComponentID": "0x4000",
1951
1952            "SRC": {
1953                "ReasonCode": "0x4000",
1954                "Words6To9":
1955                {
1956                    "6":
1957                    {
1958                        "Description": "Errno of the failure.",
1959                        "AdditionalDataPropSource": "CALLOUT_ERRNO"
1960                    }
1961                }
1962            },
1963
1964            "Documentation": {
1965                "Description": "A path access error ocurred",
1966                "Message": "An EEPROM path access error occurred.",
1967                "Notes": [
1968                    "This error occurs when parser is unable to access",
1969                    "EEPROM path. Errno and device path are captured as",
1970                    "additional data."
1971                ]
1972            }
1973        },
1974
1975        {
1976            "Name": "com.ibm.VPD.Error.InvalidVPD",
1977            "Subsystem": "cec_vpd",
1978            "ComponentID": "0x4000",
1979
1980            "SRC": {
1981                "ReasonCode": "0x4001",
1982                "Words6To9":
1983                {
1984                }
1985            },
1986
1987            "Documentation": {
1988                "Description": "Invalid VPD data.",
1989                "Message": "A VPD data exception occurred.",
1990                "Notes": [
1991                    "This error occurs when VPD data is found to be",
1992                    "invalid. This can be when VPD file is missing out",
1993                    "mandatory records.Inventory path is captured in",
1994                    "additional data."
1995                ]
1996            }
1997        },
1998
1999        {
2000            "Name": "com.ibm.VPD.Error.EccCheckFailed",
2001            "Subsystem": "cec_vpd",
2002            "ComponentID": "0x4000",
2003
2004            "SRC": {
2005                "ReasonCode": "0x4002",
2006                "Words6To9":
2007                {
2008                }
2009            },
2010
2011            "Documentation": {
2012                "Description": "Invalid VPD ecc data.",
2013                "Message": "A VPD ecc exception occurred.",
2014                "Notes": [
2015                    "This error occurs when VPD ecc check fails for the FRU.",
2016                    "Inventory path for the failed FRU is captured in additonal",
2017                    "data."
2018                ]
2019            }
2020        },
2021
2022        {
2023            "Name": "com.ibm.VPD.Error.InvalidJson",
2024            "Subsystem": "cec_vpd",
2025            "ComponentID": "0x4000",
2026
2027            "SRC": {
2028                "ReasonCode": "0x4003",
2029                "Words6To9":
2030                {
2031                }
2032            },
2033
2034            "Documentation": {
2035                "Description": "Invalid Json",
2036                "Message": "A Json failure occurred.",
2037                "Notes": [
2038                    "This error occurs when parser fails to access",
2039                    "Json file or there is any issue with Json data.",
2040                    "Failed Json path and cause of failure is captured",
2041                    "in additional data."
2042                ]
2043            }
2044        },
2045
2046        {
2047            "Name": "com.ibm.VPD.Error.BlankSystemVPD",
2048            "Subsystem": "cec_vpd",
2049            "ComponentID": "0x4000",
2050
2051            "SRC": {
2052                "ReasonCode": "0x4004",
2053                "Words6To9":
2054                {
2055                }
2056            },
2057
2058            "Documentation": {
2059                "Description": "System VPD restore failed",
2060                "Message": "A system VPD restoration error occurred.",
2061                "Notes": [
2062                    "This error occurs when restoring of system VPD fails.",
2063                    "The FRU path and reason for failure is captured in",
2064                    "additional data."
2065                ]
2066            }
2067        },
2068
2069        {
2070            "Name": "com.ibm.VPD.Error.DbusFailure",
2071            "Subsystem": "cec_vpd",
2072            "ComponentID": "0x4000",
2073
2074            "SRC": {
2075                "ReasonCode": "0x4005",
2076                "Words6To9":
2077                {
2078                }
2079            },
2080
2081            "Documentation": {
2082                "Description": "Dbus exception",
2083                "Message": "A Dbus internal error occurred.",
2084                "Notes": [
2085                    "This error occurs when Dbus operation fails.",
2086                    "Exceptions details are captured in additonal",
2087                    "data."
2088                ]
2089            }
2090        }
2091    ]
2092}
2093