blob: 7a1903b2fc89e79a4f43dd794523b0a8ae1734f5 [file] [log] [blame]
description: >
Provides Remote BIOS Configuration management functionality.
As communication to this service is done through authenticated
& authorized session, there won't be any validation for both.
https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/29320
methods:
- name: SetAttribute
description: >
To set the new value on existing attribute name.
It will create or add the pending attributes.
parameters:
- name: AttributeName
type: string
description: >
AttributeName which has to be changed.
- name: AttributeValue
type: variant[int64,string]
description: >
New attribute value
errors:
- xyz.openbmc_project.Common.Error.InternalFailure
- xyz.openbmc_project.BIOSConfig.Common.Error.AttributeReadOnly
- xyz.openbmc_project.BIOSConfig.Common.Error.AttributeNotFound
- name: GetAttribute
description: >
To get the attribute value of existing attributes.
parameters:
- name: AttributeName
type: string
description: >
To get the bios attribute current values and
pending values if previously set by setAttribute or
SetPendingAttributes.
returns:
- name: AttributeValueType
type: enum[self.AttributeType]
description: >
PLDM attribute Type present in PLDM spec
- name: CurrentValue
type: variant[int64,string]
description: >
The attribute current value.
- name: PendingValue
type: variant[int64,string]
description: >
The pending attribute value if its available.
errors:
- xyz.openbmc_project.Common.Error.InternalFailure
- xyz.openbmc_project.BIOSConfig.Common.Error.AttributeNotFound
properties:
- name: ResetBIOSSettings
type: enum[self.ResetFlag]
default: NoAction
description: >
Contain reset BIOS setting type:
Interface have to set NoAction this property.
when Reset BIOS settings are informed to the BIOS.
- name: BaseBIOSTable
type: dict[string,struct[enum[self.AttributeType],boolean,string,string,string,variant[int64,string],variant[int64,string],array[struct[enum[self.BoundType], variant[int64, string]]]]]
description: >
map{attributeName,struct{attributeType,readonlyStatus,displayname,
description,menuPath,current,default,
array{struct{optionstring,optionvalue}}}}
Example 1:
{"DdrFreqLimit",
{xyz.openbmc_project.BIOSConfig.Manager.AttributeType.String,
false,
"Memory Operating Speed Selection",
"Force specific Memory Operating Speed or use Auto setting.",
"Advanced/Memory Configuration/Memory Operating Speed Selection",
"0x00",
"0x0B",
{ {"OneOf", "auto"},
{"OneOf", "2133"},
{"OneOf", "2400"},
{"OneOf", "2664"},
{"OneOf", "2933"}
}
}
}
Example 2:
{"BIOSSerialDebugLevel",
{xyz.openbmc_project.BIOSConfig.Manager.AttributeType.Integer,
false,
"BIOS Serial Debug level",
"BIOS Serial Debug level during system boot.",
"Advanced/Debug Feature Selection",
0x00,
0x01,
{ {"MinBound", 0},
{"MaxBound", 4},
{"ScalarIncrement",1}
}
}
}
- name: PendingAttributes
type: dict[string,struct[enum[self.AttributeType],variant[int64,string]]]
description: >
The Pending attribute name and new value.
ex- { {"QuietBoot",Type.Integer, 0x1},
{ "DdrFreqLimit",Type.String,"2933"}
}
errors:
- xyz.openbmc_project.Common.Error.InvalidArgument
- xyz.openbmc_project.BIOSConfig.Common.Error.AttributeNotFound
- xyz.openbmc_project.BIOSConfig.Common.Error.AttributeReadOnly
enumerations:
- name: AttributeType
description: >
Attribute Type.
values:
- name: Enumeration
description: >
Enumeration value Type.
- name: String
description: >
string value Type.
- name: Password
description: >
Encoded string value Type
- name: Integer
description: >
Integer value Type.
- name: Boolean
description: >
Boolean value Type
- name: ResetFlag
description: >
Reset BIOS setting type requested by user.
values:
- name: NoAction
description: >
Default value, In order to cancel the reset BIOS settings.
- name: FactoryDefaults
description: >
Used to set factory default settings.
- name: FailSafeDefaults
description: >
Used to set the fail safe settings.
- name: BoundType
description: >
Contain BoundType value for string and integer
values:
- name: LowerBound
description: >
Used to define the lower bound value.
- name: UpperBound
description: >
Used to define the upper bound value.
- name: ScalarIncrement
description: >
Used to define scalar value of integer.
- name: MinStringLength
description: >
Used to define minimum string length.
- name: MaxStringLength
description: >
Used to define maximum string length.
- name: OneOf
description: >
Used to define the enumeration options.