summaryrefslogtreecommitdiff
path: root/meta-ibm/recipes-phosphor/chassis/power-workarounds/swift
diff options
context:
space:
mode:
Diffstat (limited to 'meta-ibm/recipes-phosphor/chassis/power-workarounds/swift')
-rw-r--r--meta-ibm/recipes-phosphor/chassis/power-workarounds/swift/power-workarounds.sh23
-rw-r--r--meta-ibm/recipes-phosphor/chassis/power-workarounds/swift/power-workarounds@.service16
2 files changed, 39 insertions, 0 deletions
diff --git a/meta-ibm/recipes-phosphor/chassis/power-workarounds/swift/power-workarounds.sh b/meta-ibm/recipes-phosphor/chassis/power-workarounds/swift/power-workarounds.sh
new file mode 100644
index 000000000..dc1f4803b
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/chassis/power-workarounds/swift/power-workarounds.sh
@@ -0,0 +1,23 @@
+#!/bin/sh
+# This should be run before power-on and used to patch/update power specific
+# hardware settings. This is platform specific settings that must be
+# updated/removed if not Swift.
+
+########## Program TPS53915 FSW to desired frequency #########
+# FREQUENCY_CONFIG D3h, bits 2:0
+
+# AVDD, bus 3 addr 1D, set to 600khz
+# 600khz = 1,0,0
+i2cset -y 3 0x1D 0xD3 0x04 b
+
+# 3.3VA, bus 3 addr 1C, set to 600khz
+i2cset -y 3 0x1C 0xD3 0x04 b
+
+# 3.3VB, bus 3 addr 1B, set to 600khz
+i2cset -y 3 0x1B 0xD3 0x04 b
+
+# 5.0V, bus 3 addr 1A, set to 850khz
+# 850khz = 1,1,0
+i2cset -y 3 0x1A 0xD3 0x06 b
+########## END Program TPS53915 FSW to desired frequency #########
+
diff --git a/meta-ibm/recipes-phosphor/chassis/power-workarounds/swift/power-workarounds@.service b/meta-ibm/recipes-phosphor/chassis/power-workarounds/swift/power-workarounds@.service
new file mode 100644
index 000000000..0926e033b
--- /dev/null
+++ b/meta-ibm/recipes-phosphor/chassis/power-workarounds/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