summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rwxr-xr-xled.yaml239
-rw-r--r--ledlayout.hpp2
-rwxr-xr-xparse_led.py16
3 files changed, 135 insertions, 122 deletions
diff --git a/led.yaml b/led.yaml
index a4e1f89..cced3ab 100755
--- a/led.yaml
+++ b/led.yaml
@@ -1,119 +1,122 @@
-EnclosureIdentify:
- EnclosureIdentifyFront:
- action: Blink
- EnclosureIdentifyBack:
- action: Blink
-
EnclosureFault:
- EnclosureFaultFront:
- action: 'On'
- EnclosureFaultBack:
- action: 'On'
-
-PowerSupply1Identify:
- PowerSupply_1:
- action: Blink
- EnclosureIdentifyFront:
- action: 'On'
- EnclosureIdentifyBack:
- action: 'On'
-
-PowerSupply1Fault:
- PowerSupply_1:
- action: 'On'
- EnclosureFaultFront:
- action: 'On'
- EnclosureFaultBack:
- action: 'On'
-
-PowerSupply2Identify:
- PowerSupply_2:
- action: Blink
- EnclosureIdentifyFront:
- action: 'On'
- EnclosureIdentifyBack:
- action: 'On'
-
-PowerSupply2Fault:
- PowerSupply_2:
- action: 'On'
- EnclosureFaultFront:
- action: 'On'
- EnclosureFaultBack:
- action: 'On'
-
-FanA1Identify:
- Fan_A1:
- action: Blink
- EnclosureIdentifyFront:
- action: 'On'
- EnclosureIdentifyBack:
- action: 'On'
-
-FanA1Fault:
- Fan_A1:
- action: 'On'
- EnclosureFaultFront:
- action: 'On'
- EnclosureFaultBack:
- action: 'On'
-
-FanA2Identify:
- Fan_A2:
- action: Blink
- EnclosureIdentifyFront:
- action: 'On'
- EnclosureIdentifyBack:
- action: 'On'
-
-FanA2Fault:
- Fan_A2:
- action: 'On'
- EnclosureFaultFront:
- action: 'On'
- EnclosureFaultBack:
- action: 'On'
-
-FanA3Identify:
- Fan_A3:
- action: Blink
- EnclosureIdentifyFront:
- action: 'On'
- EnclosureIdentifyBack:
- action: 'On'
-
-FanA3Fault:
- Fan_A3:
- action: 'On'
- EnclosureFaultFront:
- action: 'On'
- EnclosureFaultBack:
- action: 'On'
-
-FanA4Identify:
- Fan_A4:
- action: Blink
- EnclosureIdentifyFront:
- action: 'On'
- EnclosureIdentifyBack:
- action: 'On'
-
-FanA4Fault:
- Fan_A4:
- action: 'On'
- EnclosureFaultFront:
- action: 'On'
- EnclosureFaultBack:
- action: 'On'
-
-PowerOn:
- OpPanelFront:
- action: 'On'
- PanelPowerButtOnNote1:
- action: 'On'
-
-PowerOff:
- OpPanelFront:
- action: Blink
- PanelPowerButtOnNote1:
- action: Blink
+ rear-fault-led:
+ Action: 'On'
+ DutyOn: 50
+ Period: 0
+ front-fault-led:
+ Action: 'On'
+ DutyOn: 50
+ Period: 0
+EnclosureIdentify:
+ front-id-led:
+ Action: 'Blink'
+ DutyOn: 50
+ Period: 1000
+ rear-id-led:
+ DutyOn: 50
+ Action: 'Blink'
+ Period: 1000
+Fan0Fault:
+ front-fault-led:
+ Period: 0
+ DutyOn: 50
+ Action: 'On'
+ fan0:
+ DutyOn: 50
+ Action: 'On'
+ Period: 0
+ rear-fault-led:
+ Period: 0
+ DutyOn: 50
+ Action: 'On'
+Fan0Identify:
+ front-id-led:
+ Period: 1000
+ Action: 'Blink'
+ DutyOn: 50
+ rear-id-led:
+ Period: 1000
+ Action: 'Blink'
+ DutyOn: 50
+ fan0:
+ DutyOn: 50
+ Action: 'Blink'
+ Period: 1000
+Fan1Fault:
+ front-fault-led:
+ Period: 0
+ Action: 'On'
+ DutyOn: 50
+ fan1:
+ Period: 0
+ DutyOn: 50
+ Action: 'On'
+ rear-fault-led:
+ Period: 0
+ Action: 'On'
+ DutyOn: 50
+Fan1Identify:
+ front-id-led:
+ Period: 1000
+ DutyOn: 50
+ Action: 'Blink'
+ fan1:
+ Period: 1000
+ DutyOn: 50
+ Action: 'Blink'
+ rear-id-led:
+ DutyOn: 50
+ Action: 'Blink'
+ Period: 1000
+Fan2Fault:
+ fan2:
+ Action: 'On'
+ DutyOn: 50
+ Period: 0
+ rear-fault-led:
+ Period: 0
+ Action: 'On'
+ DutyOn: 50
+ front-fault-led:
+ DutyOn: 50
+ Action: 'On'
+ Period: 0
+Fan2Identify:
+ fan2:
+ DutyOn: 50
+ Action: 'Blink'
+ Period: 1000
+ front-id-led:
+ Period: 1000
+ Action: 'Blink'
+ DutyOn: 50
+ rear-id-led:
+ DutyOn: 50
+ Action: 'Blink'
+ Period: 1000
+Fan3Fault:
+ front-fault-led:
+ DutyOn: 50
+ Action: 'On'
+ Period: 0
+ rear-fault-led:
+ Action: 'On'
+ DutyOn: 50
+ Period: 0
+ fan3:
+ DutyOn: 50
+ Action: 'On'
+ Period: 0
+Fan3Identify:
+ rear-id-led:
+ Action: 'Blink'
+ DutyOn: 50
+ Period: 1000
+ front-id-led:
+ Action: 'Blink'
+ DutyOn: 50
+ Period: 1000
+ fan3:
+ DutyOn: 50
+ Action: 'On'
+ Period: 0
diff --git a/ledlayout.hpp b/ledlayout.hpp
index d3d0e40..998feb5 100644
--- a/ledlayout.hpp
+++ b/ledlayout.hpp
@@ -28,6 +28,8 @@ namespace Layout
{
std::string name;
Action action;
+ uint8_t dutyOn;
+ uint16_t period;
// Needed for inserting elements into sets
bool operator<(const LedAction& right) const
diff --git a/parse_led.py b/parse_led.py
index 35f67aa..c86764c 100755
--- a/parse_led.py
+++ b/parse_led.py
@@ -15,15 +15,23 @@ if __name__ == '__main__':
ofile.write(' std::set<phosphor::led::Layout::LedAction>>')
ofile.write(' systemLedMap = {\n\n')
for group in ifile.iterkeys():
- # Value of this group is a std::set<string, led structure>
+ # This section generates an std::map of LedGroupNames to std::set
+ # of LEDs containing the name and properties
ledset = ifile[group]
ofile.write(' {\"' + "/xyz/openbmc_project/ledmanager/groups/" + group + '\",{\n')
for led_dict, list_dict in ledset.iteritems():
+ # Need this to make sure the LED name is printed once
+ name_printed = False
for name, value in list_dict.iteritems():
- if group and led_dict and name and value:
- ofile.write(' {\"' + led_dict + '\",')
- ofile.write('phosphor::led::Layout::' + value + '},\n')
+ if group and led_dict and name:
+ if name_printed is False:
+ ofile.write(' {\"' + led_dict + '\",')
+ name_printed = True
+ if name == 'Action':
+ ofile.write('phosphor::led::Layout::')
+ ofile.write(str(value) + ',')
+ ofile.write('},\n')
ofile.write(' }},\n')
ofile.write('};\n')
OpenPOWER on IntegriCloud