xref: /openbmc/phosphor-host-ipmid/scripts/entity-example.md (revision 1ad9da8a7882a643ca28fedbdc614f1855e3669a)
1If your platform requires the entity container map, you can provide a json file of the format:
2
3```
4[
5  {
6     "id" : 1,
7     "containerEntityId" : 2,
8     "containerEntityInstance" : 3,
9     "isList" : false,
10     "isLinked" : false,
11     "entities" : [
12         {"id" : 1, "instance" : 2},
13         {"id" : 1, "instance" : 3},
14         {"id" : 1, "instance" : 4},
15         {"id" : 1, "instance" : 5}
16     ]
17  }
18]
19```
20
21as part of your `phosphor-ipmi-config`
22
23The above json is identical to the original YAML documented below:
24
25```
26# This record has:
27# Container Entity Id and Container Entity Instance = (0x13, 0x81)
28# Contained Entity Id and Contained Entity Instance = (0x0A, 0x1),
29# (0x0A, 0x3), (0x0A, 0x5), (0x0A, 0x7)
30# Entity Record id is the key
310x01:
32  # Container entity contains other entities
33  # Entity Id and entity Instance for the container entity
34  containerEntityId: 0x13
35  containerEntityInstance: 0x81
36  # A record can have contained entities as a four entry list or as upto
37  # two ranges of entity instances; this record has contained entities
38  # as a four entry list
39  isList: "true"
40  # Records can be linked if necessary to extend the number of contained
41  # entities within a container entity; this record is not linked
42  isLinked: "false"
43  entityId1: 0x0A
44  entityInstance1: 0x1
45  entityId2: 0x0A
46  entityInstance2: 0x3
47  entityId3: 0x0A
48  entityInstance3: 0x5
49  entityId4: 0x0A
50  entityInstance4: 0x7
51
52# The below two records have:
53# Container Entity Id and Container Entity Instance = (0x18, 0x2)
54# Contained Entity Id and Contained Entity Instance = (0x1D, 0x1),
55# (0x1D, 0x4), (0x1D, 0x6), (0x2B, 0x1), (0x2B, 0x3), (0x0F, 0x1),
56# (0x0F, 0x3), (0x10, 0x5)
570x02:
58  containerEntityId: 0x18
59  containerEntityInstance: 0x2
60  # This record  has contained entities as a four entry list
61  isList: "true"
62  # This record is linked with the below record; this record and the
63  # below record have the same container entity Id and container entity
64  # instance;
65  isLinked: "true"
66  entityId1: 0x1D
67  entityInstance1: 0x1
68  entityId2: 0x1D
69  entityInstance2: 0x4
70  entityId3: 0x1D
71  entityInstance3: 0x6
72  entityId4: 0x2B
73  entityInstance4: 0x1
74
750x03:
76  containerEntityId: 0x18
77  containerEntityInstance: 0x2
78  # This record  has contained entities as a four entry list
79  isList: "true"
80  # This record is linked with the above record; this record and the
81  # above record have the same container entity Id and container entity
82  # instance
83  isLinked: "true"
84  entityId1: 0x2B
85  entityInstance1: 0x3
86  entityId2: 0x0F
87  entityInstance2: 0x1
88  entityId3: 0x0F
89  entityInstance3: 0x3
90  entityId4: 0x10
91  entityInstance4: 0x5
92
93# This record has:
94# Container Entity Id and Container Entity Instance = (0x1E, 0x1)
95# Contained Entity Id and Contained Entity Instance = (0x20, 0x1),
96# (0x20, 0x2), (0x20, 0x3), (0x20, 0x7), (0x20, 0x8), (0x20, 0x9)
970x04:
98  containerEntityId: 0x1E
99  containerEntityInstance: 0x1
100  # This record has contained entities as two ranges of entity instances
101  isList: "false"
102  # This record is not linked
103  isLinked: "false"
104  entityId1: 0x20
105  entityInstance1: 0x1
106  entityId2: 0x20
107  entityInstance2: 0x3
108  entityId3: 0x20
109  entityInstance3: 0x7
110  entityId4: 0x20
111  entityInstance4: 0x9
112
113# The below two records have:
114# Container Entity Id and Container Entity Instance = (0x1E, 0x3)
115# Contained Entity Id and Contained Entity Instance = (0x20, 0x1),
116# (0x20, 0x2), (0x20, 0x3), (0x20, 0x6), (0x20, 0x7), (0x20, 0x8),
117# (0x20, 0xA), (0x20, 0xB), (0x20, 0xD), (0x20, 0xE), (0x20, 0xF)
1180x05:
119  containerEntityId: 0x1E
120  containerEntityInstance: 0x03
121  # This record has contained entities as two ranges of entity instances
122  isList: "false"
123  # This record is linked with the below record; this record and the
124  # below record have the same container entity Id and container entity
125  # instance;
126  isLinked: "true"
127  entityId1: 0x20
128  entityInstance1: 0x1
129  entityId2: 0x20
130  entityInstance2: 0x3
131  entityId3: 0x20
132  entityInstance3: 0x6
133  entityId4: 0x20
134  entityInstance4: 0x8
135
1360x06:
137  containerEntityId: 0x1E
138  containerEntityInstance: 0x03
139  # This record has contained entities as two ranges of entity instances
140  isList: "false"
141  # This record is linked with the above record; this record and the
142  # above record have the same container entity Id and container entity
143  # instance;
144  isLinked: "true"
145  entityId1: 0x20
146  entityInstance1: 0xA
147  entityId2: 0x20
148  entityInstance2: 0xB
149  entityId3: 0x20
150  entityInstance3: 0xD
151  entityId4: 0x20
152  entityInstance4: 0xF
153```
154