1 #include "ledlayout.hpp"
2 
3 static const phosphor::led::GroupMap singleLedOn = {
4     {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
5      {
6          {"One", phosphor::led::Layout::Action::On, 0, 0,
7           phosphor::led::Layout::Action::Blink},
8      }},
9 };
10 
11 static const phosphor::led::GroupMap singleLedBlink = {
12     {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
13      {
14          {"One", phosphor::led::Layout::Action::Blink, 0, 0,
15           phosphor::led::Layout::Action::Blink},
16      }},
17 };
18 
19 static const phosphor::led::GroupMap singleLedBlinkOverrideOn = {
20     {"/xyz/openbmc_project/ledmanager/groups/SingleLed",
21      {
22          {"One", phosphor::led::Layout::Action::Blink, 0, 0,
23           phosphor::led::Layout::Action::On},
24      }},
25 };
26 
27 static const phosphor::led::GroupMap multipleLedsOn = {
28     {"/xyz/openbmc_project/ledmanager/groups/MultipleLeds",
29      {
30          {"One", phosphor::led::Layout::Action::On, 0, 0,
31           phosphor::led::Layout::Action::On},
32          {"Two", phosphor::led::Layout::Action::On, 0, 0,
33           phosphor::led::Layout::Action::On},
34          {"Three", phosphor::led::Layout::Action::On, 0, 0,
35           phosphor::led::Layout::Action::On},
36      }},
37 };
38 
39 static const phosphor::led::GroupMap multipleLedsBlink = {
40     {"/xyz/openbmc_project/ledmanager/groups/MultipleLeds",
41      {
42          {"One", phosphor::led::Layout::Action::Blink, 0, 0,
43           phosphor::led::Layout::Action::Blink},
44          {"Two", phosphor::led::Layout::Action::Blink, 0, 0,
45           phosphor::led::Layout::Action::Blink},
46          {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
47           phosphor::led::Layout::Action::Blink},
48      }},
49 };
50 
51 static const phosphor::led::GroupMap multipleLedsOnAndBlink = {
52     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsMix",
53      {
54          {"One", phosphor::led::Layout::Action::Blink, 0, 0,
55           phosphor::led::Layout::Action::Blink},
56          {"Two", phosphor::led::Layout::Action::On, 0, 0,
57           phosphor::led::Layout::Action::Blink},
58          {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
59           phosphor::led::Layout::Action::On},
60          {"Four", phosphor::led::Layout::Action::On, 0, 0,
61           phosphor::led::Layout::Action::Blink},
62          {"Five", phosphor::led::Layout::Action::On, 0, 0,
63           phosphor::led::Layout::Action::Blink},
64      }},
65 };
66 
67 static const phosphor::led::GroupMap twoGroupsWithDistinctLEDsOn = {
68     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
69      {
70          {"One", phosphor::led::Layout::Action::On, 0, 0,
71           phosphor::led::Layout::Action::Blink},
72          {"Two", phosphor::led::Layout::Action::On, 0, 0,
73           phosphor::led::Layout::Action::On},
74          {"Three", phosphor::led::Layout::Action::On, 0, 0,
75           phosphor::led::Layout::Action::Blink},
76      }},
77     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
78      {
79          {"Four", phosphor::led::Layout::Action::On, 0, 0,
80           phosphor::led::Layout::Action::Blink},
81          {"Five", phosphor::led::Layout::Action::On, 0, 0,
82           phosphor::led::Layout::Action::Blink},
83          {"Six", phosphor::led::Layout::Action::On, 0, 0,
84           phosphor::led::Layout::Action::On},
85      }},
86 };
87 
88 static const phosphor::led::GroupMap twoGroupsWithOneComonLEDOn = {
89     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
90      {
91          {"One", phosphor::led::Layout::Action::On, 0, 0,
92           phosphor::led::Layout::Action::On},
93          {"Two", phosphor::led::Layout::Action::On, 0, 0,
94           phosphor::led::Layout::Action::On},
95          {"Three", phosphor::led::Layout::Action::On, 0, 0,
96           phosphor::led::Layout::Action::On},
97      }},
98     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
99      {
100          {"Four", phosphor::led::Layout::Action::On, 0, 0,
101           phosphor::led::Layout::Action::On},
102          {"Three", phosphor::led::Layout::Action::On, 0, 0,
103           phosphor::led::Layout::Action::On},
104          {"Six", phosphor::led::Layout::Action::On, 0, 0,
105           phosphor::led::Layout::Action::On},
106      }},
107 };
108 
109 static const phosphor::led::GroupMap
110     twoGroupsWithOneComonLEDOnOneLEDBlinkPriority = {
111         {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
112          {
113              {"One", phosphor::led::Layout::Action::On, 0, 0,
114               phosphor::led::Layout::Action::On},
115              {"Two", phosphor::led::Layout::Action::On, 0, 0,
116               phosphor::led::Layout::Action::On},
117              {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
118               phosphor::led::Layout::Action::Blink},
119          }},
120         {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
121          {
122              {"Four", phosphor::led::Layout::Action::On, 0, 0,
123               phosphor::led::Layout::Action::On},
124              {"Three", phosphor::led::Layout::Action::On, 0, 0,
125               phosphor::led::Layout::Action::Blink},
126              {"Six", phosphor::led::Layout::Action::On, 0, 0,
127               phosphor::led::Layout::Action::On},
128          }},
129 };
130 
131 static const phosphor::led::GroupMap twoGroupsWithOneComonLEDOnPriority = {
132     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
133      {
134          {"One", phosphor::led::Layout::Action::On, 0, 0,
135           phosphor::led::Layout::Action::On},
136          {"Two", phosphor::led::Layout::Action::On, 0, 0,
137           phosphor::led::Layout::Action::On},
138          {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
139           phosphor::led::Layout::Action::On},
140      }},
141     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
142      {
143          {"Four", phosphor::led::Layout::Action::On, 0, 0,
144           phosphor::led::Layout::Action::On},
145          {"Three", phosphor::led::Layout::Action::On, 0, 0,
146           phosphor::led::Layout::Action::On},
147          {"Six", phosphor::led::Layout::Action::On, 0, 0,
148           phosphor::led::Layout::Action::On},
149      }},
150 };
151 
152 static const phosphor::led::GroupMap twoGroupsWithMultiplComonLEDOn = {
153     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
154      {
155          {"One", phosphor::led::Layout::Action::On, 0, 0,
156           phosphor::led::Layout::Action::On},
157          {"Two", phosphor::led::Layout::Action::On, 0, 0,
158           phosphor::led::Layout::Action::On},
159          {"Three", phosphor::led::Layout::Action::On, 0, 0,
160           phosphor::led::Layout::Action::On},
161      }},
162     {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
163      {
164          {"Two", phosphor::led::Layout::Action::On, 0, 0,
165           phosphor::led::Layout::Action::On},
166          {"Six", phosphor::led::Layout::Action::On, 0, 0,
167           phosphor::led::Layout::Action::On},
168          {"Three", phosphor::led::Layout::Action::On, 0, 0,
169           phosphor::led::Layout::Action::On},
170          {"Seven", phosphor::led::Layout::Action::On, 0, 0,
171           phosphor::led::Layout::Action::On},
172      }},
173 };
174 
175 static const phosphor::led::GroupMap
176     twoGroupsWithMultipleComonLEDInDifferentState = {
177         {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
178          {
179              {"One", phosphor::led::Layout::Action::On, 0, 0,
180               phosphor::led::Layout::Action::On},
181              {"Two", phosphor::led::Layout::Action::Blink, 0, 0,
182               phosphor::led::Layout::Action::On},
183              {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
184               phosphor::led::Layout::Action::On},
185              {"Four", phosphor::led::Layout::Action::On, 0, 0,
186               phosphor::led::Layout::Action::On},
187          }},
188         {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
189          {
190              {"Two", phosphor::led::Layout::Action::On, 0, 0,
191               phosphor::led::Layout::Action::On},
192              {"Three", phosphor::led::Layout::Action::Blink, 0, 0,
193               phosphor::led::Layout::Action::On},
194              {"Five", phosphor::led::Layout::Action::On, 0, 0,
195               phosphor::led::Layout::Action::On},
196              {"Six", phosphor::led::Layout::Action::On, 0, 0,
197               phosphor::led::Layout::Action::On},
198          }},
199 };
200 
201 static const phosphor::led::GroupMap
202     twoGroupsWithMultipleComonLEDInDifferentStateDiffPriority = {
203         {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsASet",
204          {
205              {"One", phosphor::led::Layout::Action::On, 0, 0,
206               phosphor::led::Layout::Action::On},
207              {"Two", phosphor::led::Layout::Action::Blink, 0, 0,
208               phosphor::led::Layout::Action::On},
209              {"Three", phosphor::led::Layout::Action::On, 0, 0,
210               phosphor::led::Layout::Action::Blink},
211              {"Four", phosphor::led::Layout::Action::On, 0, 0,
212               phosphor::led::Layout::Action::On},
213              {"Ten", phosphor::led::Layout::Action::Blink, 0, 0,
214               phosphor::led::Layout::Action::Blink},
215          }},
216         {"/xyz/openbmc_project/ledmanager/groups/MultipleLedsBSet",
217          {
218              {"Two", phosphor::led::Layout::Action::On, 0, 0,
219               phosphor::led::Layout::Action::On},
220              {"Three", phosphor::led::Layout::Action::On, 0, 0,
221               phosphor::led::Layout::Action::Blink},
222              {"Five", phosphor::led::Layout::Action::On, 0, 0,
223               phosphor::led::Layout::Action::On},
224              {"Six", phosphor::led::Layout::Action::On, 0, 0,
225               phosphor::led::Layout::Action::On},
226              {"Ten", phosphor::led::Layout::Action::On, 0, 0,
227               phosphor::led::Layout::Action::Blink},
228          }},
229 };
230