1description: >
2    Implement to fetch the PDRs. PDRs are Platform Descriptor Records which are
3    the collection of information that includes semantic and association
4    information.
5
6    This API would be used by PLDM Requester apps on the BMC.
7
8    An implementation of this interface should maintain the primary PDR
9    repository on the BMC.
10
11    A OpenBMC implementation should implement the xyz.openbmc_project.PLDM.PDR
12    interface on the path /xyz/openbmc_project/pldm.
13
14    More information about PDR can be found at DSP0248 version 1.2.0 section 25.
15
16methods:
17    - name: FindStateEffecterPDR
18      description: >
19          Obtain the state effecter PDR, for the input TID, entity ID and state
20          set id. If multiple PLDM entity instances(in state effecter PDRs)
21          match the EntityId and StateSetId below,all the corresponding state
22          effecter PDRs are returned. More than one PDR can be returned for the
23          same state set id.
24
25          When the PDR for the given input TID, entity id and state set id is
26          not found, then the xyz.openbmc_project.Common.Error.ResourceNotFound
27          exception will be thrown.
28
29      parameters:
30          - name: TID
31            type: byte
32            description: >
33                A terminus id.
34
35          - name: EntityID
36            type: uint16
37            description: >
38                A numeric value that represents an entity that can be associated
39                to a PLDM state set.
40
41                More information is found at
42                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf
43                section 7.
44
45          - name: StateSetId
46            type: uint16
47            description: >
48                A numeric value that identifies the PLDM State Set that is used
49                with this sensor.
50
51                More information is found at
52                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf
53                section 6.
54
55      returns:
56          - name: StateEffecterPDR
57            type: array[array[byte]]
58            description: >
59                Array of State Effecter PDRs, where a PDR is an array[byte].
60                Multiple PDRs of the format present in table 89 of DSP0248
61                version 1.2.0 are returned. Each of the PDRs returned has the
62                common header along with all the other fields in table 89 and 90
63                of DSP0248 of version 1.2.0 .
64
65      errors:
66          - xyz.openbmc_project.Common.Error.ResourceNotFound
67
68    - name: FindStateSensorPDR
69      description: >
70          Obtain the state sensor PDR, for the input TID, entity ID and state
71          set id. If multiple PLDM entity instances (in state sensor PDRs) match
72          the EntityId and StateSetId below, all the corresponding state sensor
73          PDRs are returned. More than one PDR can be returned for the same
74          state set id.
75
76          When the PDR for the given input TID, entity id and state set id is
77          not found, then the xyz.openbmc_project.Common.Error.ResourceNotFound
78          exception will be thrown.
79
80      parameters:
81          - name: TID
82            type: byte
83            description: >
84                A terminus id.
85
86          - name: EntityID
87            type: uint16
88            description: >
89                A numeric value that represents an entity that can be associated
90                to a PLDM state set. More information is found at
91                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf
92                section 7.
93
94          - name: StateSetId
95            type: uint16
96            description: >
97                A numeric value that identifies the PLDM State Set that is used
98                with this sensor. More information is found at
99                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf
100                section 6.
101
102      returns:
103          - name: StateSensorPDR
104            type: array[array[byte]]
105            description: >
106                Array of State Sensor PDRs, where a PDR is an array[byte].
107                Multiple PDRs of the format present in table 80 of DSP0248
108                version 1.2.0 are returned. Each of the PDRs returned has the
109                common header along with all the other fields in table 80 and 81
110                of DSP0248 of version 1.2.0 .
111
112      errors:
113          - xyz.openbmc_project.Common.Error.ResourceNotFound
114