blob: 4c278e2b8ef2ec2e61d42651adcab8afbad11dda [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",
Matt Spinler6ef5f712024-05-13 11:19:40 -050053 "ibm,fuji",
Brad Bishop5f4a0262020-10-09 08:30:19 -040054 "ibm,rainier-2u",
Andrew Geissler3e55ec42021-03-11 14:04:27 -060055 "ibm,rainier-1s4u",
Brad Bishop5f4a0262020-10-09 08:30:19 -040056 "ibm,rainier-4u",
57 "ibm,rainier"
Brad Bishop648ae632020-10-09 08:20:12 -040058 ]
59 }
60 }
61 },
Patrick Williamsfa8ee872022-12-07 07:00:42 -060062 "required": ["Name", "Type", "Names"]
Chris Cain04b0b012021-12-14 16:19:05 -060063 },
64 "PowerModeProperties": {
65 "title": "PowerMode Properties",
Andrew Jefferybb8aa372024-03-20 11:24:32 +103066 "description": "The default PowerMode properties for the system",
Chris Cain04b0b012021-12-14 16:19:05 -060067 "type": "object",
68 "properties": {
69 "PowerMode": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103070 "description": "The default PowerMode to use prior to being set by a user.",
Chris Cain04b0b012021-12-14 16:19:05 -060071 "enum": ["Static", "PowerSaving", "MaximumPerformance"]
72 },
73 "IdlePowerSaverEnabled": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103074 "description": "Default state of idle power saver mode. Setting to true will enable idle power saver.",
Chris Cain04b0b012021-12-14 16:19:05 -060075 "type": "boolean"
76 },
77 "EnterUtilizationPercent": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103078 "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 -060079 "type": "number",
80 "minimum": 1,
81 "maximum": 95
82 },
83 "EnterUtilizationDwellTime": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103084 "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 -060085 "type": "number",
86 "minimum": 10,
87 "maximum": 600
88 },
89 "ExitUtilizationPercent": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103090 "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 -060091 "type": "number",
92 "minimum": 5,
93 "maximum": 95
94 },
95 "ExitUtilizationDwellTime": {
Andrew Jefferybb8aa372024-03-20 11:24:32 +103096 "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 -060097 "type": "number",
98 "minimum": 10,
99 "maximum": 600
100 }
101 },
102 "required": ["PowerMode", "IdlePowerSaverEnabled"]
Brad Bishop4afe7082020-10-01 09:59:26 -0400103 }
104 }
105}