From acd9fe42f278b4521b919b539d09c8a34ef5739f Mon Sep 17 00:00:00 2001 From: Matthew Barth Date: Fri, 24 Feb 2017 13:14:43 -0600 Subject: Add phosphor-fan-presence to bitbake Created phosphor-fan-presence recipe along with service file to run the phosphor-fan-presence-tach daemon. Change-Id: I7211d51eaf48648e7bf2f838edee49ecadb534fb Signed-off-by: Matthew Barth --- .../recipes-phosphor/fans/phosphor-fan-presence.bb | 40 ++++++++++++++++++++++ .../phosphor-fan-presence-tach@.service | 12 +++++++ .../packagegroups/packagegroup-obmc-apps.bb | 1 + .../conf/distro/include/phosphor-defaults.inc | 5 +++ 4 files changed, 58 insertions(+) create mode 100644 meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence.bb create mode 100644 meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence/phosphor-fan-presence-tach@.service (limited to 'meta-phosphor') diff --git a/meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence.bb b/meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence.bb new file mode 100644 index 000000000..7899dc458 --- /dev/null +++ b/meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence.bb @@ -0,0 +1,40 @@ +SUMMARY = "Phosphor Fan Presence" +DESCRIPTION = "Phosphor fan presence provides a set of fan presence \ +daemons to monitor fan presence changes by different methods of \ +presence detection." +HOMEPAGE = "https://github.com/openbmc/phosphor-fan-presence" +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e" + +inherit autotools pkgconfig pythonnative +inherit obmc-phosphor-systemd + +DEPENDS += "autoconf-archive-native" +DEPENDS += "python-pyyaml-native" +DEPENDS += "sdbusplus" +DEPENDS += "phosphor-logging" +RDEPENDS_${PN} += "sdbusplus" + +FAN_PRESENCE_PACKAGES = " \ + ${PN}-tach \ +" +PACKAGES_remove = "${PN}" +PACKAGES += "${FAN_PRESENCE_PACKAGES}" +SYSTEMD_PACKAGES = "${FAN_PRESENCE_PACKAGES}" +RDEPENDS_${PN}-dev = "${FAN_PRESENCE_PACKAGES}" + +# Needed to install into the obmc-chassis-start target +TMPL = "phosphor-fan-presence-tach@.service" +INSTFMT = "phosphor-fan-presence-tach@{0}.service" +TGTFMT = "obmc-chassis-start@{0}.target" +FMT = "../${TMPL}:${TGTFMT}.requires/${INSTFMT}" + +FILES_${PN}-tach = "${sbindir}/phosphor-fan-presence-tach" +SYSTEMD_SERVICE_${PN}-tach += "${TMPL}" +SYSTEMD_LINK_${PN} += "${@compose_list(d, 'FMT', 'OBMC_CHASSIS_INSTANCES')}" + +SRC_URI += "git://github.com/openbmc/phosphor-fan-presence" +SRCREV = "5c15b797ffafd36eceecfbf250bd0eead39103dd" + +S = "${WORKDIR}/git" diff --git a/meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence/phosphor-fan-presence-tach@.service b/meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence/phosphor-fan-presence-tach@.service new file mode 100644 index 000000000..ac153895e --- /dev/null +++ b/meta-phosphor/common/recipes-phosphor/fans/phosphor-fan-presence/phosphor-fan-presence-tach@.service @@ -0,0 +1,12 @@ +[Unit] +Description=Phosphor Fan Presence Tach Daemon +Wants=obmc-power-on@%i.target +After=obmc-power-on@%i.target +Conflicts=obmc-chassis-stop@%i.target + +[Service] +Restart=on-failure +ExecStart={sbindir}/phosphor-fan-presence-tach + +[Install] +RequiredBy=obmc-chassis-start@%i.target diff --git a/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb b/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb index 517a679d4..f55f98488 100644 --- a/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb +++ b/meta-phosphor/common/recipes-phosphor/packagegroups/packagegroup-obmc-apps.bb @@ -46,6 +46,7 @@ RDEPENDS_${PN}-host-state-mgmt = " \ SUMMARY_${PN}-inventory = "Inventory applications" RDEPENDS_${PN}-inventory = " \ ${VIRTUAL-RUNTIME_obmc-inventory-manager} \ + ${VIRTUAL-RUNTIME_obmc-fan-presence} \ " SUMMARY_${PN}-leds = "LED applications" diff --git a/meta-phosphor/conf/distro/include/phosphor-defaults.inc b/meta-phosphor/conf/distro/include/phosphor-defaults.inc index f7ac0b5ec..954264d45 100644 --- a/meta-phosphor/conf/distro/include/phosphor-defaults.inc +++ b/meta-phosphor/conf/distro/include/phosphor-defaults.inc @@ -32,6 +32,11 @@ VIRTUAL-RUNTIME_obmc-chassis-state-manager ?= "phosphor-state-manager-chassis" # interface. VIRTUAL-RUNTIME_obmc-host-state-manager ?= "phosphor-state-manager-host" +# obmc-fan-presence +# +# Provides implementations of fan presence detection +VIRTUAL-RUNTIME_obmc-fan-presence ?= "phosphor-fan-presence-tach" + # obmc-inventory-manager # # Provides an implementation of the xyz.openbmc_project.Inventory.Manager -- cgit v1.2.1