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/common/recipes-phosphor/host-ipmid/host-ipmid-fru/obmc-read-eeprom@.service b/common/recipes-phosphor/host-ipmid/host-ipmid-fru/obmc-read-eeprom@.service
new file mode 100644
index 0000000..95b5791
--- /dev/null
+++ b/common/recipes-phosphor/host-ipmid/host-ipmid-fru/obmc-read-eeprom@.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Read %I EEPROM
+Wants=mapper-wait@-org-openbmc-managers-System.service
+After=mapper-wait@-org-openbmc-managers-System.service
+Wants=mapper-wait@-org-openbmc-inventory-%i.service
+After=mapper-wait@-org-openbmc-inventory-%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+EnvironmentFile={envfiledir}/obmc/eeproms/%I
+ExecStart={sbindir}/phosphor-read-eeprom --eeprom $SYSFS_PATH --fruid $FRUID
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-button-power/org.openbmc.buttons.Power@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-button-power/org.openbmc.buttons.Power@.service
new file mode 100644
index 0000000..2eb36d6
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-button-power/org.openbmc.buttons.Power@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Phosphor Power Button%i
+Wants=mapper-wait@-org-openbmc-managers-System.service
+After=mapper-wait@-org-openbmc-managers-System.service
+
+[Service]
+Restart=always
+ExecStart={sbindir}/button_power.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-button-reset/org.openbmc.buttons.reset@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-button-reset/org.openbmc.buttons.reset@.service
new file mode 100644
index 0000000..5b060e4
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-button-reset/org.openbmc.buttons.reset@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Phosphor Reset Button%i
+Wants=mapper-wait@-org-openbmc-managers-System.service
+After=mapper-wait@-org-openbmc-managers-System.service
+
+[Service]
+Restart=always
+ExecStart={sbindir}/button_reset.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-control-chassis/org.openbmc.control.Chassis@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-control-chassis/org.openbmc.control.Chassis@.service
new file mode 100644
index 0000000..1620fe1
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-control-chassis/org.openbmc.control.Chassis@.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Phosphor Chassis%i Control
+
+[Service]
+Restart=always
+ExecStart={sbindir}/chassis_control.py
+Type=dbus
+BusName={BUSNAME}
+Environment="PYTHONUNBUFFERED=1"
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-hostcheckstop/org.openbmc.control.Checkstop@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-hostcheckstop/org.openbmc.control.Checkstop@.service
new file mode 100644
index 0000000..3b169c5
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-hostcheckstop/org.openbmc.control.Checkstop@.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Phosphor Host%i Checkstop Monitor
+
+[Service]
+Restart=always
+ExecStart={sbindir}/host_checkstop.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-mgr-inventory/obmc-sync-inventory-item@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-mgr-inventory/obmc-sync-inventory-item@.service
new file mode 100644
index 0000000..33b1166
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-mgr-inventory/obmc-sync-inventory-item@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Sync %I
+Wants=obmc-read-eeprom@%i.service
+After=obmc-read-eeprom@%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+EnvironmentFile={envfiledir}/obmc/sync_inventory_item/%I
+ExecStart={sbindir}/sync_inventory_items.py -t $FRU_TYPE -n $FRU_NAME -p ${{PROPERTY}} -s $SYNC_TYPE
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-mgr-inventory/org.openbmc.Inventory.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-mgr-inventory/org.openbmc.Inventory.service
new file mode 100644
index 0000000..0f835a6
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-mgr-inventory/org.openbmc.Inventory.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Phosphor Inventory Manager
+
+[Service]
+Restart=always
+ExecStart={sbindir}/inventory_items.py
+Type=dbus
+BusName={BUSNAME}
+Environment="PYTHONUNBUFFERED=1"
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/obmc/power_control b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/obmc/power_control
new file mode 100644
index 0000000..8db8890
--- /dev/null
+++ b/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/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-start@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-start@.service
new file mode 100644
index 0000000..cae414f
--- /dev/null
+++ b/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/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-stop@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-power-stop@.service
new file mode 100644
index 0000000..f370a3c
--- /dev/null
+++ b/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/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-off@.service b/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/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/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/op-wait-power-on@.service b/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/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/common/recipes-phosphor/obmc-phosphor-chassis/obmc-op-control-power/org.openbmc.control.Power@.service b/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/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}
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-pcie-detect/pcie-slot-detect@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-pcie-detect/pcie-slot-detect@.service
new file mode 100644
index 0000000..532d5e9
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-pcie-detect/pcie-slot-detect@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=PCIE Slot Presence Detection For Chassis%i
+Wants=obmc-power-on@%i.target
+After=obmc-power-on@%i.target
+Conflicts=obmc-chassis-stop@%i.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart={sbindir}/pcie_slot_present.exe
+
+[Install]
+WantedBy=obmc-chassis-start@%i.target
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/obmc-start-watchdog@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/obmc-start-watchdog@.service
new file mode 100644
index 0000000..7178d93
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/obmc-start-watchdog@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Start Watchdog%i
+Wants=obmc-host-started@%i.target
+After=obmc-host-started@%i.target
+Wants=mapper-wait@-org-openbmc-watchdog-host%i.service
+After=mapper-wait@-org-openbmc-watchdog-host%i.service
+Conflicts=obmc-chassis-stop@%i.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart={sbindir}/mapper call /org/openbmc/watchdog/host%i org.openbmc.Watchdog set i 30000
+ExecStart={sbindir}/mapper call /org/openbmc/watchdog/host%i org.openbmc.Watchdog start
+
+[Install]
+WantedBy=obmc-chassis-start@%i.target
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/obmc-stop-watchdog@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/obmc-stop-watchdog@.service
new file mode 100644
index 0000000..2b086cf
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/obmc-stop-watchdog@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Stop Watchdog%i
+Wants=mapper-wait@-org-openbmc-watchdog-host%i.service
+After=mapper-wait@-org-openbmc-watchdog-host%i.service
+Conflicts=obmc-chassis-start@%i.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart={sbindir}/mapper call /org/openbmc/watchdog/host%i org.openbmc.Watchdog stop
+
+[Install]
+WantedBy=obmc-chassis-stop@%i.target
diff --git a/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/org.openbmc.watchdog.Host@.service b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/org.openbmc.watchdog.Host@.service
new file mode 100644
index 0000000..2429c64
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-chassis/obmc-watchdog/org.openbmc.watchdog.Host@.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Phosphor Watchdog%i
+
+[Service]
+Restart=always
+ExecStart={sbindir}/host_watchdog.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-fan/obmc-control-fan/obmc-max-fans.service b/common/recipes-phosphor/obmc-phosphor-fan/obmc-control-fan/obmc-max-fans.service
new file mode 100644
index 0000000..ad0db5c
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-fan/obmc-control-fan/obmc-max-fans.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Set Fans to Maximum
+Wants=mapper-wait@-org-openbmc-control-fans.service
+After=mapper-wait@-org-openbmc-control-fans.service
+After=obmc-fan-control.target
+
+[Service]
+Type=oneshot
+Restart=no
+ExecStart={sbindir}/mapper call /org/openbmc/control/fans org.openbmc.control.Fans setMax
diff --git a/common/recipes-phosphor/obmc-phosphor-fan/obmc-control-fan/org.openbmc.control.Fans.service b/common/recipes-phosphor/obmc-phosphor-fan/obmc-control-fan/org.openbmc.control.Fans.service
new file mode 100644
index 0000000..9fead8f
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-fan/obmc-control-fan/org.openbmc.control.Fans.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Phosphor Fan Control
+Wants=obmc-fans-ready.target
+After=obmc-fans-ready.target
+Wants=obmc-fan-control.target
+Before=obmc-fan-control.target
+
+[Service]
+Restart=always
+ExecStart={sbindir}/fan_control.py
+Type=dbus
+BusName={BUSNAME}
+Environment="PYTHONUNBUFFERED=1"
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bios/obmc-flash-init.service b/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bios/obmc-flash-init.service
new file mode 100644
index 0000000..4893cd1
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bios/obmc-flash-init.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Initialize BIOS Flash
+Wants=mapper-wait@-org-openbmc-control-flash-bios.service
+After=mapper-wait@-org-openbmc-control-flash-bios.service
+
+[Service]
+Restart=no
+ExecStart={sbindir}/mapper call /org/openbmc/control/flash/bios org.openbmc.Flash init
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bios/org.openbmc.control.Flash.service b/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bios/org.openbmc.control.Flash.service
new file mode 100644
index 0000000..fefd172
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bios/org.openbmc.control.Flash.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Phosphor BIOS Code Update
+Wants=mapper-wait@-org-openbmc-managers-Download.service
+After=mapper-wait@-org-openbmc-managers-Download.service
+
+[Service]
+Restart=always
+ExecStart={sbindir}/flash_bios.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bmc/org.openbmc.control.BmcFlash.service b/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bmc/org.openbmc.control.BmcFlash.service
new file mode 100644
index 0000000..ddc8ec8
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-flash/obmc-flash-bmc/org.openbmc.control.BmcFlash.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Phosphor BMC Code Update
+Wants=mapper-wait@-org-openbmc-managers-Download.service
+After=mapper-wait@-org-openbmc-managers-Download.service
+Wants=mapper-wait@-org-openbmc-control-bmc0.service
+After=mapper-wait@-org-openbmc-control-bmc0.service
+
+[Service]
+Restart=always
+ExecStart={sbindir}/bmc_update.py
+Environment="PYTHONUNBUFFERED=1"
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-flash/obmc-mgr-download/org.openbmc.managers.Download.service b/common/recipes-phosphor/obmc-phosphor-flash/obmc-mgr-download/org.openbmc.managers.Download.service
new file mode 100644
index 0000000..e7bd28b
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-flash/obmc-mgr-download/org.openbmc.managers.Download.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Phosphor Download Manager
+
+[Service]
+Restart=always
+ExecStart={sbindir}/download_manager.py
+Environment="PYTHONUNBUFFERED=1"
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-host/obmc-op-control-host/op-start-host@.service b/common/recipes-phosphor/obmc-phosphor-host/obmc-op-control-host/op-start-host@.service
new file mode 100644
index 0000000..6445155
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-host/obmc-op-control-host/op-start-host@.service
@@ -0,0 +1,19 @@
+[Unit]
+Description=Start Host%i
+After=obmc-host-start-pre@%i.target
+Wants=obmc-host-start@%i.target
+Before=obmc-host-start@%i.target
+Before=obmc-host-started@%i.target
+Wants=obmc-power-on@%i.target
+After=obmc-power-on@%i.target
+Wants=mapper-wait@-org-openbmc-control-host%i.service
+After=mapper-wait@-org-openbmc-control-host%i.service
+Conflicts=obmc-chassis-stop@%i.target
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+ExecStart={sbindir}/mapper call /org/openbmc/control/host%i org.openbmc.control.Host boot
+
+[Install]
+WantedBy=obmc-chassis-start@%i.target
diff --git a/common/recipes-phosphor/obmc-phosphor-host/obmc-op-control-host/org.openbmc.control.Host@.service b/common/recipes-phosphor/obmc-phosphor-host/obmc-op-control-host/org.openbmc.control.Host@.service
new file mode 100644
index 0000000..59d0c3d
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-host/obmc-op-control-host/org.openbmc.control.Host@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=OpenPOWER Host%i Control
+Wants=mapper-wait@-org-openbmc-managers-System.service
+After=mapper-wait@-org-openbmc-managers-System.service
+
+[Service]
+Restart=always
+ExecStart={sbindir}/control_host.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/obmc-led-start@.service b/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/obmc-led-start@.service
new file mode 100644
index 0000000..a601078
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/obmc-led-start@.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Turn On %i LED
+Wants=mapper-wait@-org-openbmc-control-led-%i.service
+After=mapper-wait@-org-openbmc-control-led-%i.service
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+Restart=no
+ExecStart={sbindir}/mapper call /org/openbmc/control/led/%i org.openbmc.Led setOn
diff --git a/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/obmc-led-stop@.service b/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/obmc-led-stop@.service
new file mode 100644
index 0000000..81bdbec
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/obmc-led-stop@.service
@@ -0,0 +1,8 @@
+[Unit]
+Description=Turn Off %i LED
+
+[Service]
+Type=oneshot
+RemainAfterExit=yes
+Restart=no
+ExecStart={sbindir}/mapper call /org/openbmc/control/led/%i org.openbmc.Led setOff
diff --git a/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/org.openbmc.control.led.service b/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/org.openbmc.control.led.service
new file mode 100644
index 0000000..66139e3
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-led/obmc-control-led/org.openbmc.control.led.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Phosphor LED Management Daemon
+
+[Service]
+Restart=always
+ExecStart={sbindir}/led_controller.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-sensor/obmc-hwmon/obmc-hwmon.service b/common/recipes-phosphor/obmc-phosphor-sensor/obmc-hwmon/obmc-hwmon.service
new file mode 100644
index 0000000..806ce13
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-sensor/obmc-hwmon/obmc-hwmon.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Phosphor Hwmon Poller
+Wants=mapper-wait@-org-openbmc-sensors.service
+After=mapper-wait@-org-openbmc-sensors.service
+Before=obmc-fans-ready.target
+
+[Service]
+Restart=always
+ExecStart={sbindir}/hwmon.py
+Environment="PYTHONUNBUFFERED=1"
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-sensor/obmc-mgr-sensor/org.openbmc.Sensors.service b/common/recipes-phosphor/obmc-phosphor-sensor/obmc-mgr-sensor/org.openbmc.Sensors.service
new file mode 100644
index 0000000..4fa5a5a
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-sensor/obmc-mgr-sensor/org.openbmc.Sensors.service
@@ -0,0 +1,12 @@
+[Unit]
+Description=Phosphor Sensor Manager
+
+[Service]
+Restart=always
+ExecStart={sbindir}/sensor_manager2.py
+Type=dbus
+BusName={BUSNAME}
+Environment="PYTHONUNBUFFERED=1"
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-sys/obmc-control-bmc/org.openbmc.control.Bmc@.service b/common/recipes-phosphor/obmc-phosphor-sys/obmc-control-bmc/org.openbmc.control.Bmc@.service
new file mode 100644
index 0000000..4d26f96
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-sys/obmc-control-bmc/org.openbmc.control.Bmc@.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Phosphor BMC%i Control
+
+[Service]
+Restart=always
+ExecStart={sbindir}/control_bmc.exe
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-state/obmc-mgr-state.service b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-state/obmc-mgr-state.service
new file mode 100644
index 0000000..2a07c2b
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-state/obmc-mgr-state.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Restore Last State
+Wants=obmc-mgr-state.target
+After=obmc-mgr-state.target
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart={sbindir}/discover_system_state.py
+Environment="PYTHONUNBUFFERED=1"
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-state/obmc-mgr-state.target b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-state/obmc-mgr-state.target
new file mode 100644
index 0000000..fef2a1f
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-state/obmc-mgr-state.target
@@ -0,0 +1,2 @@
+[Unit]
+Description=Restore Last State
diff --git a/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-system/org.openbmc.managers.System.service b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-system/org.openbmc.managers.System.service
new file mode 100644
index 0000000..abca0dc
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-system/org.openbmc.managers.System.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Phoshpor System Manager
+Wants=obmc-mapper.target
+After=obmc-mapper.target
+
+[Service]
+Restart=always
+ExecStart={sbindir}/system_manager.py
+Type=dbus
+BusName={BUSNAME}
+Environment="PYTHONUNBUFFERED=1"
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-system/startup-hacks.service b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-system/startup-hacks.service
new file mode 100644
index 0000000..2fca986
--- /dev/null
+++ b/common/recipes-phosphor/obmc-phosphor-sys/obmc-mgr-system/startup-hacks.service
@@ -0,0 +1,10 @@
+[Unit]
+Description=Startup Hacks
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart={sbindir}/startup_hacks.sh
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}