blob: da0e799f1183604049596b0702b7f89763ed687d [file] [log] [blame]
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.
errors:
- xyz.openbmc_project.Common.Error.InvalidArgument
- com.ibm.VPD.Error.PathNotFound
- com.ibm.VPD.Error.RecordNotFound
- com.ibm.VPD.Error.KeywordNotFound
- 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
- com.ibm.VPD.Error.LocationNotFound
- com.ibm.VPD.Error.NodeNotFound
- 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
- com.ibm.VPD.Error.LocationNotFound
- com.ibm.VPD.Error.NodeNotFound
- 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
- com.ibm.VPD.Error.LocationNotFound
- com.ibm.VPD.Error.NodeNotFound
- name: PerformVPDRecollection
description: >
An api to check for FRUs replaced and if required, perform
recollection of VPD data for them.
errors:
- xyz.openbmc_project.Common.Error.InvalidArgument
- 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 by launching the parser exe
asynchronously. It can be used to collect VPD of any given FRU in case
of concurrent maintenance. As a pre-requisite for this api,
DeleteFRUVPD api needs to be called for that particular FRU. As this
api makes async call to the parser, caller needs to register for
Present property change signal for that FRU on DBus to ensure
successful execution of VPD parser for that FRU. The caller is also
suggested to have a timer of around two mins at their end and in case
the present property is not set to true in that timeline, can mark the
call as failed.
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