| description: > |
| Implement to manage VPD data in system. |
| methods: |
| - name: WriteKeyword |
| description: > |
| A method to update the keyword value for a given VPD record. |
| parameters: |
| - name: path |
| type: object_path |
| description: > |
| Path to the D-Bus object that represents the FRU. |
| - name: record |
| type: string |
| description: > |
| Record whose keyword value needs to be modified. |
| - name: keyword |
| type: string |
| description: > |
| Keyword whose value needs to be updated. |
| - name: value |
| type: array[byte] |
| description: > |
| Value to be updated for the keyword. |
| returns: |
| - name: bytesUpdated |
| type: ssize |
| description: > |
| On success, returns the number of bytes updated. On failure, |
| returns -1. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: UpdateKeyword |
| description: > |
| Method to update a single keyword's value based on the input |
| parameters. |
| parameters: |
| - name: path |
| type: string |
| description: > |
| Path where the data resides (D-Bus inventory path/EEPROM path |
| etc). |
| - name: paramsToWriteData |
| type: |
| variant[struct[string,string,array[byte]], |
| struct[string,array[byte]]] |
| description: > |
| Parameters in required format to write the keyword's value. |
| returns: |
| - name: bytesUpdated |
| type: ssize |
| description: > |
| On success, returns the number of bytes updated. On failure, |
| returns -1. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: WriteKeywordOnHardware |
| description: > |
| Method to update a single keyword's value on the hardware. |
| parameters: |
| - name: path |
| type: string |
| description: > |
| EEPROM path of the FRU. |
| - name: paramsToWriteData |
| type: |
| variant[struct[string,string,array[byte]], |
| struct[string,array[byte]]] |
| description: > |
| Parameters in required format to write the keyword's value. |
| returns: |
| - name: bytesUpdated |
| type: ssize |
| description: > |
| On success, returns the number of bytes updated. On failure, |
| returns -1. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: ReadKeyword |
| description: > |
| Method to read a single keyword's value based on the input parameters. |
| parameters: |
| - name: path |
| type: string |
| description: > |
| Path from where to read the data (D-Bus inventory path/EEPROM |
| path etc). |
| - name: paramsToReadData |
| type: variant[struct[string,string],string] |
| description: > |
| Parameters in required format to read the keyword's value. |
| returns: |
| - name: keywordValue |
| type: variant[array[byte]] |
| description: > |
| On success, returns the keyword's value. On failure, throws an |
| exception. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| - xyz.openbmc_project.Common.Device.Error.ReadFailure |
| |
| - name: GetFRUsByUnexpandedLocationCode |
| description: > |
| A method to get list of FRU D-BUS object paths for a given unexpanded |
| location code. |
| parameters: |
| - name: locationCode |
| type: string |
| description: > |
| An un-expanded Location code. |
| - name: nodeNumber |
| type: uint16 |
| description: > |
| Denotes the node in case of a multi-node configuration, ignored |
| on a single node system. |
| returns: |
| - name: inventoryList |
| type: array[object_path] |
| description: > |
| List of all the FRUs D-Bus object paths for the given location |
| code. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: GetFRUsByExpandedLocationCode |
| description: > |
| A method to get list of FRU D-BUS object paths for a given expanded |
| location code. |
| parameters: |
| - name: locationCode |
| type: string |
| description: > |
| Location code in expanded format. |
| returns: |
| - name: inventoryList |
| type: array[object_path] |
| description: > |
| List of all the FRUs D-Bus object path for the given location |
| code. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: GetExpandedLocationCode |
| description: > |
| An api to get expanded location code corresponding to a given |
| un-expanded location code. Expanded location codes gives the location |
| of the FRU in the system. |
| parameters: |
| - name: locationCode |
| type: string |
| description: > |
| Location code in un-expanded format. |
| - name: nodeNumber |
| type: uint16 |
| description: > |
| Denotes the node in case of multi-node configuration. Ignored in |
| case of single node configuration. |
| returns: |
| - name: locationCode |
| type: string |
| description: > |
| Location code in expanded format. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: PerformVPDRecollection |
| description: > |
| An api to check for FRUs replaced and if required, perform |
| recollection of VPD data for them. |
| |
| - name: DeleteFRUVPD |
| description: > |
| An api to delete VPD of a given FRU and set its Present property as |
| false on DBus. This api is to be called before requesting VPD parser |
| to collect VPD of any given FRU in case of concurrent maintenance. |
| parameters: |
| - name: inventoryPath |
| type: object_path |
| description: > |
| Dbus path of the FRU whose VPD needs to be removed. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: CollectFRUVPD |
| description: > |
| An api to collect VPD of a given FRU. |
| parameters: |
| - name: inventoryPath |
| type: object_path |
| description: > |
| Dbus path of the FRU whose VPD needs to be collected. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| - name: GetHardwarePath |
| description: > |
| Method to get the hardware path for the corresponding inventory path. |
| parameters: |
| - name: inventoryPath |
| type: object_path |
| description: > |
| Dbus inventory path of the FRU. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| |
| properties: |
| - name: CollectionStatus |
| type: enum[self.Status] |
| default: NotStarted |
| description: > |
| VPD collection status of the system. |
| |
| enumerations: |
| - name: Status |
| description: > |
| VPD collection status of the system. |
| values: |
| - name: NotStarted |
| description: > |
| VPD collection has not started. |
| - name: InProgress |
| description: > |
| VPD collection is in progress. |
| - name: Completed |
| description: > |
| VPD collection is completed. |
| - name: Failure |
| description: > |
| VPD collection has failed. |