diff options
author | Jason M. Bills <jason.m.bills@linux.intel.com> | 2021-05-24 22:35:24 +0300 |
---|---|---|
committer | Jason M. Bills <jason.m.bills@linux.intel.com> | 2021-05-24 22:35:24 +0300 |
commit | 0e0df451ae365f09d5c0c766b253f23de26901f2 (patch) | |
tree | db4d7d3ce85e02ee01ad58a86ede02ac876aae77 /meta-fii/meta-kudo | |
parent | e370fd750e2821620ec427f26f8efab0069824ff (diff) | |
parent | 7e10dee74964afa47859704886128dd256acf854 (diff) | |
download | openbmc-0e0df451ae365f09d5c0c766b253f23de26901f2.tar.xz |
Merge tag '0.52' of ssh://git-amr-1.devtools.intel.com:29418/openbmc-openbmc into update
Diffstat (limited to 'meta-fii/meta-kudo')
48 files changed, 4749 insertions, 45 deletions
diff --git a/meta-fii/meta-kudo/conf/bblayers.conf.sample b/meta-fii/meta-kudo/conf/bblayers.conf.sample index 9fe42076b..f8958b950 100644 --- a/meta-fii/meta-kudo/conf/bblayers.conf.sample +++ b/meta-fii/meta-kudo/conf/bblayers.conf.sample @@ -9,7 +9,9 @@ BBLAYERS ?= " \ ##OEROOT##/meta \ ##OEROOT##/meta-openembedded/meta-oe \ ##OEROOT##/meta-openembedded/meta-networking \ + ##OEROOT##/meta-openembedded/meta-perl \ ##OEROOT##/meta-openembedded/meta-python \ + ##OEROOT##/meta-security \ ##OEROOT##/meta-phosphor \ ##OEROOT##/meta-nuvoton \ ##OEROOT##/meta-google \ @@ -19,7 +21,9 @@ BBLAYERS_NON_REMOVABLE ?= " \ ##OEROOT##/meta \ ##OEROOT##/meta-openembedded/meta-oe \ ##OEROOT##/meta-openembedded/meta-networking \ + ##OEROOT##/meta-openembedded/meta-perl \ ##OEROOT##/meta-openembedded/meta-python \ + ##OEROOT##/meta-security \ ##OEROOT##/meta-phosphor \ ##OEROOT##/meta-nuvoton \ ##OEROOT##/meta-google \ diff --git a/meta-fii/meta-kudo/conf/layer.conf b/meta-fii/meta-kudo/conf/layer.conf index e5a3c34af..84da9fb54 100644 --- a/meta-fii/meta-kudo/conf/layer.conf +++ b/meta-fii/meta-kudo/conf/layer.conf @@ -7,4 +7,4 @@ BBFILES += "${LAYERDIR}/recipes-*/*/*.bb \ BBFILE_COLLECTIONS += "kudo-layer" BBFILE_PATTERN_kudo-layer = "^${LAYERDIR}/" -LAYERSERIES_COMPAT_kudo-layer = "warrior zeus dunfell" +LAYERSERIES_COMPAT_kudo-layer = "warrior zeus gatesgarth dunfell" diff --git a/meta-fii/meta-kudo/conf/machine/kudo.conf b/meta-fii/meta-kudo/conf/machine/kudo.conf index 31036a4ff..c136987c7 100644 --- a/meta-fii/meta-kudo/conf/machine/kudo.conf +++ b/meta-fii/meta-kudo/conf/machine/kudo.conf @@ -7,15 +7,24 @@ require conf/machine/include/obmc-bsp-common.inc FLASH_SIZE = "65536" FLASH_UBOOT_OFFSET = "0" FLASH_KERNEL_OFFSET = "2048" -FLASH_ROFS_OFFSET = "8192" -FLASH_RWFS_OFFSET = "62464" +FLASH_ROFS_OFFSET = "7168" +FLASH_RWFS_OFFSET = "62400" UBOOT_MACHINE = "PolegSVB_config" UBOOT_DEVICETREE = "nuvoton-npcm730-kudo" IGPS_MACHINE = "EB" +GBMC_MAC_EEPROM_OF_NAME = "bmcfru" +GBMC_MAC_IF_MAP = "eth0" +GBMC_NCSI_IF_NAME = "eth0" + IMAGE_FSTYPES += " cpio.${INITRAMFS_CTYPE}.u-boot" -VIRTUAL-RUNTIME_obmc-fan-control = "phosphor-pid-control" +OBMC_MACHINE_FEATURES += " \ + obmc-host-ipmi \ + " + PREFERRED_PROVIDER_virtual/obmc-fan-control = "phosphor-pid-control" PREFERRED_PROVIDER_virtual/obmc-system-mgmt = "packagegroup-kudo-apps" +PREFERRED_PROVIDER_virtual/obmc-host-ipmi-hw = "phosphor-ipmi-ssif" +PREFERRED_PROVIDER_virtual/obmc-flash-mgmt = "packagegroup-kudo-apps" diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc deleted file mode 100644 index 9154bc131..000000000 --- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-common-kudo.inc +++ /dev/null @@ -1,3 +0,0 @@ -UBRANCH = "npcm7xx-v2019.01" -SRC_URI = "git://github.com/Nuvoton-Israel/u-boot.git;branch=${UBRANCH}" -SRCREV = "5caf59416ba1d6316dd78895e69789246a77e00a" diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg deleted file mode 100644 index 125522f84..000000000 --- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/fixed_phy.cfg +++ /dev/null @@ -1,2 +0,0 @@ -CONFIG_PHY_FIXED=y - diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg index 417ffa98c..58839d9fd 100644 --- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton/kudo.cfg @@ -1,2 +1,3 @@ +CONFIG_PHY_FIXED=y CONFIG_CMD_MII=y CONFIG_NET_RANDOM_ETHADDR=y diff --git a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend index 73ad51e15..1c1383680 100644 --- a/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend +++ b/meta-fii/meta-kudo/recipes-bsp/u-boot/u-boot-nuvoton_%.bbappend @@ -1,10 +1,3 @@ -FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/u-boot-nuvoton:" +FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:" -require u-boot-common-kudo.inc - -UBOOT_MAKE_TARGET_append_kudo = " DEVICE_TREE=${UBOOT_DEVICETREE}" - -SRC_URI_append_kudo = " \ - file://fixed_phy.cfg \ - file://kudo.cfg \ - " +SRC_URI_append_kudo = " file://kudo.cfg" diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.service b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.service new file mode 100644 index 000000000..8f3a2bc31 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.service @@ -0,0 +1,9 @@ +[Unit] +Description=Rotate the event logs + +[Service] +Type=simple +ExecStart=/usr/bin/rotate-event-logs.sh + +[Install] +WantedBy=multi-user.target diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.sh b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.sh new file mode 100644 index 000000000..5a8c5cc10 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rotate-event-logs.sh @@ -0,0 +1,10 @@ +#!/bin/sh + +while true; do + sleep 60 + /usr/sbin/logrotate /etc/logrotate.d/logrotate.rsyslog + ec=$? + if [ $ec -ne 0 ] ; then + echo "logrotate failed ($ec)" + fi +done diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog-override.conf b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog-override.conf new file mode 100644 index 000000000..14bcc0781 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog-override.conf @@ -0,0 +1,2 @@ +[Service] +ExecReload=/bin/kill -HUP $MAINPID diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.conf b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.conf new file mode 100644 index 000000000..46a287eef --- /dev/null +++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.conf @@ -0,0 +1,79 @@ +# if you experience problems, check +# http://www.rsyslog.com/troubleshoot for assistance + +# rsyslog v3: load input modules +# If you do not load inputs, nothing happens! +# You may need to set the module load path if modules are not found. +# +# Ported from debian's sysklogd.conf + +# Journal-style logging +# Limit to no more than 2000 entries in one minute and enable the +# journal workaround to avoid duplicate entries +module(load="imjournal" StateFile="/var/log/state" + RateLimit.Interval="60" + RateLimit.Burst="2000") + +# Template for IPMI SEL messages +# "<timestamp> <ID>,<Type>,<EventData>,[<Generator ID>,<Path>,<Direction>]" +template(name="IPMISELTemplate" type="list") { + property(name="timereported" dateFormat="rfc3339") + constant(value=" ") + property(name="$!IPMI_SEL_RECORD_ID") + constant(value=",") + property(name="$!IPMI_SEL_RECORD_TYPE") + constant(value=",") + property(name="$!IPMI_SEL_DATA") + constant(value=",") + property(name="$!IPMI_SEL_GENERATOR_ID") + constant(value=",") + property(name="$!IPMI_SEL_SENSOR_PATH") + constant(value=",") + property(name="$!IPMI_SEL_EVENT_DIR") + constant(value="\n") +} + +# Template for Redfish messages +# "<timestamp> <MessageId>,<MessageArgs>" +template(name="RedfishTemplate" type="list") { + property(name="timereported" dateFormat="rfc3339") + constant(value=" ") + property(name="$!REDFISH_MESSAGE_ID") + constant(value=",") + property(name="$!REDFISH_MESSAGE_ARGS") + constant(value="\n") +} + +# Template for Application Crashes +# "<timestamp> <MessageId>,<MessageArgs>" +template(name="CrashTemplate" type="list") { + property(name="timereported" dateFormat="rfc3339") + constant(value=" ") + constant(value="OpenBMC.0.1.ServiceFailure") + constant(value=",") + property(name="$!UNIT") + constant(value="\n") +} + + +# If the journal entry has the IPMI SEL MESSAGE_ID, save as IPMI SEL +# The MESSAGE_ID string is generated using journalctl and must match the +# MESSAGE_ID used in IPMI to correctly find the SEL entries. +if ($!MESSAGE_ID == "b370836ccf2f4850ac5bee185b77893a") then { + action(type="omfile" file="/var/log/ipmi_sel" template="IPMISELTemplate") +} + +# If the journal entry has a Redfish MessageId, save as a Redfish event +if ($!REDFISH_MESSAGE_ID != "") then { + action(type="omfile" file="/var/log/redfish" template="RedfishTemplate") +} + +# If the journal entry has a Exit Code, save as a Redfish event +if ($!EXIT_STATUS != "" and $!EXIT_STATUS != "0") then { + action(type="omfile" file="/var/log/redfish" template="CrashTemplate") +} + +# +# Include all config files in /etc/rsyslog.d/ +# +$IncludeConfig /etc/rsyslog.d/*.conf diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate new file mode 100644 index 000000000..a6ba28d86 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog/rsyslog.logrotate @@ -0,0 +1,22 @@ +# /etc/logrotate.d/rsyslog - Ported from Debian + +# Keep up to four 64k files for ipmi_sel (256k total) +/var/log/ipmi_sel +{ + rotate 3 + size 64k + missingok + postrotate + systemctl reload rsyslog 2> /dev/null || true + endscript +} +# Keep up to four 64k files for redfish (256k total) +/var/log/redfish +{ + rotate 3 + size 64k + missingok + postrotate + systemctl reload rsyslog 2> /dev/null || true + endscript +} diff --git a/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog_%.bbappend b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog_%.bbappend new file mode 100644 index 000000000..278debb32 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-extended/rsyslog/rsyslog_%.bbappend @@ -0,0 +1,25 @@ +FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:" + +SRC_URI_append_kudo = " \ + file://rsyslog.conf \ + file://rsyslog.logrotate \ + file://rotate-event-logs.service \ + file://rotate-event-logs.sh \ + file://rsyslog-override.conf \ + " + +FILES_${PN}_append_kudo = " ${systemd_system_unitdir}/rsyslog.service.d/rsyslog-override.conf" + +PACKAGECONFIG_append_kudo = " imjournal" + +do_install_append_kudo() { + install -m 0644 ${WORKDIR}/rotate-event-logs.service ${D}${systemd_system_unitdir} + install -d ${D}${systemd_system_unitdir}/rsyslog.service.d + install -m 0644 ${WORKDIR}/rsyslog-override.conf \ + ${D}${systemd_system_unitdir}/rsyslog.service.d/rsyslog-override.conf + install -d ${D}${bindir} + install -m 0755 ${WORKDIR}/rotate-event-logs.sh ${D}/${bindir}/rotate-event-logs.sh + rm ${D}${sysconfdir}/rsyslog.d/imjournal.conf +} + +SYSTEMD_SERVICE_${PN}_append_kudo = " rotate-event-logs.service" diff --git a/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg index 0811dd9d9..c43b0745b 100644 --- a/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg +++ b/meta-fii/meta-kudo/recipes-kernel/linux/linux-nuvoton/kudo.cfg @@ -30,21 +30,15 @@ CONFIG_SQUASHFS_XZ=y CONFIG_JFFS2_FS=y CONFIG_EXT4_FS=y +# SPI CONFIG_SPI=y CONFIG_SPI_NPCM_FIU=y CONFIG_MTD_M25P80=y CONFIG_SPI_NPCM_PSPI=y -CONFIG_NET_NCSI=y - -CONFIG_EEPROM_AT24=y -CONFIG_I2C_MUX=y -CONFIG_I2C_MUX_PCA954x=y -CONFIG_I2C_SLAVE_EEPROM=y -CONFIG_GPIO_PCA953X=y -CONFIG_GPIO_PCA953X_IRQ=y -CONFIG_GPIO_PCF857X=y -CONFIG_MUX_MMIO=y +# +# USB configuration +# CONFIG_USB_U_ETHER=y CONFIG_USB_F_ECM=y CONFIG_USB_F_EEM=y @@ -58,6 +52,23 @@ CONFIG_USB_CONFIGFS_RNDIS=y CONFIG_USB_CONFIGFS_EEM=y CONFIG_USB_CONFIGFS_MASS_STORAGE=y CONFIG_USB_CONFIGFS_F_HID=y +CONFIG_USB_GADGET_NPCM_USB2=y + +# +# Nuvoton emc device +# +CONFIG_NET_VENDOR_NUVOTON=y +CONFIG_NPCM7XX_EMC_ETH=y +CONFIG_NET_NCSI=y + +CONFIG_EEPROM_AT24=y +CONFIG_I2C_MUX=y +CONFIG_I2C_MUX_PCA954x=y +CONFIG_I2C_SLAVE_EEPROM=y +CONFIG_GPIO_PCA953X=y +CONFIG_GPIO_PCA953X_IRQ=y +CONFIG_GPIO_PCF857X=y +CONFIG_MUX_MMIO=y CONFIG_MEDIA_SUPPORT=y CONFIG_VIDEO_NUVOTON=y @@ -65,8 +76,6 @@ CONFIG_NPCM750_VCD=y CONFIG_NPCM750_ECE=y CONFIG_FORCE_MAX_ZONEORDER=12 -CONFIG_USB_GADGET_NPCM_USB2=y - CONFIG_NPCM7XX_PCI_MBOX=y CONFIG_RESET_NPCM=y @@ -74,6 +83,13 @@ CONFIG_RESET_NPCM=y CONFIG_I2C_SLAVE=y CONFIG_I2C_SLAVE_MQUEUE=y CONFIG_IPMB_DEVICE_INTERFACE=y + +# RTC device +CONFIG_RTC_CLASS=y +CONFIG_RTC_DRV_PCF85063=y + +# +# JATG Configuration CONFIG_NUVOTON_JTAG=y CONFIG_NPCM7XX_JTAG_MASTER=y @@ -103,6 +119,5 @@ CONFIG_IP_NF_FILTER=y CONFIG_IP_NF_TARGET_REJECT=y CONFIG_NF_DEFRAG_IPV6=y - CONFIG_TCG_TPM=y CONFIG_TCG_TIS_I2C_INFINEON=y diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update.bb new file mode 100644 index 000000000..b126bfc8c --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update.bb @@ -0,0 +1,33 @@ +SUMMARY = "Phosphor OpenBMC Kudo BIOS Firmware Upgrade Command" +DESCRIPTION = "Phosphor OpenBMC Kudo BIOS Firmware Upgrade Comman Daemon" + +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit systemd +inherit obmc-phosphor-systemd + +DEPENDS += "systemd" +DEPENDS += "phosphor-ipmi-flash" +RDEPENDS_${PN} += "libsystemd" +RDEPENDS_${PN} += "bash" + +FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-bios.json" + +SRC_URI_append_kudo = " \ + file://phosphor-ipmi-flash-bios-update.service \ + file://config-bios.json \ + " + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE_${PN}_append_kudo = " \ + phosphor-ipmi-flash-bios-update.service \ + " + +do_install () { + install -d ${D}${datadir}/phosphor-ipmi-flash + install -m 0644 ${WORKDIR}/config-bios.json ${D}${datadir}/phosphor-ipmi-flash + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-bios-update.service ${D}${systemd_system_unitdir} +} diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/config-bios.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/config-bios.json new file mode 100644 index 000000000..de2382346 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/config-bios.json @@ -0,0 +1,19 @@ +[{ + "blob": "/flash/bios", + "handler": { + "type": "file", + "path": "/run/initramfs/bios-image" + }, + "actions": { + "preparation": { + "type": "skip" + }, + "verification": { + "type": "skip" + }, + "update": { + "type": "systemd", + "unit": "phosphor-ipmi-flash-bios-update.service" + } + } +}] diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/phosphor-ipmi-flash-bios-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/phosphor-ipmi-flash-bios-update.service new file mode 100644 index 000000000..1702153d7 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bios-update/phosphor-ipmi-flash-bios-update.service @@ -0,0 +1,6 @@ +[Unit] +Description=Phosphor-ipmi-flash update BIOS firmware service + +[Service] +ExecStart=/usr/sbin/kudo-fw.sh bios /run/initramfs/bios-image +Type=oneshot
\ No newline at end of file diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update.bb new file mode 100644 index 000000000..184f3efc6 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update.bb @@ -0,0 +1,20 @@ +SUMMARY = "Phosphor OpenBMC Kudo BMC Firmware Upgrade Command" +DESCRIPTION = "Phosphor OpenBMC Kudo BMC Firmware Upgrade Comman Daemon" + +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +DEPENDS += "phosphor-ipmi-flash" +RDEPENDS_${PN} += "bash" + +FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-bmc.json" + +SRC_URI_append_kudo = " \ + file://config-bmc.json \ + " + +do_install () { + install -d ${D}${datadir}/phosphor-ipmi-flash + install -m 0644 ${WORKDIR}/config-bmc.json ${D}${datadir}/phosphor-ipmi-flash +} diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update/config-bmc.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update/config-bmc.json new file mode 100644 index 000000000..5aefeb342 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-bmc-update/config-bmc.json @@ -0,0 +1,20 @@ +[{ + "blob": "/flash/image", + "handler": { + "type": "file", + "path": "/run/initramfs/image-bmc" + }, + "actions": { + "preparation": { + "type": "skip" + }, + "verification": { + "type": "skip" + }, + "update": { + "type": "systemd", + "unit": "reboot.target", + "mode": "replace-irreversibly" + } + } +}] diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update.bb new file mode 100644 index 000000000..b2fd8209d --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update.bb @@ -0,0 +1,39 @@ +SUMMARY = "Phosphor OpenBMC Kudo CPLD Firmware Upgrade Command" +DESCRIPTION = "Phosphor OpenBMC Kudo CPLD Firmware Upgrade Comman Daemon" + +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit systemd +inherit obmc-phosphor-systemd + +DEPENDS += "systemd" +DEPENDS += "phosphor-ipmi-flash" +RDEPENDS_${PN} += "libsystemd" +RDEPENDS_${PN} += "bash" + +FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-bmccpld.json" +FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-mbcpld.json" + +SRC_URI_append_kudo = " \ + file://phosphor-ipmi-flash-bmccpld-update.service \ + file://phosphor-ipmi-flash-mbcpld-update.service \ + file://config-bmccpld.json \ + file://config-mbcpld.json \ + " + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE_${PN}_append_kudo = " \ + phosphor-ipmi-flash-bmccpld-update.service \ + phosphor-ipmi-flash-mbcpld-update.service \ + " + +do_install () { + install -d ${D}${datadir}/phosphor-ipmi-flash + install -m 0644 ${WORKDIR}/config-bmccpld.json ${D}${datadir}/phosphor-ipmi-flash + install -m 0644 ${WORKDIR}/config-mbcpld.json ${D}${datadir}/phosphor-ipmi-flash + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-bmccpld-update.service ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-mbcpld-update.service ${D}${systemd_system_unitdir} +}
\ No newline at end of file diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-bmccpld.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-bmccpld.json new file mode 100644 index 000000000..687aa11c2 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-bmccpld.json @@ -0,0 +1,19 @@ +[{ + "blob": "/flash/bmccpld", + "handler": { + "type": "file", + "path": "/run/initramfs/bmc-cpld.svf" + }, + "actions": { + "preparation": { + "type": "skip" + }, + "verification": { + "type": "skip" + }, + "update": { + "type": "systemd", + "unit": "phosphor-ipmi-flash-bmccpld-update.service" + } + } +}] diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-mbcpld.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-mbcpld.json new file mode 100644 index 000000000..f5870bb33 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/config-mbcpld.json @@ -0,0 +1,20 @@ +[{ + "blob": "/flash/mbcpld", + "handler": { + "type": "file", + "path": "/run/initramfs/mb-cpld.svf" + }, + "actions": { + "preparation": { + "type": "skip" + }, + "verification": { + "type": "skip" + }, + "update": { + "type": "systemd", + "unit": "phosphor-ipmi-flash-mbcpld-update.service" + } + } +}] + diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-bmccpld-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-bmccpld-update.service new file mode 100644 index 000000000..b4f91f81c --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-bmccpld-update.service @@ -0,0 +1,9 @@ +[Unit] +Description=Phosphor-ipmi-flash update BMC CPLD firmware service + +[Service] +ExecStart=/usr/sbin/kudo-fw.sh bmccpld /run/initramfs/bmc-cpld.svf +Type=oneshot + +[Install] +WantedBy=phosphor-ipmi-flash-bmccpld-update.target diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-mbcpld-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-mbcpld-update.service new file mode 100644 index 000000000..51b6c9c4b --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-cpld-update/phosphor-ipmi-flash-mbcpld-update.service @@ -0,0 +1,9 @@ +[Unit] +Description=Phosphor-ipmi-flash update MB CPLD firmware service + +[Service] +ExecStart=/usr/sbin/kudo-fw.sh mbcpld /run/initramfs/mb-cpld.svf +Type=oneshot + +[Install] +WantedBy=phosphor-ipmi-flash-mbcpld-update.target diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw.bb new file mode 100644 index 000000000..3f5a30ec6 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw.bb @@ -0,0 +1,34 @@ +SUMMARY = "Phosphor OpenBMC Kudo Firmware Upgrade Command" +DESCRIPTION = "Phosphor OpenBMC Kudo Firmware Upgrade Comman Daemon" + +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit systemd +inherit obmc-phosphor-systemd + +DEPENDS += "systemd" +DEPENDS += "phosphor-ipmi-flash" +RDEPENDS_${PN} += "libsystemd" +RDEPENDS_${PN} += "bash" + + +SRC_URI_append_kudo = " \ + file://kudo-fw.sh \ + file://kudo-fw-ver.service \ + file://kudo-fw-ver.sh \ + " + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE_${PN}_append_kudo = " \ + kudo-fw-ver.service \ + " + +do_install () { + install -d ${D}/${sbindir} + install -m 0755 ${WORKDIR}/kudo-fw.sh ${D}/${sbindir}/kudo-fw.sh + install -m 0755 ${WORKDIR}/kudo-fw-ver.sh ${D}/${sbindir}/kudo-fw-ver.sh + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/kudo-fw-ver.service ${D}${systemd_system_unitdir} +} diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.service new file mode 100644 index 000000000..24e21d236 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.service @@ -0,0 +1,10 @@ +[Unit] +Description=Firmware Version Daemon + +[Service] +RemainAfterExit=yes +Type=oneshot +ExecStart=/usr/sbin/kudo-fw-ver.sh + +[Install] +WantedBy=multi-user.target diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.sh b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.sh new file mode 100644 index 000000000..498fe7d0a --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw-ver.sh @@ -0,0 +1,28 @@ + +#!/bin/bash +BMC_CPLD_VER_FILE="/run/cpld0.version" +MB_CPLD_VER_FILE="/run/cpld1.version" +ver='' + +function fw_rev() { + case $1 in + cpldb) + rsp=($(i2cget -y -f -a 13 0x76 0x00 i 5)) + ver=$(printf '%d.%d.%d.%d' ${rsp[6]} ${rsp[5]} ${rsp[4]} ${rsp[3]}) + ;; + cpldm) + I2C_BUS_DEV=$(readlink "/sys/bus/i2c/devices/4-0077/channel-2" | cut -c 8-) + rsp=($(i2cget -y -f -a $I2C_BUS_DEV 0x76 0x00 i 5)) + ver=$(printf '%d.%d.%d.%d' ${rsp[6]} ${rsp[5]} ${rsp[4]} ${rsp[3]}) + ;; + *) + ;; + esac +} + +fw_rev cpldb +echo "BMC CPLD version : ${ver}" +echo "${ver}" > "${BMC_CPLD_VER_FILE}" +fw_rev cpldm +echo "MB CPLD version : ${ver}" +echo "${ver}" > "${MB_CPLD_VER_FILE}"
\ No newline at end of file diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw.sh b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw.sh new file mode 100644 index 000000000..e42795f0c --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-fw/kudo-fw.sh @@ -0,0 +1,120 @@ +#!/bin/bash + +devpath="/sys/bus/i2c/devices/13-0077/driver" + +# set_gpio_ctrl +# pin #, direction, high(1)/low(0) +function set_gpio_ctrl() { + echo $1 > /sys/class/gpio/export + echo $2 > /sys/class//gpio/gpio$1/direction + echo $3 > /sys/class/gpio/gpio$1/value + echo $1 > /sys/class/gpio/unexport + sleep 1 +} + +function fwbios() { + KERNEL_FIU_ID="c0000000.spi" + KERNEL_SYSFS_FIU="/sys/bus/platform/drivers/NPCM-FIU" + + # switch the SPI mux from Host to BMC + i2cset -y -f -a 13 0x76 0x10 0x01 + + # rescan the spi bus + if [ -d "${KERNEL_SYSFS_FIU}/${KERNEL_FIU_ID}" ]; then + echo "${KERNEL_FIU_ID}" > "${KERNEL_SYSFS_FIU}"/unbind + sleep 1 + fi + echo "${KERNEL_FIU_ID}" > "${KERNEL_SYSFS_FIU}"/bind + + # write to the mtd device + BIOS_MTD=$(cat /proc/mtd | grep "bios" | sed -n 's/^\(.*\):.*/\1/p') + + if [ ! -f $1 ]; then + echo " Cannot find the" $1 "image file" + exit 1 + fi + + echo "Flashing BIOS @/dev/$BIOS_MTD" + flashcp -v $1 /dev/$BIOS_MTD + wait + + # switch the SPI mux from BMC to Host + if [ -d "${KERNEL_SYSFS_FIU}/${KERNEL_FIU_ID}" ]; then + echo "${KERNEL_FIU_ID}" > "${KERNEL_SYSFS_FIU}"/unbind + fi + i2cset -y -f -a 13 0x76 0x10 0x00 + + if [[ $(find ${1} -type f -size +17156k 2>/dev/null) ]]; then + echo "Extracting the SCP from the image" + dd if=$1 bs=1024 skip=17156 count=256 of=/run/initramfs/myscp.img + fwscp /run/initramfs/myscp.img + fi + rm -f $1 +} + + +function fwbmccpld() { + # BMC_JTAG_MUX_1 #218 0:BMC 1:MB + set_gpio_ctrl 218 out 0 + loadsvf -d /dev/jtag0 -s $1 -m 0 + wait + set_gpio_ctrl 218 out 1 + rm -f $1 +} + +function fwmbcpld() { + # BMC_JTAG_MUX_1 #218 0:BMC 1:MB + # BMC_JTAG_SEL #164 0:BMC 1:CPU + set_gpio_ctrl 218 out 1 + set_gpio_ctrl 164 out 1 + loadsvf -d /dev/jtag0 -s $1 -m 0 + wait + rm -f $1 +} + +function fwscp() { + # BMC_I2C_BACKUP_SEL #168 0:failover, 1:main + # BMC_CPU_EEPROM_I2C_SEL #85 0:BMC, 1:CPU + set_gpio_ctrl 168 out 1 + set_gpio_ctrl 85 out 0 + I2C_BUS_DEV=$(ls -l $devpath/"13-0077/" | grep channel-0 | awk '{ print $11}' | cut -c 8-) + ampere_eeprom_prog -b $I2C_BUS_DEV -s 0x50 -p -f $1 + wait + set_gpio_ctrl 85 out 1 + set_gpio_ctrl 168 out 1 + rm -f $1 +} + +function fwscpback() { + # BMC_I2C_BACKUP_SEL #168 0:failover, 1:main + # BMC_CPU_EEPROM_I2C_SEL #85 0:BMC, 1:CPU + set_gpio_ctrl 168 out 0 + set_gpio_ctrl 85 out 0 + I2C_BUS_DEV=$(ls -l $devpath/"13-0077/" | grep channel-0 | awk '{ print $11}' | cut -c 8-) + ampere_eeprom_prog -b $I2C_BUS_DEV -s 0x50 -p -f $1 + wait + set_gpio_ctrl 85 out 1 + set_gpio_ctrl 168 out 1 + rm -f $1 +} + + +case $1 in + bios) + fwbios $2 + ;; + bmccpld) + fwbmccpld $2 + ;; + mbcpld) + fwmbcpld $2 + ;; + scp) + fwscp $2 + ;; + scpback) + fwscpback $2 + ;; + *) + ;; +esac diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update.bb b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update.bb new file mode 100644 index 000000000..8d2fb1324 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update.bb @@ -0,0 +1,41 @@ +SUMMARY = "Phosphor OpenBMC Kudo SCP Firmware Upgrade Command" +DESCRIPTION = "Phosphor OpenBMC Kudo SCP Firmware Upgrade Comman Daemon" +FILESEXTRAPATHS_prepend := "${THISDIR}/kudo-scp-update:" + +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit systemd +inherit obmc-phosphor-systemd + +DEPENDS += "systemd" +DEPENDS += "phosphor-ipmi-flash" +RDEPENDS_${PN} += "libsystemd" +RDEPENDS_${PN} += "bash" + +FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-scp.json" +FILES_${PN} += "${datadir}/phosphor-ipmi-flash/config-scpback.json" + +SRC_URI_append_kudo = " \ + file://phosphor-ipmi-flash-scp-update.service \ + file://phosphor-ipmi-flash-scpback-update.service \ + file://config-scp.json \ + file://config-scpback.json \ + " + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE_${PN}_append_kudo = " \ + phosphor-ipmi-flash-scp-update.service \ + phosphor-ipmi-flash-scpback-update.service \ + " + +do_install () { + install -d ${D}${datadir}/phosphor-ipmi-flash + install -m 0644 ${WORKDIR}/config-scp.json ${D}${datadir}/phosphor-ipmi-flash + install -m 0644 ${WORKDIR}/config-scpback.json ${D}${datadir}/phosphor-ipmi-flash + + install -d ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-scp-update.service ${D}${systemd_system_unitdir} + install -m 0644 ${WORKDIR}/phosphor-ipmi-flash-scpback-update.service ${D}${systemd_system_unitdir} +} diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scp.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scp.json new file mode 100644 index 000000000..563238c6a --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scp.json @@ -0,0 +1,19 @@ +[{ + "blob": "/flash/scp", + "handler": { + "type": "file", + "path": "/run/initramfs/scp-fw.slim" + }, + "actions": { + "preparation": { + "type": "skip" + }, + "verification": { + "type": "skip" + }, + "update": { + "type": "systemd", + "unit": "phosphor-ipmi-flash-scp-update.service" + } + } +}] diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scpback.json b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scpback.json new file mode 100644 index 000000000..0e6c61425 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/config-scpback.json @@ -0,0 +1,20 @@ +[{ + "blob": "/flash/scpb", + "handler": { + "type": "file", + "path": "/run/initramfs/scp-fw.slim" + }, + "actions": { + "preparation": { + "type": "skip" + }, + "verification": { + "type": "skip" + }, + "update": { + "type": "systemd", + "unit": "phosphor-ipmi-flash-scpback-update.service" + } + } +}] + diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scp-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scp-update.service new file mode 100644 index 000000000..8d5e2da30 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scp-update.service @@ -0,0 +1,9 @@ +[Unit] +Description=Phosphor-ipmi-flash update main EEPROM SCP firmware service + +[Service] +ExecStart=/usr/sbin/kudo-fw.sh scp /run/initramfs/scp-fw.slim +Type=oneshot + +[Install] +WantedBy=phosphor-ipmi-flash-scp-update.target diff --git a/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scpback-update.service b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scpback-update.service new file mode 100644 index 000000000..c247552bf --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/kudo-fw-utility/kudo-scp-update/phosphor-ipmi-flash-scpback-update.service @@ -0,0 +1,9 @@ +[Unit] +Description=Phosphor-ipmi-flash update failover EEPROM SCP firmware service + +[Service] +ExecStart=/usr/sbin/kudo-fw.sh scpback /run/initramfs/scp-fw.slim +Type=oneshot + +[Install] +WantedBy=phosphor-ipmi-flash-scpback-update.target diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network.bb b/meta-fii/meta-kudo/recipes-kudo/network/usb-network.bb new file mode 100644 index 000000000..249e454ae --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network.bb @@ -0,0 +1,29 @@ +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit allarch systemd + +DEPENDS += "systemd" +RDEPENDS_${PN} += "libsystemd" +RDEPENDS_${PN} += "bash" + +SRC_URI_append += " \ + file://usb_network.sh \ + file://usb_network.service \ + file://00-bmc-usb0.network \ + " + +SYSTEMD_PACKAGES = "${PN}" +SYSTEMD_SERVICE_${PN}_append = " usb_network.service" +FILES_${PN} += "${sysconfdir_native}/systemd/network/00-bmc-usb0.network" + +do_install() { + install -d ${D}/${sbindir} + install -m 0755 ${WORKDIR}/usb_network.sh ${D}/${sbindir} + + install -d ${D}${systemd_unitdir}/system/ + install -m 0644 ${WORKDIR}/usb_network.service ${D}${systemd_unitdir}/system + + install -d ${D}${sysconfdir_native}/systemd/network/ + install -m 0644 ${WORKDIR}/00-bmc-usb0.network ${D}${sysconfdir_native}/systemd/network +} diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network/00-bmc-usb0.network b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/00-bmc-usb0.network new file mode 100644 index 000000000..1b8d66e4d --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/00-bmc-usb0.network @@ -0,0 +1,7 @@ +[Match] +Name=usb0 +[Address] +Address=169.254.95.118/16 +[Network] +LinkLocalAddressing=ipv6 +IPv6AcceptRA=no diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.service b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.service new file mode 100644 index 000000000..81a4e4244 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.service @@ -0,0 +1,10 @@ +[Unit] +Description=enable usb network +After=phosphor-ipmi-host.service + +[Service] +Type=oneshot +ExecStart=/bin/bash -c '/usr/sbin/usb_network.sh' + +[Install] +WantedBy=multi-user.target diff --git a/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.sh b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.sh new file mode 100644 index 000000000..8d7804d06 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-kudo/network/usb-network/usb_network.sh @@ -0,0 +1,27 @@ +#!/bin/bash + +cd /sys/kernel/config/usb_gadget + +if [ ! -f "g1" ]; then + mkdir g1 + cd g1 + + echo 0x1d6b > idVendor # Linux foundation + echo 0x0104 > idProduct # Multifunction composite gadget + mkdir -p strings/0x409 + echo "Linux" > strings/0x409/manufacturer + echo "Ethernet/ECM gadget" > strings/0x409/product + + mkdir -p configs/c.1 + echo 100 > configs/c.1/MaxPower + mkdir -p configs/c.1/strings/0x409 + echo "ECM" > configs/c.1/strings/0x409/configuration + + mkdir -p functions/ecm.usb0 + + ln -s functions/ecm.usb0 configs/c.1 + + echo f0835000.udc > UDC + +fi +exit 0 diff --git a/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb b/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb index be879455d..f64373e89 100644 --- a/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb +++ b/meta-fii/meta-kudo/recipes-kudo/packagegroups/packagegroup-kudo-apps.bb @@ -5,26 +5,32 @@ inherit packagegroup PROVIDES = "${PACKAGES}" PACKAGES = " \ - ${PN}-kudo-system \ - ${PN}-kudo-common-utils \ - " + ${PN}-kudo-system \ + ${PN}-kudo-fw \ + " PROVIDES += "virtual/obmc-system-mgmt" RPROVIDES_${PN}-kudo-system += "virtual-obmc-system-mgmt" +RPROVIDES_${PN}-kudo-fw += "virtual-obmc-system-mgmt" SUMMARY_${PN}-kudo-system = "KUDO System" RDEPENDS_${PN}-kudo-system = " \ - google-ipmi-sys \ - google-ipmi-i2c \ - " - -SUMMARY_${PN}-kudo-common-utils = "KUDO common utils" -RDEPENDS_${PN}-kudo-common-utils = " \ ipmitool \ - phosphor-webui \ - phosphor-host-postd \ + ethtool \ + memtester \ loadsvf \ obmc-console \ - phosphor-sel-logger \ + usb-network \ + ncsid \ + gbmc-mac-config \ + " + +SUMMARY_${PN}-kudo-fw = "KUDO Firmware" +RDEPENDS_${PN}-kudo-fw = " \ + kudo-fw \ + kudo-bios-update \ + kudo-bmc-update \ + kudo-cpld-update \ + kudo-scp-update \ " diff --git a/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager/kudo.json b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager/kudo.json new file mode 100644 index 000000000..2c5fdb3bc --- /dev/null +++ b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager/kudo.json @@ -0,0 +1,3899 @@ +[ + { + "Exposes":[ + { + "Address":"$address", + "Bus":"$bus", + "Name":"BMC FRU", + "Type":"EEPROM" + }, + { + "Address":"0x59", + "Bus":14, + "Name":"BMC_MAX34440", + "EntityID" : "0x13", + "Labels":[ + "vout2", + "vout3", + "vout4", + "vout5", + "vout6" + ], + "vout2_Name":"DC_P2V5", + "vout3_Name":"DC_P1V2", + "vout4_Name":"DC_P3V3_PU", + "vout5_Name":"DC_3V3_STBY", + "vout6_Name":"DC_P1V175", + "vout2_Max":3, + "vout3_Max":2.2, + "vout4_Max":5.8, + "vout5_Max":5.8, + "vout6_Max":3, + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout2", + "Severity":1, + "Value":2.75 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout2", + "Severity":0, + "Value":2.5 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout2", + "Severity":1, + "Value":2.375 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout2", + "Severity":0, + "Value":2.4 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout3", + "Severity":1, + "Value":1.32 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout3", + "Severity":0, + "Value":1.22 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout3", + "Severity":1, + "Value":1.14 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout3", + "Severity":0, + "Value":1.17 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout4", + "Severity":1, + "Value":3.63 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout4", + "Severity":0, + "Value":3.4 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout4", + "Severity":1, + "Value":3.135 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout4", + "Severity":0, + "Value":3.2 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout5", + "Severity":1, + "Value":3.63 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout5", + "Severity":0, + "Value":3.4 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout5", + "Severity":1, + "Value":3.135 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout5", + "Severity":0, + "Value":3.2 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout6", + "Severity":1, + "Value":1.292 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout6", + "Severity":0, + "Value":1.23 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout6", + "Severity":1, + "Value":1.117 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout6", + "Severity":0, + "Value":1.117 + } + ], + "Type":"MAX34440" + }, + { + "Name":"DC_P2V5", + "Type":"MAX34440", + "EntityId":"0x13", + "EntityInstance":0 + }, + { + "Name":"DC_P1V2", + "Type":"MAX34440", + "EntityId":"0x13", + "EntityInstance":1 + }, + { + "Name":"DC_P3V3_PU", + "Type":"MAX34440", + "EntityId":"0x13", + "EntityInstance":2 + }, + { + "Name":"DC_3V3_STBY", + "Type":"MAX34440", + "EntityId":"0x13", + "EntityInstance":3 + }, + { + "Name":"DC_P1V175", + "Type":"MAX34440", + "EntityId":"0x13", + "EntityInstance":4 + } + ], + "Name":"Kudo_BMC", + "Probe":"xyz.openbmc_project.FruDevice({'BOARD_SERIAL_NUMBER': 'ACN*'})", + "Type":"Board", + "xyz.openbmc_project.Inventory.Decorator.Asset":{ + "Manufacturer":"$BOARD_MANUFACTURER", + "Model":"$BOARD_PRODUCT_NAME", + "PartNumber":"$BOARD_PART_NUMBER", + "SerialNumber":"$BOARD_SERIAL_NUMBER" + }, + "xyz.openbmc_project.Inventory.Decorator.FruDevice":{ + "Bus":"$bus", + "Address":"$address" + }, + "xyz.openbmc_project.Inventory.Decorator.Ipmi": { + "EntityId": "0x07", + "EntityInstance": 0 + } + }, + { + "Exposes":[ + { + "Address":"$address", + "Bus":"$bus", + "Name":"MB FRU", + "Type":"EEPROM" + }, + { + "Address":"0x48", + "Bus":42, + "Name":"Mobo_M2_ZONE_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":100 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 1 + }, + { + "Address":"0x49", + "Bus":43, + "Name":"Mobo_BATT_ZONE_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":100 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 2 + }, + { + "Address":"0x48", + "Bus":44, + "Name":"Mobo_NBM1_ZONE_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":110 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":108 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 3 + }, + { + "Address":"0x49", + "Bus":45, + "Name":"Mobo_NBM2_ZONE_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":110 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":108 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 4 + }, + { + "Address":"0x5c", + "Bus":20, + "Name":"Mobo_INLET1_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":46 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":42 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 5 + }, + { + "Address":"0x5c", + "Bus":21, + "Name":"Mobo_OUTLET1_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":90 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":85 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 6 + }, + { + "Address":"0x5c", + "Bus":22, + "Name":"Mobo_OUTLET2_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":90 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":85 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 7 + }, + { + "Address":"0x5c", + "Bus":23, + "Name":"Mobo_OUTLET3_T", + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Severity":1, + "Value":90 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Severity":0, + "Value":85 + } + ], + "Type":"TMP75", + "EntityId": "0x03", + "EntityInstance": 8 + }, + { + "Address":"0x74", + "Bus":26, + "Name":"Mobo_STB_T", + "Labels":[ + "temp1" + ], + "temp1_Name":"Mobo_STB_T", + "temp1_Max":255, + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp1", + "Severity":1, + "Value":220 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp1", + "Severity":0, + "Value":125 + } + ], + "Type":"pmbus", + "EntityId": "0x03", + "EntityInstance": 9 + }, + { + "Address":"0x40", + "Bus":32, + "Name":"MB_ADM1266_0", + "Labels":[ + "vout1", + "vout2", + "vout3", + "vout4", + "vout5", + "vout6", + "vout7", + "vout8", + "vout9", + "vout10", + "vout11", + "vout12", + "vout13", + "vout14", + "vout15", + "vout16", + "vout17" + ], + "vout1_Name":"Mobo_12V_PSTB", + "vout2_Name":"Mobo_5V", + "vout3_Name":"Mobo_3V3", + "vout4_Name":"Mobo_3V3_STB", + "vout5_Name":"Mobo_48V", + "vout6_Name":"CPU0_13V5_NBM", + "vout7_Name":"CPU0_3V3_SOC", + "vout8_Name":"CPU0_1V2_DQ0123", + "vout9_Name":"CPU0_1V2_DQ4567", + "vout10_Name":"Mobo_8V5_PSTB", + "vout11_Name":"Mobo_5V_PSTB", + "vout12_Name":"CPU0_1V8_VDDH", + "vout13_Name":"CPU0_1V5_VDDH", + "vout14_Name":"Mobo_1V8_SATA", + "vout15_Name":"CPU0_1V8_SOC", + "vout16_Name":"CPU0_0V8_DC_SOC", + "vout17_Name":"Mobo_VBAT_RTC", + "vout1_Max":14.5, + "vout2_Max":8.5, + "vout3_Max":6, + "vout4_Max":6, + "vout5_Max":70, + "vout6_Max":19.5, + "vout7_Max":5, + "vout8_Max":3, + "vout9_Max":3, + "vout10_Max":11.5, + "vout11_Max":7.5, + "vout12_Max":4, + "vout13_Max":3, + "vout14_Max":4.5, + "vout15_Max":5, + "vout16_Max":3, + "vout17_Max":6, + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout1", + "Severity":1, + "Value":12.6 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout1", + "Severity":1, + "Value":11.4 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout1", + "Severity":0, + "Value":12.4 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout1", + "Severity":0, + "Value":11.9 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout2", + "Severity":1, + "Value":6.06 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout2", + "Severity":1, + "Value":3.4 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout2", + "Severity":0, + "Value":5.25 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout2", + "Severity":0, + "Value":4.75 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout3", + "Severity":1, + "Value":3.98 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout3", + "Severity":1, + "Value":2.83 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout3", + "Severity":0, + "Value":3.465 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout3", + "Severity":0, + "Value":3.132 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout4", + "Severity":1, + "Value":5.508 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout4", + "Severity":1, + "Value":1.922 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout4", + "Severity":0, + "Value":2.938 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout4", + "Severity":0, + "Value":2.657 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout5", + "Severity":1, + "Value":64.9 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout5", + "Severity":1, + "Value":36.58 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout5", + "Severity":0, + "Value":59.95 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout5", + "Severity":0, + "Value":39.875 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout6", + "Severity":1, + "Value":16.685 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout6", + "Severity":1, + "Value":8.59 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout6", + "Severity":0, + "Value":14.91 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout6", + "Severity":0, + "Value":10.011 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout7", + "Severity":1, + "Value":3.98 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout7", + "Severity":1, + "Value":2.268 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout7", + "Severity":0, + "Value":3.456 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout7", + "Severity":0, + "Value":3.132 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout8", + "Severity":1, + "Value":1.805 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout8", + "Severity":1, + "Value":0.802 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout8", + "Severity":0, + "Value":1.263 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout8", + "Severity":0, + "Value":1.145 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout9", + "Severity":1, + "Value":1.805 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout9", + "Severity":1, + "Value":0.802 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout9", + "Severity":0, + "Value":1.263 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout9", + "Severity":0, + "Value":1.145 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout10", + "Severity":1, + "Value":8.898 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout10", + "Severity":1, + "Value":8.036 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout10", + "Severity":0, + "Value":8.938 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout10", + "Severity":0, + "Value":8.075 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout11", + "Severity":1, + "Value":5.253 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout11", + "Severity":1, + "Value":4.758 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout11", + "Severity":0, + "Value":5.143 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout11", + "Severity":0, + "Value":4.84 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout12", + "Severity":1, + "Value":2.167 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout12", + "Severity":1, + "Value":1.225 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout12", + "Severity":0, + "Value":1.884 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout12", + "Severity":0, + "Value":1.711 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout13", + "Severity":1, + "Value":1.804 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout13", + "Severity":1, + "Value":1.021 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout13", + "Severity":0, + "Value":1.575 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout13", + "Severity":0, + "Value":1.426 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout14", + "Severity":1, + "Value":2.072 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout14", + "Severity":1, + "Value":1.444 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout14", + "Severity":0, + "Value":1.884 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout14", + "Severity":0, + "Value":1.711 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout15", + "Severity":1, + "Value":2.165 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout15", + "Severity":1, + "Value":1.214 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout15", + "Severity":0, + "Value":1.883 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout15", + "Severity":0, + "Value":1.795 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout16", + "Severity":1, + "Value":1.196 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout16", + "Severity":1, + "Value":0.598 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout16", + "Severity":0, + "Value":0.823 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout16", + "Severity":0, + "Value":0.676 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout17", + "Severity":1, + "Value":3.972 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout17", + "Severity":1, + "Value":2.327 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout17", + "Severity":0, + "Value":3.455 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout17", + "Severity":0, + "Value":3.126 + } + ], + "Type":"ADM1266" + }, + { + "Name":"Mobo_12V_PSTB", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":5 + }, + { + "Name":"Mobo_5V", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":6 + }, + { + "Name":"Mobo_3V3", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":7 + }, + { + "Name":"Mobo_3V3_STB", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":8 + }, + { + "Name":"Mobo_48V", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":9 + }, + { + "Name":"CPU0_13V5_NBM", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":10 + }, + { + "Name":"CPU0_3V3_SOC", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":11 + }, + { + "Name":"CPU0_1V2_DQ0123", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":12 + }, + { + "Name":"CPU0_1V2_DQ4567", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":13 + }, + { + "Name":"Mobo_8V5_PSTB", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":14 + }, + { + "Name":"Mobo_5V_PSTB", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":15 + }, + { + "Name":"CPU0_1V8_VDDH", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":16 + }, + { + "Name":"CPU0_1V5_VDDH", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":17 + }, + { + "Name":"Mobo_1V8_SATA", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":18 + }, + { + "Name":"CPU0_1V8_SOC", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":19 + }, + { + "Name":"CPU0_0V8_DC_SOC", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":20 + }, + { + "Name":"Mobo_VBAT_RTC", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":21 + }, + { + "Address":"0x41", + "Bus":32, + "Name":"MB_ADM1266_1", + "Labels":[ + "vout2", + "vout3", + "vout4", + "vout5", + "vout6", + "vout7", + "vout8", + "vout9", + "vout10", + "vout11", + "vout12", + "vout13", + "vout14", + "vout15", + "vout16", + "vout17" + ], + "vout2_Name":"Mobo_5V_SATA", + "vout3_Name":"Mobo_1V_SATA", + "vout4_Name":"CPU0_0V85_DC_RCA", + "vout5_Name":"CPU0_1V8_PCP", + "vout6_Name":"CPU1_13V5_NBM", + "vout7_Name":"CPU1_3V3_SOC", + "vout8_Name":"CPU1_1V2_DQ0123", + "vout9_Name":"CPU1_1V2_DQ4567", + "vout10_Name":"CPU0_0V75_PCP", + "vout11_Name":"CPU1_0V75_PCP", + "vout12_Name":"CPU1_1V8_VDDH", + "vout13_Name":"CPU1_1V5_VDDH", + "vout14_Name":"CPU1_0V85_DC_RCA", + "vout15_Name":"CPU1_1V8_SOC", + "vout16_Name":"CPU1_0V8_DC_SOC", + "vout17_Name":"CPU1_1V8_PCP", + "vout2_Max":9, + "vout3_Max":4.5, + "vout4_Max":3, + "vout5_Max":4, + "vout6_Max":20, + "vout7_Max":5.5, + "vout8_Max":3.5, + "vout9_Max":3.5, + "vout10_Max":3, + "vout11_Max":3, + "vout12_Max":4, + "vout13_Max":3.4, + "vout14_Max":3, + "vout15_Max":4, + "vout16_Max":3.2, + "vout17_Max":4, + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout2", + "Severity":1, + "Value":6.06 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout2", + "Severity":1, + "Value":3.391 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout2", + "Severity":0, + "Value":5.244 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout2", + "Severity":0, + "Value":4.741 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout3", + "Severity":1, + "Value":3.009 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout3", + "Severity":1, + "Value":0.484 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout3", + "Severity":0, + "Value":0.637 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout3", + "Severity":0, + "Value":0.566 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout4", + "Severity":1, + "Value":1.901 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout4", + "Severity":1, + "Value":0.198 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout4", + "Severity":0, + "Value":1.496 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout4", + "Severity":0, + "Value":0.404 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout5", + "Severity":1, + "Value":2.165 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout5", + "Severity":1, + "Value":1.219 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout5", + "Severity":0, + "Value":1.891 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout5", + "Severity":0, + "Value":1.713 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout6", + "Severity":1, + "Value":16.685 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout6", + "Severity":1, + "Value":8.591 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout6", + "Severity":0, + "Value":14.91 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout6", + "Severity":0, + "Value":10.011 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout7", + "Severity":1, + "Value":3.974 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout7", + "Severity":1, + "Value":2.268 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout7", + "Severity":0, + "Value":3.465 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout7", + "Severity":0, + "Value":3.132 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout8", + "Severity":1, + "Value":1.805 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout8", + "Severity":1, + "Value":0.802 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout8", + "Severity":0, + "Value":1.263 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout8", + "Severity":0, + "Value":1.145 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout9", + "Severity":1, + "Value":1.805 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout9", + "Severity":1, + "Value":0.802 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout9", + "Severity":0, + "Value":1.263 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout9", + "Severity":0, + "Value":1.145 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout10", + "Severity":1, + "Value":1.196 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout10", + "Severity":1, + "Value":0.598 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout10", + "Severity":0, + "Value":1.098 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout10", + "Severity":0, + "Value":0.755 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout11", + "Severity":1, + "Value":1.196 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout11", + "Severity":1, + "Value":0.598 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout11", + "Severity":0, + "Value":1.098 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout11", + "Severity":0, + "Value":0.755 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout12", + "Severity":1, + "Value":2.167 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout12", + "Severity":1, + "Value":1.225 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout12", + "Severity":0, + "Value":1.884 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout12", + "Severity":0, + "Value":1.711 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout13", + "Severity":1, + "Value":1.804 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout13", + "Severity":1, + "Value":1.021 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout13", + "Severity":0, + "Value":1.575 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout13", + "Severity":0, + "Value":1.426 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout14", + "Severity":1, + "Value":1.901 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout14", + "Severity":1, + "Value":0.198 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout14", + "Severity":0, + "Value":1.496 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout14", + "Severity":0, + "Value":0.404 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout15", + "Severity":1, + "Value":2.165 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout15", + "Severity":1, + "Value":1.214 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout15", + "Severity":0, + "Value":1.883 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout15", + "Severity":0, + "Value":1.795 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout16", + "Severity":1, + "Value":1.196 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout16", + "Severity":1, + "Value":0.598 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout16", + "Severity":0, + "Value":0.823 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout16", + "Severity":0, + "Value":0.676 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout17", + "Severity":1, + "Value":2.165 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout17", + "Severity":1, + "Value":1.219 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout17", + "Severity":0, + "Value":1.891 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout17", + "Severity":0, + "Value":1.713 + } + ], + "Type":"ADM1266" + }, + { + "Name":"Mobo_5V_SATA", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":22 + }, + { + "Name":"Mobo_1V_SATA", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":23 + }, + { + "Name":"CPU0_0V85_DC_RCA", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":24 + }, + { + "Name":"CPU0_1V8_PCP", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":25 + }, + { + "Name":"CPU1_13V5_NBM", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":26 + }, + { + "Name":"CPU1_3V3_SOC", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":27 + }, + { + "Name":"CPU1_1V2_DQ0123", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":28 + }, + { + "Name":"CPU1_1V2_DQ4567", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":29 + }, + { + "Name":"CPU0_0V75_PCP", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":30 + }, + { + "Name":"CPU1_0V75_PCP", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":31 + }, + { + "Name":"CPU1_1V8_VDDH", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":32 + }, + { + "Name":"CPU1_1V5_VDDH", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":33 + }, + { + "Name":"CPU1_0V85_DC_RCA", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":34 + }, + { + "Name":"CPU1_1V8_SOC", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":35 + }, + { + "Name":"CPU1_0V8_DC_SOC", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":36 + }, + { + "Name":"CPU1_1V8_PCP", + "Type":"ADM1266", + "EntityId":"0x13", + "EntityInstance":37 + }, + { + "Address":"0x4e", + "Bus":2, + "Name":"MB_smpro_CPU1", + "Labels":[ + "temp1", + "temp2", + "temp3", + "temp4", + "temp5", + "temp6", + "temp7", + "temp8", + "temp9", + "temp10", + "temp11", + "temp12", + "temp13", + "temp14", + "pout5", + "pout3", + "pout4", + "pout6", + "pout7", + "pout8", + "vout1", + "vout2", + "vout3", + "vout4", + "vout5", + "vout6", + "temp17", + "curr1", + "curr2", + "curr3", + "curr4", + "curr5" + ], + "Type":"AC01_SMPRO", + "temp1_Name":"CPU1_SOC_T", + "temp2_Name":"CPU1_SOC_VRD_T", + "temp3_Name":"CPU1_DIMM_VRD_T", + "temp4_Name":"CPU1_CORE_VRD_T", + "temp5_Name":"CPU1_DIMMG0_T", + "temp6_Name":"CPU1_CH0DIMM_T", + "temp7_Name":"CPU1_CH1DIMM_T", + "temp8_Name":"CPU1_CH2DIMM_T", + "temp9_Name":"CPU1_CH3DIMM_T", + "temp10_Name":"CPU1_DIMMG1_T", + "temp11_Name":"CPU1_CH4DIMM_T", + "temp12_Name":"CPU1_CH5DIMM_T", + "temp13_Name":"CPU1_CH6DIMM_T", + "temp14_Name":"CPU1_CH7DIMM_T", + "pout5_Name":"CPU1_CPU_PW", + "pout3_Name":"CPU1_DIMM_VR1_PW", + "pout4_Name":"CPU1_DIMM_VR2_PW", + "pout6_Name":"CPU1_MEM_PW", + "pout7_Name":"CPU1_RCA_VR_PW", + "pout8_Name":"CPU1_SOC_TDP_PW", + "vout1_Name":"CPU1_CPU_VCORE", + "vout2_Name":"CPU1_SOC_V", + "vout3_Name":"CPU1_DIMM_VR1_V", + "vout4_Name":"CPU1_DIMM_VR2_V", + "vout5_Name":"CPU1_DIMM_DDR_V", + "vout6_Name":"CPU1_RCA_VR_V", + "temp17_Name":"CPU1_RCA_VR_T", + "curr1_Name":"CPU1_CORE_VRD_CU", + "curr2_Name":"CPU1_SOC_VRD_CU", + "curr3_Name":"CPU1_DIMM_VR1_CU", + "curr4_Name":"CPU1_DIMM_VR2_CU", + "curr5_Name":"CPU1_RCA_VRD_CU", + "temp1_Max":255, + "temp2_Max":255, + "temp3_Max":255, + "temp4_Max":255, + "temp5_Max":255, + "temp6_Max":255, + "temp7_Max":255, + "temp8_Max":255, + "temp9_Max":255, + "temp10_Max":255, + "temp11_Max":255, + "temp12_Max":255, + "temp13_Max":255, + "temp14_Max":255, + "pout5_Max":255, + "pout3_Max":40, + "pout4_Max":40, + "pout6_Max":70, + "pout7_Max":30, + "pout8_Max":255, + "vout1_Max":3.2, + "vout2_Max":3.3, + "vout3_Max":3, + "vout4_Max":3, + "vout5_Max":5, + "vout6_Max":6, + "temp17_Max":255, + "curr1_Max":13, + "curr2_Max":5, + "curr3_Max":13, + "curr4_Max":13, + "curr5_Max":10, + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp1", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp1", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp2", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp2", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp3", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp3", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp4", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp4", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp5", + "Severity":1, + "Value":90 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp5", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp6", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp6", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp7", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp7", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp8", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp8", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp9", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp9", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp10", + "Severity":1, + "Value":90 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp10", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp11", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp11", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp12", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp12", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp13", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp13", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp14", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp14", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout5", + "Severity":1, + "Value":53.815 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"pout5", + "Severity":0, + "Value":47.94 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout3", + "Severity":1, + "Value":7.801 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout4", + "Severity":1, + "Value":7.801 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout6", + "Severity":1, + "Value":29.987 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout1", + "Severity":1, + "Value":1.05 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout1", + "Severity":1, + "Value":0.697 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout1", + "Severity":0, + "Value":1.05 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout1", + "Severity":0, + "Value":0.697 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout2", + "Severity":1, + "Value":0.951 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout2", + "Severity":1, + "Value":0.549 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout2", + "Severity":0, + "Value":0.804 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout2", + "Severity":0, + "Value":0.598 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout3", + "Severity":1, + "Value":1.254 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout3", + "Severity":1, + "Value":1.098 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout3", + "Severity":0, + "Value":1.215 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout3", + "Severity":0, + "Value":1.147 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout4", + "Severity":1, + "Value":1.254 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout4", + "Severity":1, + "Value":1.098 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout4", + "Severity":0, + "Value":1.215 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout4", + "Severity":0, + "Value":1.147 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout5", + "Severity":1, + "Value":2.999 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp17", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp17", + "Severity":0, + "Value":100 + } + ] + }, + { + "Name":"CPU1_SOC_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":12 + }, + { + "Name":"CPU1_SOC_VRD_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":13 + }, + { + "Name":"CPU1_DIMM_VRD_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":14 + }, + { + "Name":"CPU1_CORE_VRD_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":15 + }, + { + "Name":"CPU1_DIMMG0_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":16 + }, + { + "Name":"CPU1_CH0DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":17 + }, + { + "Name":"CPU1_CH1DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":18 + }, + { + "Name":"CPU1_CH2DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":19 + }, + { + "Name":"CPU1_CH3DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":20 + }, + { + "Name":"CPU1_DIMMG1_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":21 + }, + { + "Name":"CPU1_CH4DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":22 + }, + { + "Name":"CPU1_CH5DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":23 + }, + { + "Name":"CPU1_CH6DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":24 + }, + { + "Name":"CPU1_CH7DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":25 + }, + { + "Name":"CPU1_CPU_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":38 + }, + { + "Name":"CPU1_DIMM_VR1_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":39 + }, + { + "Name":"CPU1_DIMM_VR2_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":40 + }, + { + "Name":"CPU1_MEM_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":41 + }, + { + "Name":"CPU1_RCA_VR_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":42 + }, + { + "Name":"CPU1_SOC_TDP_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":43 + }, + { + "Name":"CPU1_CPU_VCORE", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":44 + }, + { + "Name":"CPU1_SOC_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":45 + }, + { + "Name":"CPU1_DIMM_VR1_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":46 + }, + { + "Name":"CPU1_DIMM_VR2_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":47 + }, + { + "Name":"CPU1_DIMM_DDR_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":48 + }, + { + "Name":"CPU1_RCA_VR_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":49 + }, + { + "Name":"CPU1_RCA_VR_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":26 + }, + { + "Name":"CPU1_CORE_VRD_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":50 + }, + { + "Name":"CPU1_SOC_VRD_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":51 + }, + { + "Name":"CPU1_DIMM_VR1_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":52 + }, + { + "Name":"CPU1_DIMM_VR2_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":53 + }, + { + "Name":"CPU1_RCA_VRD_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":54 + }, + { + "Address":"0x4f", + "Bus":2, + "Name":"MB_smpro_CPU0", + "Labels":[ + "temp1", + "temp2", + "temp3", + "temp4", + "temp5", + "temp6", + "temp7", + "temp8", + "temp9", + "temp10", + "temp11", + "temp12", + "temp13", + "temp14", + "pout5", + "pout3", + "pout4", + "pout6", + "pout7", + "pout8", + "vout1", + "vout2", + "vout3", + "vout4", + "vout5", + "vout6", + "temp17", + "curr1", + "curr2", + "curr3", + "curr4", + "curr5" + ], + "Type":"AC01_SMPRO", + "temp1_Name":"CPU0_SOC_T", + "temp2_Name":"CPU0_SOC_VRD_T", + "temp3_Name":"CPU0_DIMM_VRD_T", + "temp4_Name":"CPU0_CORE_VRD_T", + "temp5_Name":"CPU0_DIMMG0_T", + "temp6_Name":"CPU0_CH0DIMM_T", + "temp7_Name":"CPU0_CH1DIMM_T", + "temp8_Name":"CPU0_CH2DIMM_T", + "temp9_Name":"CPU0_CH3DIMM_T", + "temp10_Name":"CPU0_DIMMG1_T", + "temp11_Name":"CPU0_CH4DIMM_T", + "temp12_Name":"CPU0_CH5DIMM_T", + "temp13_Name":"CPU0_CH6DIMM_T", + "temp14_Name":"CPU0_CH7DIMM_T", + "pout5_Name":"CPU0_CPU_PW", + "pout3_Name":"CPU0_DIMM_VR1_PW", + "pout4_Name":"CPU0_DIMM_VR2_PW", + "pout6_Name":"CPU0_MEM_PW", + "pout7_Name":"CPU0_RCA_VR_PW", + "pout8_Name":"CPU0_SOC_TDP_PW", + "vout1_Name":"CPU0_CPU_VCORE", + "vout2_Name":"CPU0_SOC_V", + "vout3_Name":"CPU0_DIMM_VR1_V", + "vout4_Name":"CPU0_DIMM_VR2_V", + "vout5_Name":"CPU0_DIMM_DDR_V", + "vout6_Name":"CPU0_RCA_VR_V", + "temp17_Name":"CPU0_RCA_VR_T", + "curr1_Name":"CPU0_CORE_VRD_CU", + "curr2_Name":"CPU0_SOC_VRD_CU", + "curr3_Name":"CPU0_DIMM_VR1_CU", + "curr4_Name":"CPU0_DIMM_VR2_CU", + "curr5_Name":"CPU0_RCA_VRD_CU", + "temp1_Max":255, + "temp2_Max":255, + "temp3_Max":255, + "temp4_Max":255, + "temp5_Max":255, + "temp6_Max":255, + "temp7_Max":255, + "temp8_Max":255, + "temp9_Max":255, + "temp10_Max":255, + "temp11_Max":255, + "temp12_Max":255, + "temp13_Max":255, + "temp14_Max":255, + "pout5_Max":350, + "pout3_Max":40, + "pout4_Max":40, + "pout6_Max":80, + "pout7_Max":30, + "pout8_Max":255, + "vout1_Max":3, + "vout2_Max":3.5, + "vout3_Max":3.5, + "vout4_Max":3.5, + "vout5_Max":5, + "vout6_Max":5, + "temp17_Max":255, + "curr1_Max":13, + "curr2_Max":5, + "curr3_Max":12, + "curr4_Max":12, + "curr5_Max":10, + "Thresholds":[ + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp1", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp1", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp2", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp2", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp3", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp3", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp4", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp4", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp5", + "Severity":1, + "Value":90 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp5", + "Severity":0, + "Value":80 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp6", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp6", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp7", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp7", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp8", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp8", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp9", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp9", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp10", + "Severity":1, + "Value":90 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp10", + "Severity":0, + "Value":80 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp11", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp11", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp12", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp12", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp13", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp13", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp14", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp14", + "Severity":0, + "Value":100 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout5", + "Severity":1, + "Value":299.98 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"pout5", + "Severity":0, + "Value":299.98 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout3", + "Severity":1, + "Value":7.801 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout4", + "Severity":1, + "Value":7.801 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"pout6", + "Severity":1, + "Value":29.987 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout1", + "Severity":1, + "Value":1.05 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout1", + "Severity":1, + "Value":0.697 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout1", + "Severity":0, + "Value":1.05 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout1", + "Severity":0, + "Value":0.697 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout2", + "Severity":1, + "Value":0.951 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout2", + "Severity":1, + "Value":0.549 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout2", + "Severity":0, + "Value":0.804 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout2", + "Severity":0, + "Value":0.598 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout3", + "Severity":1, + "Value":1.254 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout3", + "Severity":1, + "Value":1.098 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout3", + "Severity":0, + "Value":1.215 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout3", + "Severity":0, + "Value":1.147 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout4", + "Severity":1, + "Value":1.254 + }, + { + "Direction":"less than", + "Name":"lower critical", + "Label":"vout4", + "Severity":1, + "Value":1.098 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"vout4", + "Severity":0, + "Value":1.215 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Label":"vout4", + "Severity":0, + "Value":1.147 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"vout5", + "Severity":1, + "Value":2.999 + }, + { + "Direction":"greater than", + "Name":"upper critical", + "Label":"temp17", + "Severity":1, + "Value":105 + }, + { + "Direction":"greater than", + "Name":"upper non critical", + "Label":"temp17", + "Severity":0, + "Value":100 + } + ] + }, + { + "Name":"CPU0_SOC_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":27 + }, + { + "Name":"CPU0_SOC_VRD_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":28 + }, + { + "Name":"CPU0_DIMM_VRD_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":29 + }, + { + "Name":"CPU0_CORE_VRD_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":30 + }, + { + "Name":"CPU0_DIMMG0_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":31 + }, + { + "Name":"CPU0_CH0DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":32 + }, + { + "Name":"CPU0_CH1DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":33 + }, + { + "Name":"CPU0_CH2DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":34 + }, + { + "Name":"CPU0_CH3DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":35 + }, + { + "Name":"CPU0_DIMMG1_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":36 + }, + { + "Name":"CPU0_CH4DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":37 + }, + { + "Name":"CPU0_CH5DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":38 + }, + { + "Name":"CPU0_CH6DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":39 + }, + { + "Name":"CPU0_CH7DIMM_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":40 + }, + { + "Name":"CPU0_CPU_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":55 + }, + { + "Name":"CPU0_DIMM_VR1_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":56 + }, + { + "Name":"CPU0_DIMM_VR2_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":57 + }, + { + "Name":"CPU0_MEM_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":58 + }, + { + "Name":"CPU0_RCA_VR_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":59 + }, + { + "Name":"CPU0_SOC_TDP_PW", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":60 + }, + { + "Name":"CPU0_CPU_VCORE", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":61 + }, + { + "Name":"CPU0_SOC_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":62 + }, + { + "Name":"CPU0_DIMM_VR1_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":63 + }, + { + "Name":"CPU0_DIMM_VR2_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":64 + }, + { + "Name":"CPU0_DIMM_DDR_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":65 + }, + { + "Name":"CPU0_RCA_VR_V", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":66 + }, + { + "Name":"CPU0_RCA_VR_T", + "Type":"AC01_SMPRO", + "EntityId":"0x03", + "EntityInstance":41 + }, + { + "Name":"CPU0_CORE_VRD_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":67 + }, + { + "Name":"CPU0_SOC_VRD_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":68 + }, + { + "Name":"CPU0_DIMM_VR1_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":69 + }, + { + "Name":"CPU0_DIMM_VR2_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":70 + }, + { + "Name":"CPU0_RCA_VRD_CU", + "Type":"AC01_SMPRO", + "EntityId":"0x13", + "EntityInstance":71 + }, + { + "Index" : 8, + "Name" : "Mobo_NBM1_RAW", + "Type" : "ADC", + "EntityId" : "0x13", + "EntityInstance" : 72 + }, + { + "Index" : 9, + "Name" : "Mobo_NBM2_RAW", + "Type" : "ADC", + "EntityId" : "0x13", + "EntityInstance" : 73 + }, + { + "Name" : "Mobo_NBM1_T" + }, + { + "Name" : "Mobo_NBM2_T" + }, + { + "AllowedFailures":1, + "Name":"FanRedundancy", + "Type":"FanRedundancy" + }, + { + "Address":"0x2c", + "Bus":"18", + "Connector":{ + "Name":"REAR_FAN0_SPEED", + "Pwm":0, + "PwmName":"REAR_FAN0_PWM", + "Tachs":[ + 0 + ] + }, + "Index":0, + "MaxReading":20000, + "Name":"REAR_FAN0_SPEED", + "PowerState":"Always", + "Thresholds":[ + { + "Direction":"less than", + "Name":"lower critical", + "Severity":1, + "Value":2000 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Severity":0, + "Value":1000 + } + ], + "Type":"I2CFan", + "EntityId":"0x1D", + "EntityInstance":0, + "Mutable":true + }, + { + "EntityId":"0x1D", + "EntityInstance":0, + "Mutable":true, + "Name":"REAR_FAN0_PWM", + "Type":"I2CFan" + }, + { + "Address":"0x2c", + "Bus":"18", + "Connector":{ + "Name":"REAR_FAN1_SPEED", + "Pwm":1, + "PwmName":"REAR_FAN1_PWM", + "Tachs":[ + 0 + ] + }, + "Index":1, + "MaxReading":20000, + "Name":"REAR_FAN1_SPEED", + "PowerState":"Always", + "Thresholds":[ + { + "Direction":"less than", + "Name":"lower critical", + "Severity":1, + "Value":2000 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Severity":0, + "Value":1000 + } + ], + "Type":"I2CFan", + "EntityId":"0x1D", + "EntityInstance":1 + }, + { + "EntityId":"0x1D", + "EntityInstance":1, + "Mutable":true, + "Name":"REAR_FAN1_PWM", + "Type":"I2CFan" + }, + { + "Address":"0x2c", + "Bus":"18", + "Connector":{ + "Name":"REAR_FAN2_SPEED", + "Pwm":2, + "PwmName":"REAR_FAN2_PWM", + "Tachs":[ + 0 + ], + "EntityId":"0x1D", + "EntityInstance":2, + "Mutable":true + }, + "Index":2, + "MaxReading":20000, + "Name":"REAR_FAN2_SPEED", + "PowerState":"Always", + "Thresholds":[ + { + "Direction":"less than", + "Name":"lower critical", + "Severity":1, + "Value":2000 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Severity":0, + "Value":1000 + } + ], + "Type":"I2CFan", + "EntityId":"0x1D", + "EntityInstance":2 + }, + { + "EntityId":"0x1D", + "EntityInstance":2, + "Mutable":true, + "Name":"REAR_FAN2_PWM", + "Type":"I2CFan" + }, + { + "Address":"0x2c", + "Bus":"18", + "Connector":{ + "Name":"REAR_FAN3_SPEED", + "Pwm":3, + "PwmName":"REAR_FAN3_PWM", + "Tachs":[ + 0 + ], + "EntityId":"0x1D", + "EntityInstance":3, + "Mutable":true + }, + "Index":3, + "MaxReading":20000, + "Name":"REAR_FAN3_SPEED", + "PowerState":"Always", + "Thresholds":[ + { + "Direction":"less than", + "Name":"lower critical", + "Severity":1, + "Value":2000 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Severity":0, + "Value":1000 + } + ], + "Type":"I2CFan", + "EntityId":"0x1D", + "EntityInstance":3 + }, + { + "EntityId":"0x1D", + "EntityInstance":3, + "Mutable":true, + "Name":"REAR_FAN3_PWM", + "Type":"I2CFan" + }, + { + "Address":"0x2c", + "Bus":"18", + "Connector":{ + "Name":"REAR_FAN4_SPEED", + "Pwm":4, + "PwmName":"REAR_FAN4_PWM", + "Tachs":[ + 0 + ], + "EntityId":"0x1D", + "EntityInstance":4, + "Mutable":true + }, + "Index":4, + "MaxReading":20000, + "Name":"REAR_FAN4_SPEED", + "PowerState":"Always", + "Thresholds":[ + { + "Direction":"less than", + "Name":"lower critical", + "Severity":1, + "Value":2000 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Severity":0, + "Value":1000 + } + ], + "Type":"I2CFan", + "EntityId":"0x1D", + "EntityInstance":4 + }, + { + "EntityId":"0x1D", + "EntityInstance":4, + "Mutable":true, + "Name":"REAR_FAN4_PWM", + "Type":"I2CFan" + }, + { + "Address":"0x2c", + "Bus":"18", + "Connector":{ + "Name":"REAR_FAN5_SPEED", + "Pwm":5, + "PwmName":"REAR_FAN5_PWM", + "Tachs":[ + 0 + ], + "EntityId":"0x1D", + "EntityInstance":5, + "Mutable":true + }, + "Index":5, + "MaxReading":20000, + "Name":"REAR_FAN5_SPEED", + "PowerState":"Always", + "Thresholds":[ + { + "Direction":"less than", + "Name":"lower critical", + "Severity":1, + "Value":2000 + }, + { + "Direction":"less than", + "Name":"lower non critical", + "Severity":0, + "Value":1000 + } + ], + "Type":"I2CFan", + "EntityId":"0x1D", + "EntityInstance":5 + }, + { + "EntityId":"0x1D", + "EntityInstance":5, + "Mutable":true, + "Name":"REAR_FAN5_PWM", + "Type":"I2CFan" + }, + { + "Name": "Fan1Zone", + "Type": "Pid.Zone", + "MinThermalOutput": 25, + "FailSafePercent": 100 + }, + { + "Name": "Fan2Zone", + "Type": "Pid.Zone", + "MinThermalOutput": 25, + "FailSafePercent": 100 + }, + { + "Name": "REAR_FAN0_1", + "Type": "Pid", + "Class": "fan", + "SetPoint": 65.0, + "FFGainCoefficient": 1.0, + "FFOffCoefficient": 0.0, + "PCoefficient": 0.0, + "ICoefficient": 0.0, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "REAR_FAN0_SPEED", + "REAR_FAN1_SPEED" + ], + "Outputs": [ + "REAR_FAN0_PWM", + "REAR_FAN1_PWM" + ], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "REAR_FAN2", + "Type": "Pid", + "Class": "fan", + "SetPoint": 65.0, + "FFGainCoefficient": 1.0, + "FFOffCoefficient": 0.0, + "PCoefficient": 0.0, + "ICoefficient": 0.0, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "REAR_FAN2_SPEED" + ], + "Outputs": [ + "REAR_FAN2_PWM" + ], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "REAR_FAN3", + "Type": "Pid", + "Class": "fan", + "SetPoint": 65.0, + "FFGainCoefficient": 1.0, + "FFOffCoefficient": 0.0, + "PCoefficient": 0.0, + "ICoefficient": 0.0, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "REAR_FAN3_SPEED" + ], + "Outputs": [ + "REAR_FAN3_PWM" + ], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "REAR_FAN4_5", + "Type": "Pid", + "Class": "fan", + "SetPoint": 65.0, + "FFGainCoefficient": 1.0, + "FFOffCoefficient": 0.0, + "PCoefficient": 0.0, + "ICoefficient": 0.0, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "REAR_FAN4_SPEED", + "REAR_FAN5_SPEED" + ], + "Outputs": [ + "REAR_FAN4_PWM", + "REAR_FAN5_PWM" + ], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "CPU0_SOC_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 90.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -4.5, + "ICoefficient": -0.3, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU0_SOC_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "CPU0_SOC_VRD_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 85.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU0_SOC_VRD_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "CPU0_DIMM_VRD_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 85.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU0_DIMM_VRD_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "CPU0_CORE_VRD_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 85.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU0_CORE_VRD_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "CPU0_DIMMG0_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 60.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU0_DIMMG0_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "CPU0_DIMMG1_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 60.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU0_DIMMG0_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "CPU1_SOC_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 90.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -4.5, + "ICoefficient": -0.3, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU1_SOC_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "CPU1_SOC_VRD_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 85.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU1_SOC_VRD_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "CPU1_DIMM_VRD_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 85.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU1_DIMM_VRD_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "CPU1_CORE_VRD_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 85.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU1_CORE_VRD_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "CPU1_DIMMG0_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 60.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU1_DIMMG0_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "CPU1_DIMMG1_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 60.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "CPU1_DIMMG0_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "Mobo_STB_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 85.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "Mobo_STB_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "Mobo_NBM1_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 75.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "Mobo_NBM1_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "Mobo_NBM2_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 75.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "Mobo_NBM2_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "Mobo_NBM1_ZONE_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 60.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "Mobo_NBM1_ZONE_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "Mobo_NBM2_ZONE_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 60.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "Mobo_NBM2_ZONE_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + }, + { + "Name": "Mobo_M2_ZONE_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 50.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -2.0, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "Mobo_M2_ZONE_T" + ], + "Outputs": [], + "Zones": [ + "Fan1Zone" + ] + }, + { + "Name": "Mobo_BATT_ZONE_TEMP", + "Type": "Pid", + "Class": "temp", + "SetPoint": 50.0, + "FFGainCoefficient": 0.0, + "FFOffCoefficient": 0.0, + "PCoefficient": -3.5, + "ICoefficient": -0.1, + "ILimitMin": 0.0, + "ILimitMax": 0.0, + "PositiveHysteresis": 0.0, + "NegativeHysteresis": 0.0, + "SlewPos": 0.0, + "SlewNeg": 0.0, + "OutLimitMin": 25.0, + "OutLimitMax": 100.0, + "Inputs": [ + "Mobo_BATT_ZONE_T" + ], + "Outputs": [], + "Zones": [ + "Fan2Zone" + ] + } + ], + "Name":"Kudo_MB", + "Probe":"xyz.openbmc_project.FruDevice({'BOARD_SERIAL_NUMBER': 'MCN*'})", + "Type":"Board", + "xyz.openbmc_project.Inventory.Decorator.Asset":{ + "Manufacturer":"$BOARD_MANUFACTURER", + "Model":"$BOARD_PRODUCT_NAME", + "PartNumber":"$BOARD_PART_NUMBER", + "SerialNumber":"$BOARD_SERIAL_NUMBER" + }, + "xyz.openbmc_project.Inventory.Decorator.FruDevice":{ + "Bus":"$bus", + "Address":"$address" + }, + "xyz.openbmc_project.Inventory.Decorator.Ipmi": { + "EntityId": "0x07", + "EntityInstance": 1 + } + } +] diff --git a/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager_%.bbappend new file mode 100644 index 000000000..58b52f50b --- /dev/null +++ b/meta-fii/meta-kudo/recipes-phosphor/configuration/entity-manager_%.bbappend @@ -0,0 +1,7 @@ +FILESEXTRAPATHS_prepend_kudo := "${THISDIR}/${PN}:" + +SRC_URI_append_kudo = " file://kudo.json" + +do_install_append_kudo () { + install -m 0644 -D ${WORKDIR}/kudo.json ${D}/usr/share/entity-manager/configurations/kudo.json +} 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 diff --git a/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend b/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend index 0efccea65..588803b3b 100644 --- a/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend +++ b/meta-fii/meta-kudo/recipes-phosphor/image/obmc-phosphor-image.bbappend @@ -1,7 +1,7 @@ -OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " ipmitool" -OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " ethtool" OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " google-ipmi-sys" OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " google-ipmi-i2c" OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-blobs" OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-ethstats" OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " phosphor-ipmi-flash" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " usb-network" +OBMC_IMAGE_EXTRA_INSTALL_append_kudo = " entity-manager" diff --git a/meta-fii/meta-kudo/recipes-phosphor/ipmi/phosphor-ipmi-flash_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/ipmi/phosphor-ipmi-flash_%.bbappend new file mode 100644 index 000000000..fa9468ac4 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-phosphor/ipmi/phosphor-ipmi-flash_%.bbappend @@ -0,0 +1,3 @@ +PACKAGECONFIG_append_kudo = " nuvoton-p2a-mbox net-bridge" + +IPMI_FLASH_BMC_ADDRESS_kudo = "0xF0848000" diff --git a/meta-fii/meta-kudo/recipes-phosphor/sel-logger/phosphor-sel-logger_%.bbappend b/meta-fii/meta-kudo/recipes-phosphor/sel-logger/phosphor-sel-logger_%.bbappend new file mode 100644 index 000000000..664ca5901 --- /dev/null +++ b/meta-fii/meta-kudo/recipes-phosphor/sel-logger/phosphor-sel-logger_%.bbappend @@ -0,0 +1,2 @@ +# Enable threshold monitoring +EXTRA_OECMAKE_append_kudo = " -DSEL_LOGGER_MONITOR_THRESHOLD_EVENTS=ON" |