1description: >
2    Implement to fetch the PDRs. PDRs are Platform Descriptor
3    Records which are the collection of information that includes semantic
4    and association 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 to
39                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 with
49                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 version
61                1.2.0 are returned. Each of the PDRs returned has the common header
62                along with all the other fields in table 89 and 90 of
63                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,
71          entity ID and state set id. If multiple PLDM entity instances
72          (in state sensor PDRs) match the EntityId and StateSetId below,
73          all the corresponding state sensor PDRs are returned. More than one PDR
74          can be returned for the same state set id.
75
76          When the PDR for the given input TID, entity id
77          and state set id is not found, then the
78          xyz.openbmc_project.Common.Error.ResourceNotFound 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 to a PLDM state set.
90                More information is found at
91                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf section 7.
92
93          - name: StateSetId
94            type: uint16
95            description: >
96                A numeric value that identifies the PLDM State Set that is used with this sensor.
97                More information is found at
98                http://dmtf.org/sites/default/files/standards/documents/DSP0249_1.0.0.pdf section 6.
99
100      returns:
101          - name: StateSensorPDR
102            type: array[array[byte]]
103            description: >
104                Array of State Sensor PDRs, where a PDR is an array[byte]. Multiple PDRs of the
105                format present in table 80 of DSP0248 version 1.2.0 are returned. Each of the PDRs
106                returned has the common header along with all the other fields in table 80 and 81 of
107                DSP0248 of version 1.2.0 .
108
109      errors:
110          - xyz.openbmc_project.Common.Error.ResourceNotFound
111