blob: 98daf3afcefa4ecbc954cce685a06930f08b80f1 [file] [log] [blame]
Suryakanth Sekar77a74262019-02-13 18:06:14 +05301description: >
2 Provides Remote BIOS Configuration management functionality.
3 As communication to this service is done through authenticated
4 & authorized session, there won't be any validation for both.
5 https://gerrit.openbmc-project.xyz/c/openbmc/docs/+/29320
6
7methods:
8 - name: SetAttribute
9 description: >
10 To set the new value on existing attribute name.
11 It will create or add the pending attributes.
12 parameters:
13 - name: AttributeName
14 type: string
15 description: >
16 AttributeName which has to be changed.
17 - name: AttributeValue
18 type: variant[int64,string]
19 description: >
20 New attribute value
21
22 errors:
23 - xyz.openbmc_project.Common.Error.InternalFailure
24 - xyz.openbmc_project.BIOSConfig.Common.Error.AttributeReadOnly
25 - xyz.openbmc_project.BIOSConfig.Common.Error.AttributeNotFound
26
27 - name: GetAttribute
28 description: >
29 To get the attribute value of existing attributes.
30 parameters:
31 - name: AttributeName
32 type: string
33 description: >
34 To get the bios attribute current values and
35 pending values if previously set by setAttribute or
36 SetPendingAttributes.
37
38 returns:
39 - name: AttributeValueType
40 type: enum[self.AttributeType]
41 description: >
42 PLDM attribute Type present in PLDM spec
43 - name: CurrentValue
44 type: variant[int64,string]
45 description: >
46 The attribute current value.
47 - name: PendingValue
48 type: variant[int64,string]
49 description: >
50 The pending attribute value if its available.
51 errors:
52 - xyz.openbmc_project.Common.Error.InternalFailure
53 - xyz.openbmc_project.BIOSConfig.Common.Error.AttributeNotFound
54
55properties:
56
57 - name: ResetBIOSSettings
58 type: enum[self.ResetFlag]
59 default: NoAction
60 description: >
61 Contain reset BIOS setting type:
62 Interface have to set NoAction this property.
63 when Reset BIOS settings are informed to the BIOS.
64
65 - name: BaseBIOSTable
66 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]]]]]
67 description: >
68 map{attributeName,struct{attributeType,readonlyStatus,displayname,
69 description,menuPath,current,default,
70 array{struct{optionstring,optionvalue}}}}
71 Example 1:
72 {"DdrFreqLimit",
73 {xyz.openbmc_project.BIOSConfig.Manager.AttributeType.String,
74 false,
75 "Memory Operating Speed Selection",
76 "Force specific Memory Operating Speed or use Auto setting.",
77 "Advanced/Memory Configuration/Memory Operating Speed Selection",
78 "0x00",
79 "0x0B",
80 { {"OneOf", "auto"},
81 {"OneOf", "2133"},
82 {"OneOf", "2400"},
83 {"OneOf", "2664"},
84 {"OneOf", "2933"}
85 }
86 }
87 }
88 Example 2:
89 {"BIOSSerialDebugLevel",
90 {xyz.openbmc_project.BIOSConfig.Manager.AttributeType.Integer,
91 false,
92 "BIOS Serial Debug level",
93 "BIOS Serial Debug level during system boot.",
94 "Advanced/Debug Feature Selection",
95 0x00,
96 0x01,
97 { {"MinBound", 0},
98 {"MaxBound", 4},
99 {"ScalarIncrement",1}
100 }
101 }
102 }
103
104
105 - name: PendingAttributes
106 type: dict[string,struct[enum[self.AttributeType],variant[int64,string]]]
107 description: >
108 The Pending attribute name and new value.
109 ex- { {"QuietBoot",Type.Integer, 0x1},
110 { "DdrFreqLimit",Type.String,"2933"}
111 }
Kuiying Wang4c7663b2020-12-21 23:09:33 +0800112 errors:
113 - xyz.openbmc_project.Common.Error.InvalidArgument
114 - xyz.openbmc_project.BIOSConfig.Common.Error.AttributeNotFound
115 - xyz.openbmc_project.BIOSConfig.Common.Error.AttributeReadOnly
Suryakanth Sekar77a74262019-02-13 18:06:14 +0530116
117enumerations:
118 - name: AttributeType
119 description: >
120 Attribute Type.
121 values:
122 - name: Enumeration
123 description: >
124 Enumeration value Type.
125 - name: String
126 description: >
127 string value Type.
128 - name: Password
129 description: >
130 Encoded string value Type
131 - name: Integer
132 description: >
133 Integer value Type.
134 - name: Boolean
135 description: >
136 Boolean value Type
137
138 - name: ResetFlag
139 description: >
140 Reset BIOS setting type requested by user.
141 values:
142 - name: NoAction
143 description: >
144 Default value, In order to cancel the reset BIOS settings.
145 - name: FactoryDefaults
146 description: >
147 Used to set factory default settings.
148 - name: FailSafeDefaults
149 description: >
150 Used to set the fail safe settings.
151
152 - name: BoundType
153 description: >
154 Contain BoundType value for string and integer
155 values:
156 - name: LowerBound
157 description: >
158 Used to define the lower bound value.
159 - name: UpperBound
160 description: >
161 Used to define the upper bound value.
162 - name: ScalarIncrement
163 description: >
164 Used to define scalar value of integer.
165 - name: MinStringLength
166 description: >
167 Used to define minimum string length.
168 - name: MaxStringLength
169 description: >
170 Used to define maximum string length.
171 - name: OneOf
172 description: >
173 Used to define the enumeration options.
174