Add service files into the repo

Upstream request is to have service files in repo now.

Change-Id: I0df43652acf0f98ad5e5d1548b64acddc38a89dd
Signed-off-by: Kuiying Wang <kuiying.wang@intel.com>
diff --git a/power-control/service-files/intel-power-start@.service b/power-control/service-files/intel-power-start@.service
new file mode 100644
index 0000000..763c115
--- /dev/null
+++ b/power-control/service-files/intel-power-start@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Start Power%i on
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-chassis-poweroff@%i.target
+ConditionPathExists=!/run/openbmc/chassis@%i-on
+
+[Service]
+Type=oneshot
+ExecStart=/bin/sh -c "busctl call `mapper get-service /xyz/openbmc_project/Chassis/Control/Power%i` \
+          /xyz/openbmc_project/Chassis/Control/Power%i xyz.openbmc_project.Chassis.Control.Power setPowerState i 1"
+SyslogIdentifier=intel-power-start
+StartLimitInterval=0
+
+[Install]
+WantedBy=obmc-host-start@%i.target
diff --git a/power-control/service-files/intel-power-stop@.service b/power-control/service-files/intel-power-stop@.service
new file mode 100644
index 0000000..5d0e46f
--- /dev/null
+++ b/power-control/service-files/intel-power-stop@.service
@@ -0,0 +1,20 @@
+[Unit]
+Description=Stop Power%i
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-chassis-poweron@%i.target
+Conflicts=obmc-host-start@%i.target
+
+[Service]
+Type=oneshot
+ExecStart=/bin/sh -c "busctl call `mapper get-service /xyz/openbmc_project/Chassis/Control/Power%i` \
+          /xyz/openbmc_project/Chassis/Control/Power%i xyz.openbmc_project.Chassis.Control.Power setPowerState i 0"
+SyslogIdentifier=intel-power-stop
+StartLimitInterval=0
+
+ExecStart=/bin/rm -f /run/openbmc/chassis@%i-on
+ExecStart=/bin/rm -f /run/openbmc/host@%i-on
+ExecStart=/bin/rm -f /run/openbmc/host@%i-request
+
+[Install]
+WantedBy=obmc-chassis-poweroff@%i.target
diff --git a/power-control/service-files/intel-power-warm-reset@.service b/power-control/service-files/intel-power-warm-reset@.service
new file mode 100644
index 0000000..c8bd4fc
--- /dev/null
+++ b/power-control/service-files/intel-power-warm-reset@.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Power%i warm reset
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-chassis-poweroff@%i.target
+ConditionPathExists=!/run/openbmc/chassis@%i-on
+
+[Service]
+Type=oneshot
+ExecStart=/bin/sh -c "busctl call `mapper get-service /xyz/openbmc_project/Chassis/Control/Power%i` \
+          /xyz/openbmc_project/Chassis/Control/Power%i xyz.openbmc_project.Chassis.Control.Power setPowerState i 2"
+SyslogIdentifier=intel-power-warm-reset
+
+[Install]
+WantedBy=obmc-host-warm-reset@%i.target
diff --git a/power-control/service-files/obmc-chassis-hard-poweroff@.target b/power-control/service-files/obmc-chassis-hard-poweroff@.target
new file mode 100644
index 0000000..5f53251
--- /dev/null
+++ b/power-control/service-files/obmc-chassis-hard-poweroff@.target
@@ -0,0 +1,12 @@
+[Unit]
+Description=Chassis%i (Hard Power Off)
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-chassis-poweron@%i.target
+Conflicts=obmc-chassis-reset@%i.target
+Conflicts=obmc-host-shutdown@%i.target
+Conflicts=xyz.openbmc_project.Ipmi.Internal.SoftPowerOff.service
+RefuseManualStop=yes
+
diff --git a/power-control/service-files/obmc-chassis-poweroff@.target b/power-control/service-files/obmc-chassis-poweroff@.target
new file mode 100644
index 0000000..aa026cf
--- /dev/null
+++ b/power-control/service-files/obmc-chassis-poweroff@.target
@@ -0,0 +1,10 @@
+[Unit]
+Description=Chassis%i (Power Off)
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-chassis-poweron@%i.target
+Conflicts=obmc-chassis-reset@%i.target
+RefuseManualStop=yes
+
diff --git a/power-control/service-files/obmc-chassis-poweron@.target b/power-control/service-files/obmc-chassis-poweron@.target
new file mode 100644
index 0000000..572dfa0
--- /dev/null
+++ b/power-control/service-files/obmc-chassis-poweron@.target
@@ -0,0 +1,10 @@
+[Unit]
+Description=Chassis%i (Power On)
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-chassis-poweroff@%i.target
+RefuseManualStop=yes
+OnFailure=obmc-chassis-poweroff@%i.target
+OnFailureJobMode=flush
diff --git a/power-control/service-files/obmc-chassis-powerreset@.target b/power-control/service-files/obmc-chassis-powerreset@.target
new file mode 100644
index 0000000..8d7c47e
--- /dev/null
+++ b/power-control/service-files/obmc-chassis-powerreset@.target
@@ -0,0 +1,7 @@
+[Unit]
+Description=Chassis%i (Reset Check)
+Conflicts=obmc-chassis-poweroff@%i.target
+RefuseManualStop=yes
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
diff --git a/power-control/service-files/obmc-host-reboot@.target b/power-control/service-files/obmc-host-reboot@.target
new file mode 100644
index 0000000..2522012
--- /dev/null
+++ b/power-control/service-files/obmc-host-reboot@.target
@@ -0,0 +1,10 @@
+[Unit]
+Description=Reboot Host%i
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-host-startmin@%i.target
+RefuseManualStop=yes
+OnFailure=obmc-chassis-poweroff@%i.target
+OnFailureJobMode=flush
diff --git a/power-control/service-files/obmc-host-soft-reboot@.target b/power-control/service-files/obmc-host-soft-reboot@.target
new file mode 100644
index 0000000..ae620c4
--- /dev/null
+++ b/power-control/service-files/obmc-host-soft-reboot@.target
@@ -0,0 +1,10 @@
+[Unit]
+Description=Soft Reboot Host%i
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-host-startmin@%i.target
+RefuseManualStop=yes
+OnFailure=obmc-chassis-poweroff@%i.target
+OnFailureJobMode=flush
diff --git a/power-control/service-files/obmc-host-start@.target b/power-control/service-files/obmc-host-start@.target
new file mode 100644
index 0000000..96e6ea1
--- /dev/null
+++ b/power-control/service-files/obmc-host-start@.target
@@ -0,0 +1,10 @@
+[Unit]
+Description=Start Host%i
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-host-stop@%i.target
+RefuseManualStop=yes
+OnFailure=obmc-host-quiesce@%i.target
+OnFailureJobMode=flush
\ No newline at end of file
diff --git a/power-control/service-files/obmc-host-startmin@.target b/power-control/service-files/obmc-host-startmin@.target
new file mode 100644
index 0000000..bb79370
--- /dev/null
+++ b/power-control/service-files/obmc-host-startmin@.target
@@ -0,0 +1,6 @@
+[Unit]
+Description=Start Host%i Minimum
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
diff --git a/power-control/service-files/obmc-host-stop@.target b/power-control/service-files/obmc-host-stop@.target
new file mode 100644
index 0000000..df371b9
--- /dev/null
+++ b/power-control/service-files/obmc-host-stop@.target
@@ -0,0 +1,10 @@
+[Unit]
+Description=Stop Host%i
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-host-startmin@%i.target
+RefuseManualStop=yes
+OnFailure=obmc-chassis-poweroff@%i.target
+OnFailureJobMode=flush
\ No newline at end of file
diff --git a/power-control/service-files/obmc-host-warm-reset@.target b/power-control/service-files/obmc-host-warm-reset@.target
new file mode 100644
index 0000000..6d4cbcf
--- /dev/null
+++ b/power-control/service-files/obmc-host-warm-reset@.target
@@ -0,0 +1,10 @@
+[Unit]
+Description=Warm reset Host%i
+Wants={SYSTEMD_DEFAULT_TARGET}
+After={SYSTEMD_DEFAULT_TARGET}
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Conflicts=obmc-host-stop@%i.target
+RefuseManualStop=yes
+OnFailure=obmc-host-quiesce@%i.target
+OnFailureJobMode=flush
diff --git a/power-control/service-files/obmc-send-signal-host-starting@.service b/power-control/service-files/obmc-send-signal-host-starting@.service
new file mode 100644
index 0000000..4e84c87
--- /dev/null
+++ b/power-control/service-files/obmc-send-signal-host-starting@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Broadcast host starting signal to dbus
+Wants=mapper-wait@-xyz-openbmc_project-state-host%i.service
+After=mapper-wait@-xyz-openbmc_project-state-host%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart=/bin/sh -c "dbus-send --system --type=signal /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host.HostStarting"
+SyslogIdentifier=hoststartingsignal
+
+[Install]
+WantedBy=obmc-host-starting@%i.target
diff --git a/power-control/service-files/obmc-send-signal-host-stopping@.service b/power-control/service-files/obmc-send-signal-host-stopping@.service
new file mode 100644
index 0000000..0f89f94
--- /dev/null
+++ b/power-control/service-files/obmc-send-signal-host-stopping@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Broadcast host stopping signal to dbus
+Wants=mapper-wait@-xyz-openbmc_project-state-host%i.service
+After=mapper-wait@-xyz-openbmc_project-state-host%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart=/bin/sh -c "dbus-send --system --type=signal /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host.HostStoping"
+SyslogIdentifier=hoststoppingsignal
+
+[Install]
+WantedBy=obmc-host-stopping@%i.target
diff --git a/power-control/service-files/obmc-send-signal-post-host-start@.service b/power-control/service-files/obmc-send-signal-post-host-start@.service
new file mode 100644
index 0000000..f7e0a3b
--- /dev/null
+++ b/power-control/service-files/obmc-send-signal-post-host-start@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Broadcast post host start signal to dbus
+Wants=mapper-wait@-xyz-openbmc_project-state-host%i.service
+After=mapper-wait@-xyz-openbmc_project-state-host%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart=/bin/sh -c "dbus-send --system --type=signal /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host.PostHostStart"
+SyslogIdentifier=posthoststartsignal
+
+[Install]
+WantedBy=obmc-host-started@%i.target
diff --git a/power-control/service-files/obmc-send-signal-post-host-stop@.service b/power-control/service-files/obmc-send-signal-post-host-stop@.service
new file mode 100644
index 0000000..90007db
--- /dev/null
+++ b/power-control/service-files/obmc-send-signal-post-host-stop@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Broadcast post host stop signal to dbus
+Wants=mapper-wait@-xyz-openbmc_project-state-host%i.service
+After=mapper-wait@-xyz-openbmc_project-state-host%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart=/bin/sh -c "dbus-send --system --type=signal /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host.PostHostStop"
+SyslogIdentifier=posthoststopsignal
+
+[Install]
+WantedBy=obmc-host-stopped@%i.target
diff --git a/power-control/service-files/obmc-send-signal-pre-host-start@.service b/power-control/service-files/obmc-send-signal-pre-host-start@.service
new file mode 100644
index 0000000..a57423e
--- /dev/null
+++ b/power-control/service-files/obmc-send-signal-pre-host-start@.service
@@ -0,0 +1,13 @@
+[Unit]
+Description=Broadcast pre host start signal to dbus
+Wants=mapper-wait@-xyz-openbmc_project-state-host%i.service
+After=mapper-wait@-xyz-openbmc_project-state-host%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart=/bin/sh -c "dbus-send --system --type=signal /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host.PreHostStart"
+SyslogIdentifier=prehoststartsignal
+
+[Install]
+WantedBy=obmc-host-start-pre@%i.target
diff --git a/power-control/service-files/obmc-send-signal-pre-host-stop@.service b/power-control/service-files/obmc-send-signal-pre-host-stop@.service
new file mode 100644
index 0000000..ec6f453
--- /dev/null
+++ b/power-control/service-files/obmc-send-signal-pre-host-stop@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Broadcast pre host stop signal to dbus
+Wants=mapper-wait@-xyz-openbmc_project-state-host%i.service
+After=mapper-wait@-xyz-openbmc_project-state-host%i.service
+
+[Service]
+Restart=no
+Type=oneshot
+ExecStart=/bin/sh -c "dbus-send --system --type=signal /xyz/openbmc_project/state/host0 xyz.openbmc_project.State.Host.PreHostStop"
+SyslogIdentifier=prehoststopsignal
+
+[Install]
+WantedBy=obmc-host-stop-pre@%i.target
+
diff --git a/power-control/service-files/op-reset-chassis-on@.service b/power-control/service-files/op-reset-chassis-on@.service
new file mode 100644
index 0000000..d3ea716
--- /dev/null
+++ b/power-control/service-files/op-reset-chassis-on@.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Start chassis%i on after BMC reset
+Requires=op-reset-chassis-running@%i.service
+After=op-reset-chassis-running@%i.service
+After=obmc-power-reset-on@%i.target
+Requires=obmc-power-reset-on@%i.target
+ConditionPathExists=/run/openbmc/chassis@%i-on
+
+[Service]
+RemainAfterExit=no
+ExecStart=/bin/systemctl start obmc-host-start@%i.target
+
+
+[Install]
+WantedBy=obmc-chassis-powerreset@%i.target
diff --git a/power-control/service-files/op-reset-chassis-running@.service b/power-control/service-files/op-reset-chassis-running@.service
new file mode 100644
index 0000000..3280d0a
--- /dev/null
+++ b/power-control/service-files/op-reset-chassis-running@.service
@@ -0,0 +1,15 @@
+[Unit]
+Description=Check Chassis%i pgood and create a file to indicate it
+Wants=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+After=mapper-wait@-xyz-openbmc_project-Chassis-Control-Power%i.service
+Wants=obmc-power-reset-on@%i.target
+Before=obmc-power-reset-on@%i.target
+Conflicts=obmc-chassis-poweroff@%i.target
+
+[Service]
+RemainAfterExit=no
+Type=oneshot
+ExecStart=/bin/sh -c "if [ $(busctl get-property `mapper get-service /xyz/openbmc_project/Chassis/Control/Power%i` /xyz/openbmc_project/Chassis/Control/Power%i xyz.openbmc_project.Chassis.Control.Power pgood | sed 's/i\s*[1]/on/' | grep on | wc -l) != 0 ]; then mkdir -p /run/openbmc/ && touch /run/openbmc/chassis@%i-on; fi"
+
+[Install]
+WantedBy=obmc-chassis-powerreset@%i.target
diff --git a/power-control/service-files/xyz.openbmc_project.Chassis.Control.Power@.service b/power-control/service-files/xyz.openbmc_project.Chassis.Control.Power@.service
new file mode 100644
index 0000000..fe69931
--- /dev/null
+++ b/power-control/service-files/xyz.openbmc_project.Chassis.Control.Power@.service
@@ -0,0 +1,17 @@
+
+[Unit]
+Description=Intel Power Control%i
+Wants=mapper-wait@-org-openbmc-managers-System.service
+After=mapper-wait@-org-openbmc-managers-System.service
+
+[Service]
+Restart=always
+RestartSec=3
+ExecStart=/usr/bin/env power-control
+SyslogIdentifier=power-control
+Type=dbus
+BusName={BUSNAME}
+
+[Install]
+WantedBy={SYSTEMD_DEFAULT_TARGET}
+