blob: 8f7a6af3c3fb2641356cfef0e47ac553f0c479b5 [file] [log] [blame]
James Feistaf996fe2018-09-14 16:02:44 -07001<?xml version="1.0" encoding="UTF-8"?>
2<edmx:Edmx xmlns:edmx="http://docs.oasis-open.org/odata/ns/edmx" Version="4.0">
3 <edmx:Reference Uri="http://docs.oasis-open.org/odata/odata/v4.0/errata03/csd01/complete/vocabularies/Org.OData.Core.V1.xml">
4 <edmx:Include Namespace="Org.OData.Core.V1" Alias="OData" />
5 </edmx:Reference>
6 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/RedfishExtensions_v1.xml">
7 <edmx:Include Namespace="Validation.v1_0_0" Alias="Validation"/>
8 <edmx:Include Namespace="RedfishExtensions.v1_0_0" Alias="Redfish"/>
9 </edmx:Reference>
10 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Manager_v1.xml">
11 <edmx:Include Namespace="Manager"/>
12 <edmx:Include Namespace="Manager.v1_4_0"/>
13 </edmx:Reference>
14 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Resource_v1.xml">
15 <edmx:Include Namespace="Resource"/>
16 <edmx:Include Namespace="Resource.v1_0_0"/>
17 </edmx:Reference>
18 <edmx:Reference Uri="http://redfish.dmtf.org/schemas/v1/Chassis_v1.xml">
19 <edmx:Include Namespace="Chassis"/>
20 </edmx:Reference>
21
22 <edmx:DataServices>
23 <Schema xmlns="http://docs.oasis-open.org/odata/ns/edm" Namespace="OemManager">
24 <ComplexType Name="Oem" BaseType="Resource.OemObject" ContainsTarget="true">
25 <Annotation Term="OData.AdditionalProperties" Bool="true" />
26 <Annotation Term="OData.Description" String="OemManager Oem properties." />
27 <Annotation Term="OData.AutoExpand"/>
28 <NavigationProperty Name="OpenBmc" Type="OemManager.OpenBmc"/>
29 </ComplexType>
30
31 <EntityType Name="OpenBmc" BaseType="Resource.OemObject" ContainsTarget="true">
32 <Annotation Term="OData.AdditionalProperties" Bool="true" />
33 <Annotation Term="OData.Description" String="Oem properties for OpenBmc." />
34 <Annotation Term="OData.AutoExpand"/>
35 <NavigationProperty Name="Fan" Type="OemManager.Fan"/>
36 </EntityType>
37
38 <EntityType Name="Fan" BaseType="Resource.OemObject" ContainsTarget="true">
39 <Annotation Term="OData.AdditionalProperties" Bool="true" />
40 <Annotation Term="OData.Description" String="OpenBmc oem fan properties." />
41 <Annotation Term="OData.AutoExpand"/>
42 <NavigationProperty Name="FanControllers" Type="OemManager.FanControllers"/>
43 <NavigationProperty Name="PidControllers" Type="OemManager.PidControllers"/>
James Feistbaa5c142018-12-12 17:28:36 -080044 <NavigationProperty Name="StepwiseControllers" Type="OemManager.StepwiseControllers"/>
James Feistaf996fe2018-09-14 16:02:44 -070045 <NavigationProperty Name="FanZones" Type="OemManager.FanZones"/>
46 </EntityType>
47
48 <EntityType Name="FanControllers" BaseType="Resource.OemObject" ContainsTarget="true">
49 <Annotation Term="OData.AdditionalProperties" Bool="true" />
50 <Annotation Term="OData.Description" String="OpenBmc FanControllers." />
51 <Annotation Term="OData.LongDescription" String="Container for OpenBmc fan controllers." />
52 <Annotation Term="Redfish.DynamicPropertyPatterns">
53 <Annotation Term="OData.AutoExpand"/>
54 <Collection ContainsTarget="true">
55 <NavigationProperty Type="OemManager.FanController">
56 <Annotation Term="OData.AutoExpand"/>
57 <PropertyValue Property="Pattern" String="[A-Za-z0-9_.:]+" />
58 <PropertyValue Property="Type" String="OemManager.FanController" />
59 </NavigationProperty>
60 </Collection>
61 </Annotation>
62 </EntityType>
63
64 <EntityType Name="PidControllers" BaseType="Resource.OemObject" ContainsTarget="true">
65 <Annotation Term="OData.AdditionalProperties" Bool="true" />
66 <Annotation Term="OData.Description" String="OpenBmc PidControllers." />
67 <Annotation Term="OData.LongDescription" String="Container for OpenBmc pid controllers." />
68 <Annotation Term="Redfish.DynamicPropertyPatterns">
69 <Annotation Term="OData.AutoExpand"/>
70 <Collection ContainsTarget="true">
71 <NavigationProperty>
72 <Annotation Term="OData.AutoExpand"/>
73 <PropertyValue Property="Pattern" String="[A-Za-z0-9_.:]+" />
74 <PropertyValue Property="Type" String="OemManager.PidController" />
75 </NavigationProperty>
76 </Collection>
77 </Annotation>
78 </EntityType>
79
James Feistbaa5c142018-12-12 17:28:36 -080080 <EntityType Name="StepwiseControllers" BaseType="Resource.OemObject" ContainsTarget="true">
81 <Annotation Term="OData.AdditionalProperties" Bool="true" />
82 <Annotation Term="OData.Description" String="OpenBmc StepwiseControllers." />
83 <Annotation Term="OData.LongDescription" String="Container for OpenBmc Stepwise controllers." />
84 <Annotation Term="Redfish.DynamicPropertyPatterns">
85 <Annotation Term="OData.AutoExpand"/>
86 <Collection ContainsTarget="true">
87 <NavigationProperty>
88 <Annotation Term="OData.AutoExpand"/>
89 <PropertyValue Property="Pattern" String="[A-Za-z0-9_.:]+" />
90 <PropertyValue Property="Type" String="OemManager.StepwiseController" />
91 </NavigationProperty>
92 </Collection>
93 </Annotation>
94 </EntityType>
95
James Feistaf996fe2018-09-14 16:02:44 -070096 <EntityType Name="FanZones" BaseType="Resource.OemObject" ContainsTarget="true">
97 <Annotation Term="OData.AdditionalProperties" Bool="true" />
98 <Annotation Term="OData.Description" String="OpenBmc FanZones." />
99 <Annotation Term="OData.LongDescription" String="Container for OpenBmc fan zones." />
100 <Annotation Term="Redfish.DynamicPropertyPatterns">
101 <Annotation Term="OData.AutoExpand"/>
102 <Collection ContainsTarget="true">
103 <NavigationProperty>
104 <Annotation Term="OData.AutoExpand"/>
105 <PropertyValue Property="Pattern" String="[A-Za-z0-9_.:]+" />
106 <PropertyValue Property="Type" String="OemManager.FanZone" />
107 </NavigationProperty>
108 </Collection>
109 </Annotation>
110 </EntityType>
111
112 <!-- In reality we'd like these all to be entities, but the Pattern Expansion for
113 Navigation Properties doesn't seem to quite work right. As FanZones should always have
114 some FanController / PidController, the navigation properties in those fields sould let
115 the conformance test find them. However FanControllers / PidControllers are only linked to
116 by the pattern expansion, as that's not working they are complex types -->
117
118 <ComplexType Name="FanController" BaseType="Resource.OemObject">
119 <Annotation Term="OData.AdditionalProperties" Bool="false" />
120 <Annotation Term="OData.Description" String="Configuration data for Fan Controllers." />
121 <Property Name="FFGainCoefficient" Type="Edm.Decimal" Nullable="false">
122 <Annotation Term="OData.Description" String="Feed forward gain coefficent for the PID." />
123 <Annotation Term="OData.LongDescription" String="Feed forward gain coefficent for the PID." />
124 </Property>
125 <Property Name="FFOffCoefficient" Type="Edm.Decimal" Nullable="false">
126 <Annotation Term="OData.Description" String="Feed forward offset coefficent for the PID." />
127 <Annotation Term="OData.LongDescription" String="Feed forward offset coefficent for the PID." />
128 </Property>
129 <Property Name="ICoefficient" Type="Edm.Decimal" Nullable="false">
130 <Annotation Term="OData.Description" String="Integral Coefficent for the PID." />
131 <Annotation Term="OData.LongDescription" String="Integral Coefficent for the PID." />
132 </Property>
133 <Property Name="ILimitMax" Type="Edm.Decimal" Nullable="false">
134 <Annotation Term="OData.Description" String="Integral limit maxiumum for the PID." />
135 <Annotation Term="OData.LongDescription" String="Integral limit maxiumum for the PID." />
136 </Property>
137 <Property Name="ILimitMin" Type="Edm.Decimal" Nullable="false">
138 <Annotation Term="OData.Description" String="Integral limit miniumum for the PID." />
139 <Annotation Term="OData.LongDescription" String="Integral limit miniumum for the PID." />
140 </Property>
141 <Property Name="Inputs" Type="Collection(Edm.String)">
142 <Annotation Term="OData.Description" String="Input sensors to the PID controller."/>
143 <Annotation Term="OData.LongDescription" String="Input sensors to the PID controller."/>
144 </Property>
145 <Property Name="OutLimitMax" Type="Edm.Decimal" Nullable="false">
146 <Annotation Term="OData.Description" String="Output limit maxiumum for the pwm." />
147 <Annotation Term="OData.LongDescription" String="Output limit maxiumum for the pwm." />
148 </Property>
149 <Property Name="OutLimitMin" Type="Edm.Decimal" Nullable="false">
150 <Annotation Term="OData.Description" String="Output limit minimum for the pwm." />
151 <Annotation Term="OData.LongDescription" String="Output limit minimum for the pwm." />
152 </Property>
153 <Property Name="Outputs" Type="Collection(Edm.String)">
154 <Annotation Term="OData.Description" String="Output sensors to the PID controller."/>
155 <Annotation Term="OData.LongDescription" String="Output sensors to the PID controller."/>
156 </Property>
157 <Property Name="PCoefficient" Type="Edm.Decimal" Nullable="false">
158 <Annotation Term="OData.Description" String="Polynomial coefficent for the PID." />
159 <Annotation Term="OData.LongDescription" String="Polynomial coefficent for the PID." />
160 </Property>
161 <Property Name="SlewNeg" Type="Edm.Decimal" Nullable="false">
162 <Annotation Term="OData.Description" String="Negative slew rate for the PID." />
163 <Annotation Term="OData.LongDescription" String="Negative slew rate for the PID." />
164 </Property>
165 <Property Name="SlewPos" Type="Edm.Decimal" Nullable="false">
166 <Annotation Term="OData.Description" String="Positive slew rate for the PID." />
167 <Annotation Term="OData.LongDescription" String="Positive slew rate for the PID." />
168 </Property>
169 <NavigationProperty Name="Zones" Type="Collection(OemManager.FanZone)" ContainsTarget="true">
170 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read" />
171 <Annotation Term="OData.Description" String="Contains the Zones that this PID contributes to." />
172 <Annotation Term="OData.AutoExpandReferences"/>
173 </NavigationProperty>
174 </ComplexType>
175
176 <EntityType Name="FanZone" BaseType="Resource.OemObject">
177 <Annotation Term="OData.AdditionalProperties" Bool="false" />
178 <Annotation Term="OData.Description" String="Configuration data for Fan Controllers." />
179 <Property Name="FailSafePercent" Type="Edm.Decimal" Nullable="false">
180 <Annotation Term="OData.Description" String="If the sensors are in fail-safe mode, this is the percentage to use." />
181 <Annotation Term="OData.LongDescription" String="If the sensors are in fail-safe mode, this is the percentage to use." />
182 </Property>
183 <Property Name="MinThermalRpm" Type="Edm.Decimal" Nullable="false">
184 <Annotation Term="OData.Description" String="Minimum thermal RPM that can be set in this Zone." />
185 <Annotation Term="OData.LongDescription" String="Minimum thermal RPM that can be set in this Zone." />
186 </Property>
187 <NavigationProperty Name="Chassis" Type="Chassis.Chassis" ContainsTarget="true">
188 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read"/>
189 <Annotation Term="OData.Description" String="The Chassis that enables this Zone."/>
190 <Annotation Term="OData.AutoExpandReferences"/>
191 </NavigationProperty>
192 </EntityType>
193
194 <ComplexType Name="PidController" BaseType="Resource.OemObject">
195 <Annotation Term="OData.AdditionalProperties" Bool="false" />
196 <Annotation Term="OData.Description" String="Configuration data for Fan Controllers." />
197 <Property Name="FFGainCoefficient" Type="Edm.Decimal" Nullable="false">
198 <Annotation Term="OData.Description" String="Feed forward gain coefficent for the PID." />
199 <Annotation Term="OData.LongDescription" String="Feed forward gain coefficent for the PID." />
200 </Property>
201 <Property Name="FFOffCoefficient" Type="Edm.Decimal" Nullable="false">
202 <Annotation Term="OData.Description" String="Feed forward offset coefficent for the PID." />
203 <Annotation Term="OData.LongDescription" String="Feed forward offset coefficent for the PID." />
204 </Property>
205 <Property Name="ICoefficient" Type="Edm.Decimal" Nullable="false">
206 <Annotation Term="OData.Description" String="Integral Coefficent for the PID." />
207 <Annotation Term="OData.LongDescription" String="Integral Coefficent for the PID." />
208 </Property>
209 <Property Name="ILimitMax" Type="Edm.Decimal" Nullable="false">
210 <Annotation Term="OData.Description" String="Integral limit maxiumum for the PID." />
211 <Annotation Term="OData.LongDescription" String="Integral limit maxiumum for the PID." />
212 </Property>
213 <Property Name="ILimitMin" Type="Edm.Decimal" Nullable="false">
214 <Annotation Term="OData.Description" String="Integral limit miniumum for the PID." />
215 <Annotation Term="OData.LongDescription" String="Integral limit miniumum for the PID." />
216 </Property>
217 <Property Name="Inputs" Type="Collection(Edm.String)">
218 <Annotation Term="OData.Description" String="Input sensors to the PID controller."/>
219 <Annotation Term="OData.LongDescription" String="Input sensors to the PID controller."/>
220 </Property>
221 <Property Name="OutLimitMax" Type="Edm.Decimal" Nullable="false">
222 <Annotation Term="OData.Description" String="Output limit maxiumum for the pwm." />
223 <Annotation Term="OData.LongDescription" String="Output limit maxiumum for the pwm." />
224 </Property>
225 <Property Name="OutLimitMin" Type="Edm.Decimal" Nullable="false">
226 <Annotation Term="OData.Description" String="Output limit minimum for the pwm." />
227 <Annotation Term="OData.LongDescription" String="Output limit minimum for the pwm." />
228 </Property>
229 <Property Name="PCoefficient" Type="Edm.Decimal" Nullable="false">
230 <Annotation Term="OData.Description" String="Polynomial coefficent for the PID." />
231 <Annotation Term="OData.LongDescription" String="Polynomial coefficent for the PID." />
232 </Property>
233 <Property Name="SlewNeg" Type="Edm.Decimal" Nullable="false">
234 <Annotation Term="OData.Description" String="Negative slew rate for the PID." />
235 <Annotation Term="OData.LongDescription" String="Negative slew rate for the PID." />
236 </Property>
237 <Property Name="SlewPos" Type="Edm.Decimal" Nullable="false">
238 <Annotation Term="OData.Description" String="Positive slew rate for the PID." />
239 <Annotation Term="OData.LongDescription" String="Positive slew rate for the PID." />
240 </Property>
241 <NavigationProperty Name="Zones" Type="Collection(OemManager.FanZone)" ContainsTarget="true">
242 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read" />
243 <Annotation Term="OData.Description" String="Contains the Zones that this PID contributes to." />
244 <Annotation Term="OData.AutoExpandReferences"/>
245 </NavigationProperty>
246 </ComplexType>
James Feistbaa5c142018-12-12 17:28:36 -0800247
248 <ComplexType Name="StepwiseController" BaseType="Resource.OemObject">
249 <Annotation Term="OData.AdditionalProperties" Bool="false" />
250 <Annotation Term="OData.Description" String="Configuration data for Stepwise Controllers." />
251 <Property Name="Inputs" Type="Collection(Edm.String)">
252 <Annotation Term="OData.Description" String="Input sensors to the Stepwise controller."/>
253 <Annotation Term="OData.LongDescription" String="Input sensors to the Stepwise controller."/>
254 </Property>
255 <Property Name="NegativeHysteresis" Type="Edm.Decimal" Nullable="false">
256 <Annotation Term="OData.Description" String="Negative Hysteresis for the stepwise controller." />
257 <Annotation Term="OData.LongDescription" String="Negative Hysteresis for the stepwise controller." />
258 </Property>
259 <Property Name="PositiveHysteresis" Type="Edm.Decimal" Nullable="false">
260 <Annotation Term="OData.Description" String="Positive Hysteresis for the stepwise controller." />
261 <Annotation Term="OData.LongDescription" String="Positive Hysteresis for the stepwise controller." />
262 </Property>
263 <Property Name="Steps" Type="Collection(OemManager.StepwiseSteps)">
264 <Annotation Term="OData.Description" String="Temperature vs RPM steps for the stepwise controller." />
265 <Annotation Term="OData.LongDescription" String="Temperature vs RPM steps for the stepwise controller." />
266 <Annotation Term="OData.AutoExpand"/>
267 </Property>
268 <NavigationProperty Name="Zones" Type="Collection(OemManager.FanZone)" ContainsTarget="true">
269 <Annotation Term="OData.Permissions" EnumMember="OData.Permission/Read" />
270 <Annotation Term="OData.Description" String="Contains the Zones that this controller contributes to." />
271 <Annotation Term="OData.AutoExpandReferences"/>
272 </NavigationProperty>
273 </ComplexType>
274
275 <ComplexType Name="StepwiseSteps" BaseType="Resource.OemObject">
276 <Property Name="Target" Type="Edm.Decimal" Nullable="false">
277 <Annotation Term="OData.Description" String="Input sensor reading for step."/>
278 <Annotation Term="OData.LongDescription" String="Input sensor reading for step."/>
279 </Property>
280 <Property Name="Output" Type="Edm.Decimal" Nullable="false">
281 <Annotation Term="OData.Description" String="Fan speed setting for step."/>
282 <Annotation Term="OData.LongDescription" String="Fan speed setting for step."/>
283 </Property>
284 </ComplexType>
James Feistaf996fe2018-09-14 16:02:44 -0700285 </Schema>
286 </edmx:DataServices>
287</edmx:Edmx>