| description: > |
| Dbus NVMe Feature Store handles Get/Set Features for a storage resource, |
| transferring raw proto binary over byte arrays. |
| |
| properties: |
| - name: ProtoLibraryVersion |
| type: string |
| flags: |
| - const |
| description: > |
| The static version of the compiled Protocol Buffer library used by the |
| nvmed daemon (e.g., "2.0"). This maps directly to the |
| DataProto.Revision field in the Redfish payload. |
| - name: FeatureCollection |
| type: array[struct[string, string, string]] |
| flags: |
| - const |
| description: > |
| A static collection of tuples representing all supported NVMe Features |
| for the component. Each tuple is formatted as [FeatureName, FeatureId, |
| ProtoClassName] (e.g., ["VolatileWriteCache_Current", "0x06", |
| "google.gbmc.nvme.base.VolatileWriteCache"]). |
| |
| methods: |
| - name: GetFeature |
| description: > |
| Read the data of an individual NVMe Feature directly from the device. |
| parameters: |
| - name: FeatureName |
| type: string |
| description: > |
| The Identifier for the requested Feature (e.g., |
| "VolatileWriteCache_Current"). |
| returns: |
| - name: Ret |
| type: array[byte] |
| description: > |
| A byte array containing the raw proto binary response payload. |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| - xyz.openbmc_project.Common.Error.Unavailable |
| |
| - name: SetFeature |
| description: > |
| Configure an individual NVMe Feature on the device. |
| parameters: |
| - name: FeatureName |
| type: string |
| description: > |
| The Identifier for the Feature being patched (e.g., |
| "VolatileWriteCache_Current"). |
| - name: Data |
| type: array[byte] |
| description: > |
| A byte array containing the raw proto binary payload to apply. |
| returns: [] |
| errors: |
| - xyz.openbmc_project.Common.Error.InvalidArgument |
| - xyz.openbmc_project.Common.Error.Unavailable |
| - xyz.openbmc_project.Common.Error.NotAllowed |