Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 1 | description: > |
Patrick Williams | a134741 | 2022-12-06 10:56:22 -0600 | [diff] [blame] | 2 | Implement to provide an IPMI System Event Log (SEL) logging interface under |
| 3 | the path /xyz/openbmc_project/Logging/IPMI. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 4 | |
Patrick Williams | a134741 | 2022-12-06 10:56:22 -0600 | [diff] [blame] | 5 | SEL records store system event information and will contain a record ID and |
| 6 | type followed by type-specific information. The type-specific information |
| 7 | includes a timestamp, generator ID (used to identify the component that is |
| 8 | adding the SEL record), sensor number, event direction and event-specific |
| 9 | data for system type events; or timestamp and OEM data for OEM type events. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 10 | |
| 11 | The interface allows adding system or OEM type events. For system type |
Patrick Williams | a134741 | 2022-12-06 10:56:22 -0600 | [diff] [blame] | 12 | events it requires a generator ID (0x20 for BMC), sensor D-Bus path, event |
| 13 | direction (assertion or de-assertion), and event specific data. For OEM type |
| 14 | events, it requires the record type and OEM data. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 15 | |
| 16 | It will assign a record ID and timestamp automatically and return the |
| 17 | assigned record ID. |
| 18 | methods: |
| 19 | - name: IpmiSelAdd |
| 20 | description: > |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 21 | Log a system event record type SEL entry. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 22 | parameters: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 23 | - name: Message |
| 24 | type: string |
| 25 | description: > |
| 26 | The text to log for the event. |
| 27 | - name: Path |
Patrick Williams | b78a070 | 2022-10-24 12:32:56 -0500 | [diff] [blame] | 28 | type: object_path |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 29 | description: > |
| 30 | The object path that is generating the SEL entry. |
| 31 | - name: SELData |
| 32 | type: array[byte] |
| 33 | description: > |
| 34 | An array of up to 3 bytes of SEL event data. |
| 35 | - name: Assert |
| 36 | type: boolean |
| 37 | description: > |
| 38 | An indicator if the SEL event is asserting or de-asserting. |
| 39 | - name: GeneratorID |
| 40 | type: uint16 |
| 41 | description: > |
| 42 | The Generator ID of the component requesting the new SEL entry. |
| 43 | In most cases this will be 0x20 (the BMC Generator ID). |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 44 | returns: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 45 | - name: RecordID |
| 46 | type: uint16 |
| 47 | description: > |
| 48 | The Record ID of the new SEL entry. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 49 | errors: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 50 | - xyz.openbmc_project.Common.Error.InternalFailure |
| 51 | - xyz.openbmc_project.Common.Error.InvalidArgument |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 52 | |
Andrei Kartashev | 964c4c7 | 2021-08-11 11:52:54 +0300 | [diff] [blame] | 53 | - name: AddExtended |
| 54 | description: > |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 55 | Log a system event record SEL entry with custom SensorType/EventType. |
Andrei Kartashev | 964c4c7 | 2021-08-11 11:52:54 +0300 | [diff] [blame] | 56 | parameters: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 57 | - name: Message |
| 58 | type: string |
| 59 | description: > |
| 60 | The text to log for the event. |
| 61 | - name: Path |
Patrick Williams | b78a070 | 2022-10-24 12:32:56 -0500 | [diff] [blame] | 62 | type: object_path |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 63 | description: > |
| 64 | The object path that is generating the SEL entry. |
| 65 | - name: SELData |
| 66 | type: array[byte] |
| 67 | description: > |
| 68 | An array of up to 3 bytes of SEL event data. |
| 69 | - name: GeneratorID |
| 70 | type: uint16 |
| 71 | description: > |
| 72 | The Generator ID of the component requesting the new SEL entry. |
| 73 | In most cases this will be 0x20 (the BMC Generator ID). |
| 74 | - name: eventType |
| 75 | type: byte |
| 76 | description: > |
| 77 | Type of trigger for the event and event direction. |
| 78 | - name: sensorType |
| 79 | type: byte |
| 80 | description: > |
| 81 | Sensor Type Code for sensor that generated the event. |
| 82 | - name: sensorNum |
| 83 | type: byte |
| 84 | description: > |
| 85 | Number of sensor that generated the event. |
Andrei Kartashev | 964c4c7 | 2021-08-11 11:52:54 +0300 | [diff] [blame] | 86 | returns: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 87 | - name: RecordID |
| 88 | type: uint16 |
| 89 | description: > |
| 90 | The Record ID of the new SEL entry. |
Andrei Kartashev | 964c4c7 | 2021-08-11 11:52:54 +0300 | [diff] [blame] | 91 | errors: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 92 | - xyz.openbmc_project.Common.Error.InternalFailure |
| 93 | - xyz.openbmc_project.Common.Error.InvalidArgument |
Andrei Kartashev | 964c4c7 | 2021-08-11 11:52:54 +0300 | [diff] [blame] | 94 | |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 95 | - name: IpmiSelAddOem |
| 96 | description: > |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 97 | Log an OEM record type SEL entry requested from external to the BMC. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 98 | parameters: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 99 | - name: Message |
| 100 | type: string |
| 101 | description: > |
| 102 | The text to log for the event. |
| 103 | - name: SELData |
| 104 | type: array[byte] |
| 105 | description: > |
| 106 | An array of up to 13 bytes of SEL event data. |
| 107 | - name: RecordType |
| 108 | type: byte |
| 109 | description: > |
| 110 | The OEM record type for the SEL entry. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 111 | returns: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 112 | - name: RecordID |
| 113 | type: uint16 |
| 114 | description: > |
| 115 | The Record ID of the new SEL entry. |
Jason M. Bills | e79a288 | 2018-09-04 15:50:47 -0700 | [diff] [blame] | 116 | errors: |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 117 | - xyz.openbmc_project.Common.Error.InternalFailure |
| 118 | - xyz.openbmc_project.Common.Error.InvalidArgument |
Charles Boyer | ce8e389 | 2021-07-29 16:13:11 -0500 | [diff] [blame] | 119 | |
| 120 | - name: Clear |
| 121 | description: > |
Patrick Williams | 8da396c | 2022-03-14 14:21:02 -0500 | [diff] [blame] | 122 | Clear the SEL entries from their storage location. |