blob: c076bb76319b4ef62d63b96e125ebb7c9b668e75 [file] [log] [blame]
Oliver Brewka4a6f4052025-07-16 15:26:39 +02001{
2 "$schema": "http://json-schema.org/draft-07/schema#",
3 "$defs": {
4 "Port": {
5 "description": "https://github.com/openbmc/docs/blob/master/designs/physical-topology.md",
6 "additionalProperties": false,
7 "properties": {
8 "Name": {
9 "$ref": "#/$defs/Types/Name"
10 },
11 "Type": {
12 "description": "This enum may be extended as described in the design",
13 "type": "string",
14 "enum": ["MB Upstream Port"]
15 }
16 },
17 "required": ["Name", "Type"],
18 "type": "object"
19 },
20 "DownstreamPort": {
21 "description": "https://github.com/openbmc/docs/blob/master/designs/physical-topology.md",
22 "additionalProperties": false,
23 "properties": {
24 "Name": {
25 "$ref": "#/$defs/Types/Name"
26 },
27 "ConnectsToType": {
28 "description": "Should be equal to the 'Type' property on the upstream port",
29 "$ref": "#/$defs/Types/ConnectsToType"
30 },
31 "PowerPort": {
32 "$ref": "#/$defs/Types/PowerPort"
33 },
34 "Type": {
35 "type": "string",
36 "const": "DownstreamPort"
37 }
38 },
39 "required": ["Name", "Type", "ConnectsToType"],
40 "type": "object"
41 },
42 "Types": {
43 "ConnectsToType": {
44 "type": "string",
45 "const": "MB Upstream Port"
46 },
47 "Name": {
48 "type": "string"
49 },
50 "PowerPort": {
51 "type": "boolean"
52 }
53 }
54 }
55}