blob: dda5946d0ba7dca4bfdfb377cf298030fe4ec243 [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.
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.