summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authormustafa <mustafa.shehabi@fii-na.com>2021-03-29 23:08:45 +0300
committerMohaimen Alsamarai <mohaimen.alsamarai@fii-na.com>2021-04-19 23:13:31 +0300
commite67e2287b237f1e2275f3ce3793011827019d1b2 (patch)
treeab65c5c80aba00d1b041ff8475a2bf2a76227225
parent3b8a17c1d70bac29dd3f1fb727716b7c2151b64a (diff)
downloadopenbmc-e67e2287b237f1e2275f3ce3793011827019d1b2.tar.xz
meta-fii/meta-kudo: PID Fan Control
1- Using PID Fan Control 2- Switch Fan Control from Phosphor PID Control to Entity Manager PID Signed-off-by: mustafa <mustafa.shehabi@fii-na.com> Change-Id: I29305ba959dd2f4dd2fd0131af324f105d28a7bc
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service14
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend6
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb29
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh6
-rw-r--r--meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service11
5 files changed, 66 insertions, 0 deletions
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service
new file mode 100644
index 000000000..8f16d6818
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control/phosphor-pid-control.service
@@ -0,0 +1,14 @@
+[Unit]
+Description=OpenBMC Fan Control Daemon
+After=xyz.openbmc_project.EntityManager.service
+After=xyz.openbmc_project.ObjectMapper.service
+
+[Service]
+Type=simple
+ExecStart=/usr/bin/swampd -t
+Restart=always
+RestartSec=5
+StartLimitInterval=0
+
+[Install]
+WantedBy=basic.target \ No newline at end of file
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
new file mode 100644
index 000000000..03f391cc1
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/phosphor-pid-control_%.bbappend
@@ -0,0 +1,6 @@
+FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:"
+SRC_URI_append_kudo = " file://phosphor-pid-control.service"
+
+inherit systemd
+
+SYSTEMD_SERVICE_${PN}_append_kudo = " phosphor-pid-control.service"
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb
new file mode 100644
index 000000000..c380feba3
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init.bb
@@ -0,0 +1,29 @@
+SUMMARY = "Initialize PWM sensors"
+DESCRIPTION = "Initialize PWM sensors"
+LICENSE = "CLOSED"
+PR = "r1"
+
+inherit systemd
+
+DEPENDS = "systemd"
+RDEPENDS_${PN} = "bash"
+
+S = "${WORKDIR}"
+FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:"
+SRC_URI += " \
+ file://pwm_init.service \
+ file://bin/pwm_init.sh \
+ "
+
+SYSTEMD_PACKAGES = "${PN}"
+SYSTEMD_AUTO_ENABLE = "enable"
+SYSTEMD_SERVICE_${PN} += "pwm_init.service"
+
+FILES_${PN} += "${bindir}/* ${systemd_system_unitdir}/*"
+
+do_install_append() {
+ install -d ${D}${bindir}
+ install -m 0755 ${S}/bin/* ${D}${bindir}/
+ install -d ${D}${systemd_system_unitdir}
+ install -m 0644 ${S}/*.service ${D}${systemd_system_unitdir}
+}
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh
new file mode 100644
index 000000000..d559f6a31
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/bin/pwm_init.sh
@@ -0,0 +1,6 @@
+#!/bin/bash
+#
+# Set all fans to pwm mode.
+
+# Set all pwm_enable to 1
+find /sys/class/hwmon/hwmon*/ -name 'pwm*_enable' -exec bash -c 'echo "${1}" && echo 1 > "${1}" && cat "${1}"' -- {} \; \ No newline at end of file
diff --git a/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service
new file mode 100644
index 000000000..981b8773c
--- /dev/null
+++ b/meta-fii/meta-kudo/recipes-phosphor/fans/pwm-init/pwm_init.service
@@ -0,0 +1,11 @@
+[Unit]
+Description=Init PWM sensors
+Before=xyz.openbmc_project.fansensor.service
+
+[Service]
+Type=oneshot
+ExecStart=/usr/bin/pwm_init.sh
+
+[Install]
+WantedBy=multi-user.target
+WantedBy=xyz.openbmc_project.fansensor.service