Add Systemd unit files for skeleton applications

Preparing to start these with systemd.

Change-Id: I39a99242cee3e9e17e51356521d29bab5ad7d399
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/obmc/power_control b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/obmc/power_control
new file mode 100644
index 0000000..8db8890
--- /dev/null
+++ b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/obmc/power_control
@@ -0,0 +1,2 @@
+POLL_INTERVAL="3000"
+PGOOD_TIMEOUT="10"
diff --git a/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-start@.service b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-start@.service
new file mode 100644
index 0000000..cae414f
--- /dev/null
+++ b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-start@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Start Power%i
+Wants=obmc-power-start@%i.target
+Before=obmc-power-start@%i.target
+After=obmc-power-start-pre@%i.target
+After=obmc-fan-control.target
+Wants=mapper-wait@-org-openbmc-control-power%i.service
+After=mapper-wait@-org-openbmc-control-power%i.service
+Conflicts=obmc-chassis-stop@%i.target
+
+[Service]
+RemainAfterExit=yes
+ExecStart={sbindir}/mapper call /org/openbmc/control/power%i org.openbmc.control.Power setPowerState i 1
+
+[Install]
+WantedBy=obmc-chassis-start@%i.target
diff --git a/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-stop@.service b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-stop@.service
new file mode 100644
index 0000000..f370a3c
--- /dev/null
+++ b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-stop@.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Stop Power%i
+Wants=obmc-power-stop@%i.target
+Before=obmc-power-stop@%i.target
+After=obmc-power-stop-pre@%i.target
+Wants=mapper-wait@-org-openbmc-control-power%i.service
+After=mapper-wait@-org-openbmc-control-power%i.service
+Conflicts=obmc-chassis-start@%i.target
+
+[Service]
+RemainAfterExit=yes
+ExecStart={sbindir}/mapper call /org/openbmc/control/power%i org.openbmc.control.Power setPowerState i 0
+
+[Install]
+WantedBy=obmc-chassis-stop@%i.target
diff --git a/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-off@.service b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-off@.service
new file mode 100644
index 0000000..4315140
--- /dev/null
+++ b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-off@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Wait for Power%i to turn off
+Before=obmc-power-off@%i.target
+Wants=obmc-power-stop@%i.target
+Before=obmc-power-stop@%i.target
+Wants=mapper-wait@-org-openbmc-control-power%i.service
+After=mapper-wait@-org-openbmc-control-power%i.service
+Conflicts=obmc-chassis-start@%i.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart={sbindir}/pgood_wait /org/openbmc/control/power%i off
+
+[Install]
+WantedBy=obmc-chassis-stop@%i.target
diff --git a/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-on@.service b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-on@.service
new file mode 100644
index 0000000..16b83c0
--- /dev/null
+++ b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-on@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Wait for Power%i to turn on
+Before=obmc-power-on@%i.target
+Wants=obmc-power-start@%i.target
+Before=obmc-power-start@%i.target
+Wants=mapper-wait@-org-openbmc-control-power%i.service
+After=mapper-wait@-org-openbmc-control-power%i.service
+Conflicts=obmc-chassis-stop@%i.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart={sbindir}/pgood_wait /org/openbmc/control/power%i on
+
+[Install]
+WantedBy=obmc-chassis-start@%i.target
diff --git a/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/org.openbmc.control.Power@.service b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/org.openbmc.control.Power@.service
new file mode 100644
index 0000000..4b98183
--- /dev/null
+++ b/meta-phosphor/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/org.openbmc.control.Power@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Phosphor Power%i Control
+Wants=mapper-wait@-org-openbmc-managers-System.service
+After=mapper-wait@-org-openbmc-managers-System.service
+
+[Service]
+EnvironmentFile={envfiledir}/obmc/power_control
+Restart=always
+ExecStart={sbindir}/power_control.exe $POLL_INTERVAL $PGOOD_TIMEOUT
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}