Add phosphor-power recipe

There was witherspoon-fault-analysis recipe in meta-ibm. Now the repo
becomes a generic one, phosphor-power, add the recipe in meta-phosphor.

Tested: Verify the build `bitbake phosphor-power` succeeds.
        With changes in meta-ibm/meta-witherspoon, verify phosphor-power
        is built correctly and the services are installed.

(From meta-phosphor rev: 4d8175e674b521669822da61d09b338f391b38fa)

Change-Id: I4e30bba75a0883c4e431c56a10eef7917b5c46c8
Signed-off-by: Lei YU <mine260309@gmail.com>
Signed-off-by: Brad Bishop <bradleyb@fuzziesquirrel.com>
diff --git a/meta-phosphor/recipes-phosphor/power/phosphor-power-systemd-links.bb b/meta-phosphor/recipes-phosphor/power/phosphor-power-systemd-links.bb
new file mode 100644
index 0000000..0ee5e83
--- /dev/null
+++ b/meta-phosphor/recipes-phosphor/power/phosphor-power-systemd-links.bb
@@ -0,0 +1,43 @@
+SUMMARY = "Phosphor Power services installation"
+PR = "r1"
+
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit allarch
+
+RDEPENDS_${PN} += "phosphor-power"
+
+OBMC_POWER_SUPPLY_INSTANCES ?= "0"
+
+ALLOW_EMPTY_${PN} = "1"
+
+pkg_postinst_${PN}() {
+	mkdir -p $D$systemd_system_unitdir/obmc-chassis-poweron@0.target.wants
+	mkdir -p $D$systemd_system_unitdir/multi-user.target.requires
+
+	LINK="$D$systemd_system_unitdir/obmc-chassis-poweron@0.target.wants/pseq-monitor.service"
+	TARGET="../pseq-monitor.service"
+	ln -s $TARGET $LINK
+
+	LINK="$D$systemd_system_unitdir/obmc-chassis-poweron@0.target.wants/pseq-monitor-pgood.service"
+	TARGET="../pseq-monitor-pgood.service"
+	ln -s $TARGET $LINK
+
+	for inst in $OBMC_POWER_SUPPLY_INSTANCES; do
+		LINK="$D$systemd_system_unitdir/multi-user.target.requires/power-supply-monitor@$inst.service"
+		TARGET="../power-supply-monitor@.service"
+		ln -s $TARGET $LINK
+	done
+}
+
+pkg_prerm_${PN}() {
+	LINK="$D$systemd_system_unitdir/obmc-chassis-poweron@0.target.wants/pseq-monitor.service"
+	rm $LINK
+	LINK="$D$systemd_system_unitdir/obmc-chassis-poweron@0.target.wants/pseq-monitor-pgood.service"
+	rm $LINK
+	for inst in $OBMC_POWER_SUPPLY_INSTANCES; do
+		LINK="$D$systemd_system_unitdir/multi-user.target.requires/power-supply-monitor@$inst.service"
+		rm $LINK
+	done
+}
diff --git a/meta-phosphor/recipes-phosphor/power/phosphor-power.inc b/meta-phosphor/recipes-phosphor/power/phosphor-power.inc
new file mode 100644
index 0000000..5195400
--- /dev/null
+++ b/meta-phosphor/recipes-phosphor/power/phosphor-power.inc
@@ -0,0 +1,5 @@
+HOMEPAGE = "https://github.com/openbmc/phosphor-power"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${S}/LICENSE;md5=e3fc50a88d0a364313df4b21ef20c29e"
+SRC_URI += "git://github.com/openbmc/phosphor-power"
+SRCREV = "aff6548e9009524ddfc3c597babece3fdd6c6d07"
diff --git a/meta-phosphor/recipes-phosphor/power/phosphor-power_git.bb b/meta-phosphor/recipes-phosphor/power/phosphor-power_git.bb
new file mode 100644
index 0000000..b66c107
--- /dev/null
+++ b/meta-phosphor/recipes-phosphor/power/phosphor-power_git.bb
@@ -0,0 +1,29 @@
+SUMMARY = "Phosphor Power services and utilities"
+DESCRIPTION = "Configure and monitor power supplies, power sequencers, and \
+voltage regulators, and analyzes power devices for faults"
+PR = "r1"
+PV = "1.0+git${SRCPV}"
+
+inherit meson
+inherit pkgconfig
+inherit systemd
+inherit pythonnative
+
+require ${PN}.inc
+
+S = "${WORKDIR}/git"
+
+# TODO: in future when openpower-dbus-interfaces is removed from
+# phosphor-power, remove the dependency here.
+DEPENDS += " \
+         phosphor-logging \
+         openpower-dbus-interfaces \
+         sdbus++-native \
+         sdeventplus \
+         nlohmann-json \
+         "
+
+SEQ_MONITOR_SVC = "pseq-monitor.service"
+SEQ_PGOOD_SVC = "pseq-monitor-pgood.service"
+PSU_MONITOR_TMPL = "power-supply-monitor@.service"
+SYSTEMD_SERVICE_${PN} += "${SEQ_MONITOR_SVC} ${SEQ_PGOOD_SVC} ${PSU_MONITOR_TMPL}"