Swift: Run power-workarounds after PGOOD

On swift, the VRMs that power-workarounds.sh touches can't communicate
until the system has been powered on.  Rearrange the services to make
this happen.

(From meta-ibm rev: b5980e57561bc2f161bd61965551c1a3e1323131)

Signed-off-by: Matt Spinler <spinler@us.ibm.com>
Change-Id: I0ac7fb6adaa0de18feb525259f991e99c147e244
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/swift/avsbus-disable@.service b/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/swift/avsbus-disable@.service
new file mode 100644
index 0000000..fbab180
--- /dev/null
+++ b/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/swift/avsbus-disable@.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=Disable the AVS bus on the VRMs
+Before=vrm-control@%i.service
+Conflicts=obmc-chassis-poweroff@%i.target
+ConditionPathExists=!/run/openbmc/chassis@%i-on
+
+[Service]
+ExecStart=/usr/bin/env avsbus-disable.sh
+SyslogIdentifier=avsbus-disable.sh
+Type=oneshot
+RemainAfterExit=yes
+
+[Install]
+WantedBy=obmc-chassis-poweron@%i.target
diff --git a/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/swift/power-workarounds@.service b/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/swift/power-workarounds@.service
new file mode 100644
index 0000000..0926e03
--- /dev/null
+++ b/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/swift/power-workarounds@.service
@@ -0,0 +1,16 @@
+[Unit]
+Description=Perform power workarounds on VRMs after PGOOD is up
+Wants=obmc-power-on@%i.target
+After=obmc-power-on@%i.target
+Before=obmc-host-start-pre@%i.target
+Conflicts=obmc-chassis-poweroff@%i.target
+ConditionPathExists=!/run/openbmc/chassis@%i-on
+
+[Service]
+ExecStart=/usr/bin/power-workarounds.sh
+SyslogIdentifier=power-workarounds.sh
+Type=oneshot
+RemainAfterExit=yes
+
+[Install]
+WantedBy=obmc-chassis-poweron@%i.target
diff --git a/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/avsbus-disable@.service b/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/witherspoon/avsbus-disable@.service
similarity index 100%
rename from meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/avsbus-disable@.service
rename to meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/witherspoon/avsbus-disable@.service
diff --git a/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/power-workarounds@.service b/meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/witherspoon/power-workarounds@.service
similarity index 100%
rename from meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/power-workarounds@.service
rename to meta-ibm/meta-witherspoon/recipes-phosphor/chassis/avsbus-control/witherspoon/power-workarounds@.service
diff --git a/meta-ibm/meta-witherspoon/recipes-phosphor/power/witherspoon-pfault-analysis/swift/pseq-monitor-pgood.service b/meta-ibm/meta-witherspoon/recipes-phosphor/power/witherspoon-pfault-analysis/swift/pseq-monitor-pgood.service
new file mode 100644
index 0000000..206fc66
--- /dev/null
+++ b/meta-ibm/meta-witherspoon/recipes-phosphor/power/witherspoon-pfault-analysis/swift/pseq-monitor-pgood.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Power Sequencer Power-on Monitor
+Wants=op-power-start@0.service
+After=op-power-start@0.service
+Conflicts=obmc-chassis-poweroff@0.target
+ConditionPathExists=!/run/openbmc/chassis@0-on
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/env pseq-monitor -a pgood-monitor -i 5000
+SyslogIdentifier=pseq-monitor
diff --git a/meta-ibm/meta-witherspoon/recipes-phosphor/power/witherspoon-pfault-analysis/pseq-monitor-pgood.service b/meta-ibm/meta-witherspoon/recipes-phosphor/power/witherspoon-pfault-analysis/witherspoon/pseq-monitor-pgood.service
similarity index 100%
rename from meta-ibm/meta-witherspoon/recipes-phosphor/power/witherspoon-pfault-analysis/pseq-monitor-pgood.service
rename to meta-ibm/meta-witherspoon/recipes-phosphor/power/witherspoon-pfault-analysis/witherspoon/pseq-monitor-pgood.service