blob: 4ecb6ec35b184e03dfdf6f2f814835fd0f99c09b [file] [log] [blame]
Brad Bishop4afe7082020-10-01 09:59:26 -04001{
2 "$schema": "http://json-schema.org/draft-07/schema#",
3 "definitions": {
4 "IBMCFFPSConnector": {
5 "title": "IBM Common Form Factor (CFF) Power Supply connectors",
Andrew Jefferybb8aa372024-03-20 11:24:32 +10306 "description": "A schema associating an I2C endpoint and a GPIO for IBM CFF power supplies. In the entity-manager detector-configuration-reactor architecture, the daemon that supports IBM CFFPS is both a detector and reactor. It probes the endpoints described by this schema (reactor) and publishes the CFFPS FRU information (detector).",
Brad Bishop4afe7082020-10-01 09:59:26 -04007 "type": "object",
8 "properties": {
9 "Name": {
10 "type": "string"
11 },
12 "Type": {
Patrick Williamsfa8ee872022-12-07 07:00:42 -060013 "enum": ["IBMCFFPSConnector"]
Brad Bishop4afe7082020-10-01 09:59:26 -040014 },
15 "I2CBus": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103016 "description": "The I2C address on which to probe for a CFFPS.",
Brad Bishop4afe7082020-10-01 09:59:26 -040017 "type": "number"
18 },
19 "I2CAddress": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103020 "description": "The I2C bus number on which to probe for a CFFPS.",
Brad Bishop4afe7082020-10-01 09:59:26 -040021 "type": "number"
22 },
23 "NamedPresenceGpio": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103024 "description": "The name of the GPIO to monitor that indicates CFFPS plug state.",
Brad Bishop4afe7082020-10-01 09:59:26 -040025 "type": "string"
26 }
27 },
28 "required": [
29 "Name",
30 "Type",
31 "I2CBus",
32 "I2CAddress",
33 "NamedPresenceGpio"
34 ]
Brad Bishop648ae632020-10-09 08:20:12 -040035 },
36 "IBMCompatibleSystem": {
37 "title": "System compatibility",
Andrew Jefferybb8aa372024-03-20 11:24:32 +103038 "description": "Devicetree-like compatibility strings for systems, where a 'system' is roughly defined as the combination of a chassis and a mainboard. The strings should be used by applications to match the entity with entries or configuration in a hardware database. Strings appear in the list from most specific to most general. This allows an entity to express compatibility with a family of similar systems, in turn allowing an application to match a variety of systems with a single IBMCompatibleSystem entry. The recommended entry format is 'manufacturer,model' where the manufacturer is a string describing the name of the manufacturer and model specifies the model number.",
Brad Bishop648ae632020-10-09 08:20:12 -040039 "type": "object",
40 "properties": {
41 "Name": {
42 "type": "string"
43 },
44 "Type": {
Patrick Williamsfa8ee872022-12-07 07:00:42 -060045 "enum": ["IBMCompatibleSystem"]
Brad Bishop648ae632020-10-09 08:20:12 -040046 },
47 "Names": {
48 "type": "array",
49 "items": {
50 "enum": [
Adriana Kobylak0b5b1222023-01-31 14:15:27 -060051 "ibm,bonnell",
Andrew Geisslerc7c5de72020-12-16 09:47:21 -060052 "ibm,everest",
Brad Bishop5f4a0262020-10-09 08:30:19 -040053 "ibm,rainier-2u",
Andrew Geissler3e55ec42021-03-11 14:04:27 -060054 "ibm,rainier-1s4u",
Brad Bishop5f4a0262020-10-09 08:30:19 -040055 "ibm,rainier-4u",
56 "ibm,rainier"
Brad Bishop648ae632020-10-09 08:20:12 -040057 ]
58 }
59 }
60 },
Patrick Williamsfa8ee872022-12-07 07:00:42 -060061 "required": ["Name", "Type", "Names"]
Chris Cain04b0b012021-12-14 16:19:05 -060062 },
63 "PowerModeProperties": {
64 "title": "PowerMode Properties",
Andrew Jefferybb8aa372024-03-20 11:24:32 +103065 "description": "The default PowerMode properties for the system",
Chris Cain04b0b012021-12-14 16:19:05 -060066 "type": "object",
67 "properties": {
68 "PowerMode": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103069 "description": "The default PowerMode to use prior to being set by a user.",
Chris Cain04b0b012021-12-14 16:19:05 -060070 "enum": ["Static", "PowerSaving", "MaximumPerformance"]
71 },
72 "IdlePowerSaverEnabled": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103073 "description": "Default state of idle power saver mode. Setting to true will enable idle power saver.",
Chris Cain04b0b012021-12-14 16:19:05 -060074 "type": "boolean"
75 },
76 "EnterUtilizationPercent": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103077 "description": "The default percentage of utilization that the system shall be lower than to enter idle power save. The value is in integer percentage values (10 = 10%). EnterUtilizationPercent must be <= ExitUtilizationPercent",
Chris Cain04b0b012021-12-14 16:19:05 -060078 "type": "number",
79 "minimum": 1,
80 "maximum": 95
81 },
82 "EnterUtilizationDwellTime": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103083 "description": "The default duration in seconds that the system is below the EnterUtilizationPercent before idle power save is activated.",
Chris Cain04b0b012021-12-14 16:19:05 -060084 "type": "number",
85 "minimum": 10,
86 "maximum": 600
87 },
88 "ExitUtilizationPercent": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103089 "description": "The default percentage of utilization that the system shall be above in order to exit idle power save. The value is in integer percentage values (10 = 10%). ExitUtilizationPercent must be >= EnterUtilizationPercent",
Chris Cain04b0b012021-12-14 16:19:05 -060090 "type": "number",
91 "minimum": 5,
92 "maximum": 95
93 },
94 "ExitUtilizationDwellTime": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103095 "description": "The default duration in seconds that the system is above the ExitUtilizationPercent before idle power save is deactivated.",
Chris Cain04b0b012021-12-14 16:19:05 -060096 "type": "number",
97 "minimum": 10,
98 "maximum": 600
99 }
100 },
101 "required": ["PowerMode", "IdlePowerSaverEnabled"]
Brad Bishop4afe7082020-10-01 09:59:26 -0400102 }
103 }
104}