1{ 2 "$schema": "http://json-schema.org/schema#", 3 "anyOf": [ 4 { 5 "type": "array", 6 "items": { 7 "type": "object", 8 "properties": { 9 "Exposes": { 10 "type": "array", 11 "items": { 12 "type": "object", 13 "properties": { 14 "Address": { 15 "type": "string" 16 }, 17 "Bus": { 18 "type": "string" 19 }, 20 "Name": { 21 "type": "string" 22 }, 23 "Type": { 24 "type": "string" 25 }, 26 "ChannelNames": { 27 "type": "array", 28 "items": { 29 "type": "string" 30 } 31 }, 32 "Class": { 33 "type": "string" 34 }, 35 "FFGainCoefficient": { 36 "type": "number" 37 }, 38 "FFOffCoefficient": { 39 "type": "number" 40 }, 41 "ICoefficient": { 42 "type": "number" 43 }, 44 "ILimitMax": { 45 "type": "number" 46 }, 47 "ILimitMin": { 48 "type": "number" 49 }, 50 "Inputs": { 51 "type": "array", 52 "items": { 53 "type": "string" 54 } 55 }, 56 "NegativeHysteresis": { 57 "type": "number" 58 }, 59 "OutLimitMax": { 60 "type": "number" 61 }, 62 "OutLimitMin": { 63 "type": "number" 64 }, 65 "Outputs": { 66 "type": "array", 67 "items": { 68 "type": "string" 69 } 70 }, 71 "PCoefficient": { 72 "type": "number" 73 }, 74 "PositiveHysteresis": { 75 "type": "number" 76 }, 77 "SetPoint": { 78 "type": "number" 79 }, 80 "SlewNeg": { 81 "type": "number" 82 }, 83 "SlewPos": { 84 "type": "number" 85 }, 86 "Zones": { 87 "type": "array", 88 "items": { 89 "type": "string" 90 } 91 }, 92 "Thresholds": { 93 "type": "array", 94 "items": { 95 "type": "object", 96 "properties": { 97 "Direction": { 98 "type": "string" 99 }, 100 "Name": { 101 "type": "string" 102 }, 103 "Severity": { 104 "type": "number" 105 }, 106 "Value": { 107 "type": "number" 108 }, 109 "Label": { 110 "type": "string" 111 } 112 }, 113 "required": [ 114 "Direction", 115 "Name", 116 "Severity", 117 "Value" 118 ] 119 } 120 }, 121 "Output": { 122 "type": "array", 123 "items": { 124 "type": "number" 125 } 126 }, 127 "Reading": { 128 "type": "array", 129 "items": { 130 "type": "number" 131 } 132 }, 133 "Labels": { 134 "type": "array", 135 "items": { 136 "type": "string" 137 } 138 } 139 }, 140 "required": [ 141 "Name", 142 "Type" 143 ] 144 } 145 }, 146 "Name": { 147 "type": "string" 148 }, 149 "Probe": { 150 "type": "string" 151 }, 152 "Type": { 153 "type": "string" 154 }, 155 "xyz.openbmc_project.Inventory.Decorator.Asset": { 156 "type": "object", 157 "properties": { 158 "Manufacturer": { 159 "type": "string" 160 }, 161 "Model": { 162 "type": "string" 163 }, 164 "PartNumber": { 165 "type": "string" 166 }, 167 "SerialNumber": { 168 "type": "string" 169 } 170 }, 171 "required": [ 172 "Manufacturer", 173 "Model", 174 "PartNumber", 175 "SerialNumber" 176 ] 177 } 178 }, 179 "required": [ 180 "Exposes", 181 "Name", 182 "Probe", 183 "xyz.openbmc_project.Inventory.Decorator.Asset" 184 ] 185 } 186 }, 187 { 188 "type": "object", 189 "properties": { 190 "Exposes": { 191 "type": "array", 192 "items": { 193 "type": "object", 194 "properties": { 195 "Address": { 196 "type": "string" 197 }, 198 "Name": { 199 "type": "string" 200 }, 201 "Type": { 202 "type": "string" 203 }, 204 "Bus": { 205 "type": [ 206 "number", 207 "string" 208 ] 209 }, 210 "ChannelNames": { 211 "type": "array", 212 "items": { 213 "type": "string" 214 } 215 }, 216 "Class": { 217 "type": "string" 218 }, 219 "FFGainCoefficient": { 220 "type": "number" 221 }, 222 "FFOffCoefficient": { 223 "type": "number" 224 }, 225 "ICoefficient": { 226 "type": "number" 227 }, 228 "ILimitMax": { 229 "type": "number" 230 }, 231 "ILimitMin": { 232 "type": "number" 233 }, 234 "Inputs": { 235 "type": "array", 236 "items": { 237 "type": "string" 238 } 239 }, 240 "OutLimitMax": { 241 "type": "number" 242 }, 243 "OutLimitMin": { 244 "type": "number" 245 }, 246 "Outputs": { 247 "type": "array", 248 "items": { 249 "type": "string" 250 } 251 }, 252 "PCoefficient": { 253 "type": "number" 254 }, 255 "SetPoint": { 256 "type": "number" 257 }, 258 "SlewNeg": { 259 "type": "number" 260 }, 261 "SlewPos": { 262 "type": "number" 263 }, 264 "Zones": { 265 "type": "array", 266 "items": { 267 "type": "string" 268 } 269 }, 270 "Thresholds": { 271 "type": "array", 272 "items": { 273 "type": "object", 274 "properties": { 275 "Direction": { 276 "type": "string" 277 }, 278 "Name": { 279 "type": "string" 280 }, 281 "Severity": { 282 "type": "number" 283 }, 284 "Value": { 285 "type": "number" 286 }, 287 "Label": { 288 "type": "string" 289 } 290 }, 291 "required": [ 292 "Direction", 293 "Name", 294 "Severity", 295 "Value" 296 ] 297 } 298 }, 299 "Direction": { 300 "type": "string" 301 }, 302 "Index": { 303 "type": "number" 304 }, 305 "Polarity": { 306 "type": "string" 307 }, 308 "GpioPins": { 309 "type": "array", 310 "items": { 311 "type": "number" 312 } 313 }, 314 "ScaleFactor": { 315 "type": "number" 316 }, 317 "Connector": { 318 "type": "object", 319 "properties": { 320 "Name": { 321 "type": "string" 322 }, 323 "Pwm": { 324 "type": "number" 325 }, 326 "Tachs": { 327 "type": "array", 328 "items": { 329 "type": "number" 330 } 331 } 332 }, 333 "required": [ 334 "Name", 335 "Pwm", 336 "Tachs" 337 ] 338 }, 339 "FailSafePercent": { 340 "type": "number" 341 }, 342 "MinThermalOutput": { 343 "type": "number" 344 }, 345 "NegativeHysteresis": { 346 "type": "number" 347 }, 348 "Output": { 349 "type": "array", 350 "items": { 351 "type": "number" 352 } 353 }, 354 "PositiveHysteresis": { 355 "type": "number" 356 }, 357 "Reading": { 358 "type": "array", 359 "items": { 360 "type": "number" 361 } 362 }, 363 "Name1": { 364 "type": "string" 365 }, 366 "Labels": { 367 "type": "array", 368 "items": { 369 "type": "string" 370 } 371 }, 372 "CpuID": { 373 "type": "number" 374 }, 375 "DtsCritOffset": { 376 "type": "number" 377 }, 378 "BindConnector": { 379 "type": "string" 380 }, 381 "C1": { 382 "type": "number" 383 }, 384 "C2": { 385 "type": "number" 386 }, 387 "MaxCFM": { 388 "type": "number" 389 }, 390 "TachMaxPercent": { 391 "type": "number" 392 }, 393 "TachMinPercent": { 394 "type": "number" 395 }, 396 "Tachs": { 397 "type": "array", 398 "items": { 399 "type": [ 400 "number", 401 "string" 402 ] 403 } 404 }, 405 "AlphaF": { 406 "type": "number" 407 }, 408 "AlphaS": { 409 "type": "number" 410 }, 411 "PowerFactorMax": { 412 "type": "number" 413 }, 414 "PowerFactorMin": { 415 "type": "number" 416 }, 417 "QMax": { 418 "type": "number" 419 }, 420 "QMin": { 421 "type": "number" 422 }, 423 "AllowedFailures": { 424 "type": "number" 425 }, 426 "Profiles": { 427 "type": "array", 428 "items": { 429 "type": "string" 430 } 431 }, 432 "BindPresence": { 433 "type": "string" 434 }, 435 "MaxReading": { 436 "type": "number" 437 }, 438 "PowerState": { 439 "type": "string" 440 }, 441 "BridgeGpio": { 442 "type": "number" 443 }, 444 "Status": { 445 "type": "string" 446 }, 447 "Pwm": { 448 "type": "number" 449 }, 450 "FaultIndex": { 451 "type": "number" 452 }, 453 "FaultType": { 454 "type": "string" 455 }, 456 "LedGpioPins": { 457 "type": "array", 458 "items": { 459 "type": "number" 460 } 461 }, 462 "SetPointOffset": { 463 "type": "string" 464 }, 465 "PresenceGpio": { 466 "type": "number" 467 } 468 }, 469 "required": [ 470 "Name", 471 "Type" 472 ] 473 } 474 }, 475 "Name": { 476 "type": "string" 477 }, 478 "Probe": { 479 "anyOf": [ 480 { 481 "type": "string" 482 }, 483 { 484 "type": "array", 485 "items": { 486 "type": "string" 487 } 488 } 489 ] 490 }, 491 "Type": { 492 "type": "string" 493 }, 494 "xyz.openbmc_project.Inventory.Decorator.Asset": { 495 "type": "object", 496 "properties": { 497 "Manufacturer": { 498 "type": "string" 499 }, 500 "Model": { 501 "type": "string" 502 }, 503 "PartNumber": { 504 "type": "string" 505 }, 506 "SerialNumber": { 507 "type": "string" 508 } 509 }, 510 "required": [ 511 "Manufacturer", 512 "Model", 513 "PartNumber", 514 "SerialNumber" 515 ] 516 }, 517 "ProductId": { 518 "type": "number" 519 }, 520 "xyz.openbmc_project.Inventory.Decorator.AssetTag": { 521 "type": "object", 522 "properties": { 523 "AssetTag": { 524 "type": "string" 525 } 526 }, 527 "required": [ 528 "AssetTag" 529 ] 530 }, 531 "xyz.openbmc_project.Inventory.Item.System": { 532 "type": "object" 533 } 534 }, 535 "required": [ 536 "Exposes", 537 "Name", 538 "Probe" 539 ] 540 } 541 ] 542} 543