blob: da0e799f1183604049596b0702b7f89763ed687d [file] [log] [blame]
SunnySrivastava198426ff1c82020-02-26 05:48:39 -06001description: >
2 Implement to manage VPD data in system.
3methods:
4 - name: WriteKeyword
5 description: >
6 A method to update the keyword value for a given VPD record.
7 parameters:
Patrick Williams8da396c2022-03-14 14:21:02 -05008 - name: path
Patrick Williamsb78a0702022-10-24 12:32:56 -05009 type: object_path
Patrick Williams8da396c2022-03-14 14:21:02 -050010 description: >
11 Path to the D-Bus object that represents the FRU.
12 - name: record
13 type: string
14 description: >
15 Record whose keyword value needs to be modified.
16 - name: keyword
17 type: string
18 description: >
19 Keyword whose value needs to be updated.
20 - name: value
21 type: array[byte]
22 description: >
23 Value to be updated for the keyword.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060024 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050025 - xyz.openbmc_project.Common.Error.InvalidArgument
26 - com.ibm.VPD.Error.PathNotFound
27 - com.ibm.VPD.Error.RecordNotFound
28 - com.ibm.VPD.Error.KeywordNotFound
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060029
30 - name: GetFRUsByUnexpandedLocationCode
31 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -060032 A method to get list of FRU D-BUS object paths for a given unexpanded
33 location code.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060034 parameters:
Patrick Williams8da396c2022-03-14 14:21:02 -050035 - name: locationCode
36 type: string
37 description: >
38 An un-expanded Location code.
39 - name: nodeNumber
40 type: uint16
41 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -060042 Denotes the node in case of a multi-node configuration, ignored
43 on a single node system.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060044 returns:
Patrick Williams8da396c2022-03-14 14:21:02 -050045 - name: inventoryList
Patrick Williamsb78a0702022-10-24 12:32:56 -050046 type: array[object_path]
Patrick Williams8da396c2022-03-14 14:21:02 -050047 description: >
48 List of all the FRUs D-Bus object paths for the given location
49 code.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060050 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050051 - xyz.openbmc_project.Common.Error.InvalidArgument
52 - com.ibm.VPD.Error.LocationNotFound
53 - com.ibm.VPD.Error.NodeNotFound
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060054
55 - name: GetFRUsByExpandedLocationCode
56 description: >
57 A method to get list of FRU D-BUS object paths for a given expanded
58 location code.
59 parameters:
Patrick Williams8da396c2022-03-14 14:21:02 -050060 - name: locationCode
61 type: string
62 description: >
63 Location code in expanded format.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060064 returns:
Patrick Williams8da396c2022-03-14 14:21:02 -050065 - name: inventoryList
Patrick Williamsb78a0702022-10-24 12:32:56 -050066 type: array[object_path]
Patrick Williams8da396c2022-03-14 14:21:02 -050067 description: >
68 List of all the FRUs D-Bus object path for the given location
69 code.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060070 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050071 - xyz.openbmc_project.Common.Error.InvalidArgument
72 - com.ibm.VPD.Error.LocationNotFound
73 - com.ibm.VPD.Error.NodeNotFound
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060074
75 - name: GetExpandedLocationCode
76 description: >
77 An api to get expanded location code corresponding to a given
Patrick Williamsa1347412022-12-06 10:56:22 -060078 un-expanded location code. Expanded location codes gives the location
79 of the FRU in the system.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060080 parameters:
Patrick Williams8da396c2022-03-14 14:21:02 -050081 - name: locationCode
82 type: string
83 description: >
84 Location code in un-expanded format.
85 - name: nodeNumber
86 type: uint16
87 description: >
Patrick Williamsa1347412022-12-06 10:56:22 -060088 Denotes the node in case of multi-node configuration. Ignored in
89 case of single node configuration.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060090 returns:
Patrick Williams8da396c2022-03-14 14:21:02 -050091 - name: locationCode
92 type: string
93 description: >
94 Location code in expanded format.
SunnySrivastava198426ff1c82020-02-26 05:48:39 -060095 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -050096 - xyz.openbmc_project.Common.Error.InvalidArgument
97 - com.ibm.VPD.Error.LocationNotFound
98 - com.ibm.VPD.Error.NodeNotFound
SunnySrivastava19849c3dab32020-09-07 03:47:05 -050099
100 - name: PerformVPDRecollection
101 description: >
102 An api to check for FRUs replaced and if required, perform
103 recollection of VPD data for them.
104 errors:
Patrick Williams8da396c2022-03-14 14:21:02 -0500105 - xyz.openbmc_project.Common.Error.InvalidArgument
Sunny Srivastavaec18d802021-06-02 01:52:58 -0500106
107 - name: DeleteFRUVPD
108 description: >
109 An api to delete VPD of a given FRU and set its Present property as
110 false on DBus. This api is to be called before requesting VPD parser
111 to collect VPD of any given FRU in case of concurrent maintenance.
112 parameters:
113 - name: inventoryPath
114 type: object_path
115 description: >
116 Dbus path of the FRU whose VPD needs to be removed.
117 errors:
118 - xyz.openbmc_project.Common.Error.InvalidArgument
119
120 - name: CollectFRUVPD
121 description: >
122 An api to collect VPD of a given FRU by launching the parser exe
123 asynchronously. It can be used to collect VPD of any given FRU in case
124 of concurrent maintenance. As a pre-requisite for this api,
125 DeleteFRUVPD api needs to be called for that particular FRU. As this
126 api makes async call to the parser, caller needs to register for
127 Present property change signal for that FRU on DBus to ensure
128 successful execution of VPD parser for that FRU. The caller is also
129 suggested to have a timer of around two mins at their end and in case
130 the present property is not set to true in that timeline, can mark the
131 call as failed.
132 parameters:
133 - name: inventoryPath
134 type: object_path
135 description: >
136 Dbus path of the FRU whose VPD needs to be collected.
137 errors:
138 - xyz.openbmc_project.Common.Error.InvalidArgument