meta-ampere: Support Fault LED

Monitor the Socket 0 and Socket 1's CPU_FAULT GPIO and turn on the Fault
LED when any GPIO turns ON.

Tested:
    1. Flash special SCP image to stimulate CPU Fault LED
    2. Check if the Fault LED is ON.

Signed-off-by: Tung Nguyen <tung.nguyen@amperecomputing.com>
Signed-off-by: Chanh Nguyen <chanh@os.amperecomputing.com>
Change-Id: I73bf34b4361528c9c8825942ddc7f24d51589189
diff --git a/meta-ampere/meta-jade/recipes-phosphor/gpio/fault-monitor.bb b/meta-ampere/meta-jade/recipes-phosphor/gpio/fault-monitor.bb
new file mode 100644
index 0000000..e068b4d
--- /dev/null
+++ b/meta-ampere/meta-jade/recipes-phosphor/gpio/fault-monitor.bb
@@ -0,0 +1,33 @@
+SUMMARY = "MTJade fault-led application"
+PR = "r1"
+LICENSE = "Apache-2.0"
+LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10"
+
+inherit obmc-phosphor-systemd
+
+DEPENDS += "virtual/obmc-gpio-monitor"
+RDEPENDS_${PN} += "virtual/obmc-gpio-monitor"
+
+S = "${WORKDIR}"
+SRC_URI += "file://toggle_fault_led.sh"
+
+do_install() {
+        install -d ${D}${bindir}
+        install -m 0755 ${WORKDIR}/toggle_fault_led.sh \
+        ${D}${bindir}/toggle_fault_led.sh
+}
+
+OBMC_FAULT_MONITOR_INSTANCES = "s0_fault_alert s1_fault_alert"
+
+SYSTEMD_ENVIRONMENT_FILE_${PN} += "obmc/gpio/s0_fault_alert \
+                                   obmc/gpio/s1_fault_alert \
+                                  "
+
+TMPL = "phosphor-gpio-monitor@.service"
+INSTFMT = "phosphor-gpio-monitor@{0}.service"
+TGT = "multi-user.target"
+FMT = "../${TMPL}:${TGT}.requires/${INSTFMT}"
+
+SYSTEMD_SERVICE_${PN} += "ampere_fault_led.service"
+SYSTEMD_LINK_${PN} += "${@compose_list(d, 'FMT', 'OBMC_FAULT_MONITOR_INSTANCES')}"
+