blob: b93a457366dc81bad289f7a1aed2eadce505cd19 [file]
{
"$schema": "http://json-schema.org/draft-07/schema#",
"title": "Power Manager Node Config Schema",
"type": "array",
"items": {
"oneOf": [
{
"properties": {
"type": {
"pattern": "ActivityHandler"
},
"name": {
"type": "string"
},
"dependencies": {
"type": "object",
"properties": {
"system_profile_handler_node": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"system_profile_handler_node"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "CrashReportHandler"
},
"name": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"type",
"name"
]
},
{
"properties": {
"type": {
"pattern": "InputSettingsHandler"
},
"name": {
"type": "string"
},
"dependencies": {
"type": "object",
"properties": {
"system_profile_handler_node": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"system_profile_handler_node"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "PlatformMetrics"
},
"name": {
"type": "string"
},
"config": {
"type": "object",
"properties": {
"cpu_temperature_poll_interval_s": {
"type": "number",
"exclusiveMinimum": 0
},
"throttle_debounce_timeout_s": {
"type": "number",
"minimum": 0
}
},
"additionalProperties": false,
"required": [
"cpu_temperature_poll_interval_s",
"throttle_debounce_timeout_s"
]
},
"dependencies": {
"type": "object",
"properties": {
"cpu_temperature_handler_node": {
"type": "string"
},
"crash_report_handler_node": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"cpu_temperature_handler_node",
"crash_report_handler_node"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"config",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "SystemProfileHandler"
},
"name": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"type",
"name"
]
},
{
"properties": {
"type": {
"pattern": "SystemShutdownHandler"
},
"name": {
"type": "string"
}
},
"required": [
"type",
"name"
]
},
{
"properties": {
"type": {
"pattern": "TemperatureHandler"
},
"name": {
"type": "string"
},
"config": {
"type": "object",
"properties": {
"sensor_name": {
"type": "string"
},
"cache_duration_ms": {
"type": "integer"
}
},
"additionalProperties": false,
"required": [
"sensor_name",
"cache_duration_ms"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"config"
]
},
{
"properties": {
"type": {
"pattern": "ThermalLoadDriver"
},
"name": {
"type": "string"
},
"config": {
"type": "object",
"properties": {
"temperature_input_configs": {
"type": "array",
"minItems": 1,
"items": {
"type": "object",
"properties": {
"temperature_handler_node_name": {
"type": "string"
},
"onset_temperature_c": {
"type": "number"
},
"reboot_temperature_c": {
"type": "number"
},
"poll_interval_s": {
"type": "number",
"exclusiveMinimum": 0
},
"polls_per_history_entry": {
"type": "number",
"minimum": 0
},
"num_history_entries": {
"type": "number",
"minimum": 0
},
"filter_time_constant_s": {
"type": "number",
"exclusiveMinimum": 0
}
},
"additionalProperties": false,
"required": [
"temperature_handler_node_name",
"onset_temperature_c",
"reboot_temperature_c",
"poll_interval_s",
"filter_time_constant_s"
]
}
}
},
"additionalProperties": false,
"required": [
"temperature_input_configs"
]
},
"dependencies": {
"type": "object",
"properties": {
"platform_metrics_node": {
"type": "string"
},
"system_shutdown_node": {
"type": "string"
},
"thermal_load_notify_nodes": {
"type": "array",
"items": {
"type": "string"
}
},
"temperature_handler_node_names": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false,
"required": [
"platform_metrics_node",
"system_shutdown_node",
"thermal_load_notify_nodes",
"temperature_handler_node_names"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"config",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "ThermalPolicy"
},
"name": {
"type": "string"
},
"dependencies": {
"type": "object",
"properties": {
"platform_metrics_node": {
"type": "string"
},
"system_power_handler_node": {
"type": "string"
},
"temperature_handler_node": {
"type": "string"
},
"thermal_load_notify_nodes": {
"type": "array",
"items": {
"type": "string"
}
},
"cpu_thermal_load_notify_node": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"platform_metrics_node",
"system_power_handler_node",
"temperature_handler_node",
"thermal_load_notify_nodes"
]
},
"config": {
"type": "object",
"properties": {
"thermal_shutdown_temperature": {
"type": "number"
},
"controller_params": {
"type": "object",
"properties": {
"sample_interval": {
"type": "number",
"exclusiveMinimum": 0
},
"filter_time_constant": {
"type": "number",
"exclusiveMinimum": 0
},
"target_temperature": {
"type": "number",
"minimum": 30.0,
"maximum": 110.0
},
"e_integral_min": {
"type": "number",
"maximum": 0
},
"e_integral_max": {
"type": "number",
"minimum": 0
}
},
"additionalProperties": false,
"required": [
"sample_interval",
"filter_time_constant",
"target_temperature",
"e_integral_min",
"e_integral_max"
]
}
},
"additionalProperties": false,
"required": [
"thermal_shutdown_temperature",
"controller_params"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"config",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "ThermalSensorManager"
},
"name": {
"type": "string"
},
"dependencies": {
"type": "object",
"properties": {
"temperature_handler_nodes": {
"type": "array",
"items": {
"type": "string"
}
}
},
"additionalProperties": false,
"required": [
"temperature_handler_nodes"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "ThermalShutdown"
},
"name": {
"type": "string"
},
"dependencies": {
"type": "object",
"properties": {
"platform_metrics_node": {
"type": "string"
},
"system_shutdown_node": {
"type": "string"
},
"temperature_handler_node": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"platform_metrics_node",
"system_shutdown_node",
"temperature_handler_node"
]
},
"config": {
"type": "object",
"properties": {
"thermal_shutdown_temperature_c": {
"type": "number"
},
"poll_interval_s": {
"type": "number"
},
"filter_time_constant_s": {
"type": "number"
}
},
"additionalProperties": false,
"required": [
"thermal_shutdown_temperature_c",
"poll_interval_s",
"filter_time_constant_s"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"config",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "LidShutdown"
},
"name": {
"type": "string"
},
"dependencies": {
"type": "object",
"properties": {
"system_shutdown_node": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"system_shutdown_node"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"dependencies"
]
},
{
"properties": {
"type": {
"pattern": "SyscallHandler"
},
"name": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"type",
"name"
]
},
{
"properties": {
"type": {
"pattern": "SystemPowerModeHandler"
},
"name": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"type",
"name"
]
},
{
"properties": {
"type": {
"pattern": "ThermalStateHandler"
},
"name": {
"type": "string"
},
"config": {
"type": "object",
"properties": {
"thermal_config_path": {
"type": "string"
},
"enable_client_state_connector": {
"type": "boolean"
},
"enable_cpu_thermal_state_connector": {
"type": "boolean"
}
},
"additionalProperties": false,
"required": [
"enable_client_state_connector",
"enable_cpu_thermal_state_connector"
]
},
"dependencies": {
"type": "object",
"properties": {
"platform_metrics_node": {
"type": "string"
}
},
"additionalProperties": false,
"required": [
"platform_metrics_node"
]
}
},
"additionalProperties": false,
"required": [
"type",
"name",
"config"
]
}
]
}
}