13bd63e73a
Why I did it S5296F - Platform API 2.0 changes How I did it Implemented the functional API's needed for Platform API 2.0 How to verify it Used the API 2.0 test suite to validate the test cases.
579 lines
15 KiB
JSON
579 lines
15 KiB
JSON
{
|
|
"chassis": {
|
|
"name": "S5296F-ON",
|
|
"status_led": {
|
|
"controllable": true,
|
|
"colors": ["green", "flashing green", "yellow", "flashing yellow"]
|
|
},
|
|
"thermal_manager" : false,
|
|
"components": [
|
|
{
|
|
"name": "BIOS"
|
|
},
|
|
{
|
|
"name": "FPGA"
|
|
},
|
|
{
|
|
"name": "BMC"
|
|
},
|
|
{
|
|
"name": "System CPLD"
|
|
},
|
|
{
|
|
"name": "Secondary CPLD 1"
|
|
},
|
|
{
|
|
"name": "Secondary CPLD 2"
|
|
},
|
|
{
|
|
"name": "Secondary CPLD 3"
|
|
},
|
|
{
|
|
"name": "Secondary CPLD 4"
|
|
}
|
|
],
|
|
"fans": [
|
|
{
|
|
"name": "FanTray1-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
},
|
|
{
|
|
"name": "FanTray2-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
},
|
|
{
|
|
"name": "FanTray3-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
},
|
|
{
|
|
"name": "FanTray4-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
}
|
|
],
|
|
"fan_drawers":[
|
|
{
|
|
"name": "FanTray1",
|
|
"status_led": {
|
|
"controllable": false
|
|
},
|
|
"fans": [
|
|
{
|
|
"name": "FanTray1-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "FanTray2",
|
|
"status_led": {
|
|
"controllable": false
|
|
},
|
|
"fans": [
|
|
{
|
|
"name": "FanTray2-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "FanTray3",
|
|
"status_led": {
|
|
"controllable": false
|
|
},
|
|
"fans": [
|
|
{
|
|
"name": "FanTray3-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "FanTray4",
|
|
"status_led": {
|
|
"controllable": false
|
|
},
|
|
"fans": [
|
|
{
|
|
"name": "FanTray4-Fan1",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"psus": [
|
|
{
|
|
"name": "PSU1",
|
|
"status_led": {
|
|
"controllable": false
|
|
},
|
|
"fans": [
|
|
{
|
|
"name": "PSU1 Fan",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
}
|
|
]
|
|
},
|
|
{
|
|
"name": "PSU2",
|
|
"status_led": {
|
|
"controllable": false
|
|
},
|
|
"fans": [
|
|
{
|
|
"name": "PSU2 Fan",
|
|
"speed": {
|
|
"controllable": false
|
|
},
|
|
"status_led": {
|
|
"available": false
|
|
}
|
|
}
|
|
]
|
|
}
|
|
],
|
|
"thermals": [
|
|
{
|
|
"name": "ASIC On-board",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "CPU On-board",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "Inlet Airflow Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"high-threshold": false,
|
|
"high-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "PSU1 Airflow Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"high-threshold": false,
|
|
"high-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "PSU1 Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "PSU2 Airflow Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"high-threshold": false,
|
|
"high-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "PSU2 Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "PT Left Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "PT Middle Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"high-threshold": false,
|
|
"high-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
},
|
|
{
|
|
"name": "PT Right Sensor",
|
|
"controllable": false,
|
|
"low-crit-threshold": false,
|
|
"high-threshold": false,
|
|
"high-crit-threshold": false,
|
|
"minimum-recorded": false,
|
|
"maximum-recorded": false
|
|
}
|
|
],
|
|
"modules": [],
|
|
"sfps": [
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "SFP/SFP+/SFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
},
|
|
{
|
|
"name": "QSFP28"
|
|
}
|
|
]
|
|
},
|
|
"interfaces": {}
|
|
}
|