From e161514219e0dc8a957dabbb8529fb9fcac4e115 Mon Sep 17 00:00:00 2001 From: Brad Bishop Date: Wed, 22 Apr 2020 14:06:02 -0400 Subject: meta-ibm: move all meta-witherspoon metadata The metadata common to all IBM systems is confusingly split between meta-ibm and meta-witherspoon. Move everything to meta-ibm. The meta-ibm README is re-written to more accurately reflect the scope of the layer. Allow the configuration samples (bblayers.conf.sample, local.conf.sample) to be sourced from either meta-ibm or meta-witherspoon until such a time that any workflows and tooling have had the opportunity to move to meta-ibm. (From meta-ibm rev: 6e05ef2e90b214eaf4e43ee7027bbbb1d8d09442) Change-Id: I3ec890d5300f9649c974ea6b9dca93a2e8a889ab Signed-off-by: Brad Bishop Signed-off-by: Andrew Geissler --- .../phosphor-logging-error-logs-native.bbappend | 2 + .../power/phosphor-power/rainier/psu.json | 31 ++++ .../power-supply-monitor-0.conf | 6 + .../power-supply-monitor-1.conf | 6 + .../power/phosphor-power/swift/psu.json | 29 +++ .../power-supply-monitor-0.conf | 6 + .../power-supply-monitor-1.conf | 6 + .../power-supply-monitor-0.conf | 6 + .../power-supply-monitor-1.conf | 6 + .../witherspoon/pseq-monitor-pgood.service | 13 ++ .../power/phosphor-power/witherspoon/psu.json | 29 +++ .../power/phosphor-power_%.bbappend | 17 ++ meta-ibm/recipes-phosphor/power/power-sequencer.bb | 18 ++ .../power/power-sequencer/rainier/ucd90160.yaml | 201 +++++++++++++++++++++ .../power/power-sequencer/swift/ucd90160.yaml | 180 ++++++++++++++++++ .../power-sequencer/witherspoon/ucd90160.yaml | 103 +++++++++++ ...witherspoon-pfault-analysis-error-native_git.bb | 18 ++ .../power/witherspoon-power-supply-sync.bb | 16 ++ .../power-supply-sync.service | 14 ++ 19 files changed, 707 insertions(+) create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-logging-error-logs-native.bbappend create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/rainier/psu.json create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-0.conf create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-1.conf create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/swift/psu.json create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-0.conf create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-1.conf create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-0.conf create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-1.conf create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/pseq-monitor-pgood.service create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/psu.json create mode 100644 meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend create mode 100644 meta-ibm/recipes-phosphor/power/power-sequencer.bb create mode 100644 meta-ibm/recipes-phosphor/power/power-sequencer/rainier/ucd90160.yaml create mode 100644 meta-ibm/recipes-phosphor/power/power-sequencer/swift/ucd90160.yaml create mode 100644 meta-ibm/recipes-phosphor/power/power-sequencer/witherspoon/ucd90160.yaml create mode 100644 meta-ibm/recipes-phosphor/power/witherspoon-pfault-analysis-error-native_git.bb create mode 100644 meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync.bb create mode 100644 meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync/power-supply-sync.service (limited to 'meta-ibm/recipes-phosphor/power') diff --git a/meta-ibm/recipes-phosphor/power/phosphor-logging-error-logs-native.bbappend b/meta-ibm/recipes-phosphor/power/phosphor-logging-error-logs-native.bbappend new file mode 100644 index 000000000..03646adeb --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-logging-error-logs-native.bbappend @@ -0,0 +1,2 @@ +DEPENDS += "witherspoon-pfault-analysis-error-native" + diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/rainier/psu.json b/meta-ibm/recipes-phosphor/power/phosphor-power/rainier/psu.json new file mode 100644 index 000000000..baa96ac27 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/rainier/psu.json @@ -0,0 +1,31 @@ +{ + "inventoryPMBusAccessType": "HwmonDeviceDebug", + "fruConfigs": [ + { + "propertyName": "PartNumber", + "fileName": "part_number", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "SerialNumber", + "fileName": "serial_number", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "Model", + "fileName": "ccin", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "Version", + "fileName": "fw_version", + "interface": "xyz.openbmc_project.Software.Version" + } + ], + "psuDevices": { + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0" : "/sys/bus/i2c/devices/3-0068", + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply1" : "/sys/bus/i2c/devices/3-0069", + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply2" : "/sys/bus/i2c/devices/3-006a", + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply3" : "/sys/bus/i2c/devices/3-006b" + } +} diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-0.conf b/meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-0.conf new file mode 100644 index 000000000..167e605d0 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-0.conf @@ -0,0 +1,6 @@ +DEVPATH=/sys/bus/i2c/devices/3-0068 +INSTANCE=0 +INVENTORY=/system/chassis/motherboard/powersupply0 +NUM_HISTORY_RECORDS=120 +SYNC_GPIO_PATH=/dev/gpiochip0 +SYNC_GPIO_NUM=105 diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-1.conf b/meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-1.conf new file mode 100644 index 000000000..faa5adec6 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/swift/obmc/power-supply-monitor/power-supply-monitor-1.conf @@ -0,0 +1,6 @@ +DEVPATH=/sys/bus/i2c/devices/3-0069 +INSTANCE=1 +INVENTORY=/system/chassis/motherboard/powersupply1 +NUM_HISTORY_RECORDS=120 +SYNC_GPIO_PATH=/dev/gpiochip0 +SYNC_GPIO_NUM=105 diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/swift/psu.json b/meta-ibm/recipes-phosphor/power/phosphor-power/swift/psu.json new file mode 100644 index 000000000..94f14dd60 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/swift/psu.json @@ -0,0 +1,29 @@ +{ + "inventoryPMBusAccessType": "HwmonDeviceDebug", + "fruConfigs": [ + { + "propertyName": "PartNumber", + "fileName": "part_number", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "SerialNumber", + "fileName": "serial_number", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "Model", + "fileName": "ccin", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "Version", + "fileName": "fw_version", + "interface": "xyz.openbmc_project.Software.Version" + } + ], + "psuDevices": { + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0" : "/sys/bus/i2c/devices/3-0068", + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply1" : "/sys/bus/i2c/devices/3-0069" + } +} diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-0.conf b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-0.conf new file mode 100644 index 000000000..15390ce42 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-0.conf @@ -0,0 +1,6 @@ +DEVPATH=/sys/bus/i2c/devices/3-0069 +INSTANCE=0 +INVENTORY=/system/chassis/motherboard/powersupply0 +NUM_HISTORY_RECORDS=120 +SYNC_GPIO_PATH=/dev/gpiochip0 +SYNC_GPIO_NUM=38 diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-1.conf b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-1.conf new file mode 100644 index 000000000..ce9f322a5 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon-tacoma/obmc/power-supply-monitor/power-supply-monitor-1.conf @@ -0,0 +1,6 @@ +DEVPATH=/sys/bus/i2c/devices/3-0068 +INSTANCE=1 +INVENTORY=/system/chassis/motherboard/powersupply1 +NUM_HISTORY_RECORDS=120 +SYNC_GPIO_PATH=/dev/gpiochip0 +SYNC_GPIO_NUM=38 diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-0.conf b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-0.conf new file mode 100644 index 000000000..d6732e6b8 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-0.conf @@ -0,0 +1,6 @@ +DEVPATH=/sys/bus/i2c/devices/3-0069 +INSTANCE=0 +INVENTORY=/system/chassis/motherboard/powersupply0 +NUM_HISTORY_RECORDS=120 +SYNC_GPIO_PATH=/dev/gpiochip0 +SYNC_GPIO_NUM=105 diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-1.conf b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-1.conf new file mode 100644 index 000000000..cace335b1 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/obmc/power-supply-monitor/power-supply-monitor-1.conf @@ -0,0 +1,6 @@ +DEVPATH=/sys/bus/i2c/devices/3-0068 +INSTANCE=1 +INVENTORY=/system/chassis/motherboard/powersupply1 +NUM_HISTORY_RECORDS=120 +SYNC_GPIO_PATH=/dev/gpiochip0 +SYNC_GPIO_NUM=105 diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/pseq-monitor-pgood.service b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/pseq-monitor-pgood.service new file mode 100644 index 000000000..458c5e6d7 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/pseq-monitor-pgood.service @@ -0,0 +1,13 @@ +[Unit] +Description=Power Sequencer Power-on Monitor +Wants=op-power-start@0.service +After=op-power-start@0.service +Wants=power-workarounds@0.service +After=power-workarounds@0.service +Conflicts=obmc-chassis-poweroff@0.target +ConditionPathExists=!/run/openbmc/chassis@0-on + +[Service] +Type=oneshot +ExecStart=/usr/bin/env pseq-monitor -a pgood-monitor -i 5000 +SyslogIdentifier=pseq-monitor diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/psu.json b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/psu.json new file mode 100644 index 000000000..cbabc7839 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power/witherspoon/psu.json @@ -0,0 +1,29 @@ +{ + "inventoryPMBusAccessType": "HwmonDeviceDebug", + "fruConfigs": [ + { + "propertyName": "PartNumber", + "fileName": "part_number", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "SerialNumber", + "fileName": "serial_number", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "Model", + "fileName": "ccin", + "interface": "xyz.openbmc_project.Inventory.Decorator.Asset" + }, + { + "propertyName": "Version", + "fileName": "fw_version", + "interface": "xyz.openbmc_project.Software.Version" + } + ], + "psuDevices": { + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply0" : "/sys/bus/i2c/devices/3-0069", + "/xyz/openbmc_project/inventory/system/chassis/motherboard/powersupply1" : "/sys/bus/i2c/devices/3-0068" + } +} diff --git a/meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend b/meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend new file mode 100644 index 000000000..1105e0cf6 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/phosphor-power_%.bbappend @@ -0,0 +1,17 @@ +FILESEXTRAPATHS_prepend := "${THISDIR}/${PN}:" + +inherit obmc-phosphor-systemd + +SRC_URI += "file://psu.json" + +EXTRA_OEMESON += "-Ducd90160-yaml=${STAGING_DIR_HOST}${datadir}/power-sequencer/ucd90160.yaml" + +DEPENDS += " power-sequencer" + +do_install_append(){ + install -D ${WORKDIR}/psu.json ${D}${datadir}/phosphor-power/psu.json +} +FILES_${PN} += "${datadir}/phosphor-power/psu.json" + +PSU_MONITOR_ENV_FMT = "obmc/power-supply-monitor/power-supply-monitor-{0}.conf" +SYSTEMD_ENVIRONMENT_FILE_${PN}-monitor_append_ibm-ac-server += "${@compose_list(d, 'PSU_MONITOR_ENV_FMT', 'OBMC_POWER_SUPPLY_INSTANCES')}" diff --git a/meta-ibm/recipes-phosphor/power/power-sequencer.bb b/meta-ibm/recipes-phosphor/power/power-sequencer.bb new file mode 100644 index 000000000..be5035eca --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/power-sequencer.bb @@ -0,0 +1,18 @@ +SUMMARY = "Power sequencer data definition" +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit allarch + +SRC_URI = "file://ucd90160.yaml" + +FILES_${PN} += "${datadir}/power-sequencer/ucd90160.yaml" + +S = "${WORKDIR}" + +do_install() { + DEST=${D}${datadir}/power-sequencer + + install -D ucd90160.yaml ${DEST}/ucd90160.yaml +} diff --git a/meta-ibm/recipes-phosphor/power/power-sequencer/rainier/ucd90160.yaml b/meta-ibm/recipes-phosphor/power/power-sequencer/rainier/ucd90160.yaml new file mode 100644 index 000000000..a6bba44ce --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/power-sequencer/rainier/ucd90160.yaml @@ -0,0 +1,201 @@ +- Device: + index: 0 + # Linux sysfs path for this power sequencer (0x22 8-bit address) + path: /sys/bus/i2c/devices/i2c-8/8-0011 + RailNames: + - "12.0V" + - "5.0V_USB" + - "5.0V_DASD" + - "3.3VA" + - "3.3VB" + - "1.5V" + - "1.1V" + - "VDDA_DCM0" + - "VDDB_DCM0" + - "VDDA_DCM1" + - "VDDB_DCM1" + - "12.0VCS" + - "3.3VCS" + - "1.1V_Current" + - "5.0V_USB_Current" + - "5.0V_DASD_Current" + - "12.0VN" + - "12.0VP" + - "12.0VQ" + - "12.0VR" + - "ThermalDiode1" + - "ThermalDiode2" + - "ThermalDiode3" + - "ThermalDiode4" + GPIConfigs: + - name: PCIE_SLOT0 + gpi: 1 + pinID: 44 + poll: false + analysis: none + - name: PCIE_SLOT1 + gpi: 2 + pinID: 45 + poll: false + analysis: none + - name: PCIE_SLOT2 + gpi: 3 + pinID: 46 + poll: false + analysis: none + - name: PCIE_SLOT3 + gpi: 4 + pinID: 47 + poll: false + analysis: none + - name: PCIE_SLOT4 + gpi: 5 + pinID: 48 + poll: false + analysis: none + - name: PCIE_SLOT7 + gpi: 6 + pinID: 49 + poll: false + analysis: none + - name: PCIE_SLOT8 + gpi: 7 + pinID: 50 + poll: false + analysis: none + - name: PCIE_SLOT9 + gpi: 8 + pinID: 51 + poll: false + analysis: none + - name: PCIE_SLOT10 + gpi: 9 + pinID: 52 + poll: false + analysis: none + - name: PCIE_SLOT11 + gpi: 10 + pinID: 53 + poll: false + analysis: none + - name: SOFTWARE_PGOOD + gpi: 11 + pinID: 55 + poll: false + analysis: none + - name: PGOOD_12A + gpi: 12 + pinID: 56 + poll: false + analysis: none + - name: PGOOD_12B + gpi: 13 + pinID: 57 + poll: false + analysis: none + - name: PGOOD_12C + gpi: 14 + pinID: 58 + poll: false + analysis: none + - name: PGOOD_12D + gpi: 15 + pinID: 59 + poll: false + analysis: none + - name: PGOOD_12L + gpi: 16 + pinID: 60 + poll: false + analysis: none + - name: PGOOD_12M + gpi: 17 + pinID: 61 + poll: false + analysis: none + - name: PGOOD_12N + gpi: 18 + pinID: 62 + poll: false + analysis: none + - name: PGOOD_12P + gpi: 19 + pinID: 63 + poll: false + analysis: none + - name: PGOOD_12PCIE + gpi: 20 + pinID: 64 + poll: false + analysis: none + - name: PGOOD_12Q + gpi: 21 + pinID: 65 + poll: false + analysis: none + - name: PGOOD_12R + gpi: 22 + pinID: 66 + poll: false + analysis: none + - name: PGOOD_VDN_DCM0 + gpi: 23 + pinID: 72 + poll: false + analysis: none + - name: PGOOD_VDN_DCM1 + gpi: 24 + pinID: 73 + poll: false + analysis: none + - name: PGOOD_VCS_DCM0 + gpi: 25 + pinID: 74 + poll: false + analysis: none + - name: PGOOD_VCS_DCM1 + gpi: 26 + pinID: 75 + poll: false + analysis: none + - name: PGOOD_VIO_DCM0 + gpi: 27 + pinID: 76 + poll: false + analysis: none + - name: PGOOD_VIO_DCM1 + gpi: 28 + pinID: 77 + poll: false + analysis: none + - name: PGOOD_VPCIE_DCM0 + gpi: 29 + pinID: 78 + poll: false + analysis: none + - name: PGOOD_VPCIE_DCM1 + gpi: 30 + pinID: 79 + poll: false + analysis: none + - name: PGOOD_PSU1 + gpi: 31 + pinID: 80 + poll: false + analysis: none + - name: PGOOD_PSU2 + gpi: 32 + pinID: 81 + poll: false + analysis: none + - name: PGOOD_PSU3 + gpi: 33 + pinID: 82 + poll: false + analysis: none + - name: PGOOD_PSU4 + gpi: 34 + pinID: 83 + poll: false + analysis: none + diff --git a/meta-ibm/recipes-phosphor/power/power-sequencer/swift/ucd90160.yaml b/meta-ibm/recipes-phosphor/power/power-sequencer/swift/ucd90160.yaml new file mode 100644 index 000000000..abb2ce326 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/power-sequencer/swift/ucd90160.yaml @@ -0,0 +1,180 @@ +- Device: + index: 0 + # Linux sysfs path for this power sequencer (0xC8 8-bit address) + path: /sys/bus/i2c/devices/i2c-8/8-0064 + RailNames: + - "12.0V" + - "3.3V" + - "1.8V" + - "1.1V" + - "0.8V_SW" + - "5.0V" + - "VDN0" + - "VDN1" + - "AVDD" + - "VIO0" + - "VIO1" + - "VDD0" + - "VDD1" + - "VCS0" + - "VCS1" + GPIConfigs: + - name: PGOOD_5P0V + gpi: 1 + pinID: 8 + poll: false + analysis: none + - name: MEM_GOOD0 + gpi: 2 + pinID: 9 + poll: false + analysis: memGOOD0 + - name: MEM_GOOD1 + gpi: 3 + pinID: 10 + poll: false + analysis: memGOOD1 + - name: GPU_PGOOD + gpi: 4 + pinID: 14 + poll: false + analysis: gpuPGOOD # Extra GPIOAnalysis to run if faulted + - name: GPU_TH_OVERT + gpi: 5 + pinID: 17 + poll: false + analysis: gpuOverTemp # Extra GPIOAnalysis to run if faulted + - name: SOFTWARE_PGOOD + gpi: 6 + pinID: 11 + poll: false + analysis: none + GPIOAnalysis: + - type: gpuPGOOD + # The PCA9xxx chip device path and address (0xC0 8-bit = 0x60 7-bit) + path: /sys/bus/i2c/devices/i2c-8/8-0060 + gpio_value: low # What GPIO value indicates a fault/problem? + error_function: gpuPGOODError # Extra analysis function to call for this type + option_flags: none + GPIODefinitions: + - GPIODefinition: GPU Card 0 + gpio: 8 # GPIO pin/register to check for fault + # Call out path for fault + callout: /system/chassis/motherboard/gv100card0 + - GPIODefinition: GPU Card 1 + gpio: 9 + callout: /system/chassis/motherboard/gv100card1 + - GPIODefinition: GPU Card 2 + gpio: 10 + callout: /system/chassis/motherboard/gv100card2 + - GPIODefinition: GPU Card 3 + gpio: 11 + callout: /system/chassis/motherboard/gv100card3 + - type: gpuOverTemp + # The PCA9xxx chip device path and address (0xC0 8-bit = 0x60 7-bit) + path: /sys/bus/i2c/devices/i2c-8/8-0060 + gpio_value: low # What GPIO value indicates a fault/problem? + error_function: gpuOverTempError # Extra analysis function to call for this type + option_flags: shutdownOnFault + GPIODefinitions: + - GPIODefinition: GPU Card 0 Overtemperature + gpio: 2 # GPIO pin/register to check for fault + # Call out path for fault + callout: /system/chassis/motherboard/gv100card0 + - GPIODefinition: GPU Card 1 Overtemperature + gpio: 3 + callout: /system/chassis/motherboard/gv100card1 + - GPIODefinition: GPU Card 2 Overtemperature + gpio: 4 + callout: /system/chassis/motherboard/gv100card2 + - GPIODefinition: GPU Card 3 Overtemperature + gpio: 5 + callout: /system/chassis/motherboard/gv100card3 + - type: memGOOD0 + # The PCA9xxx chip device path and address (0xE8 8-bit = 0x74 7-bit) + path: /sys/bus/i2c/devices/i2c-9/9-0074 + gpio_value: low # What GPIO value indicates a fault/problem? + error_function: memGoodError # Extra analysis function to call for this type + option_flags: none + GPIODefinitions: + - GPIODefinition: CPU 0 OMI0A PGOOD + gpio: 0 # GPIO pin/register to check for fault + # Call out path for fault + callout: /system/chassis/motherboard/dimm4 + - GPIODefinition: CPU 0 OMI0B PGOOD + gpio: 1 + callout: /system/chassis/motherboard/dimm3 + - GPIODefinition: CPU 0 OMI0C PGOOD + gpio: 2 + callout: /system/chassis/motherboard/dimm2 + - GPIODefinition: CPU 0 OMI1A PGOOD + gpio: 3 + callout: /system/chassis/motherboard/dimm5 + - GPIODefinition: CPU 0 OMI1B PGOOD + gpio: 4 + callout: /system/chassis/motherboard/dimm10 + - GPIODefinition: CPU 0 OMI1C PGOOD + gpio: 5 + callout: /system/chassis/motherboard/dimm8 + - GPIODefinition: CPU 0 OMI2A PGOOD + gpio: 6 + callout: /system/chassis/motherboard/dimm11 + - GPIODefinition: CPU 0 OMI2B PGOOD + gpio: 7 + callout: /system/chassis/motherboard/dimm9 + - GPIODefinition: CPU 0 OMI3A PGOOD + gpio: 8 + callout: /system/chassis/motherboard/dimm0 + - GPIODefinition: CPU 0 OMI3B PGOOD + gpio: 9 + callout: /system/chassis/motherboard/dimm1 + - GPIODefinition: CPU 0 OMI3C PGOOD + gpio: 10 + callout: /system/chassis/motherboard/dimm7 + - GPIODefinition: CPU 0 OMI4A PGOOD + gpio: 11 + callout: /system/chassis/motherboard/dimm6 + - type: memGOOD1 + # The PCA9xxx chip device path and address (0xE8 8-bit = 0x74 7-bit) + path: /sys/bus/i2c/devices/i2c-10/10-0074 + gpio_value: low # What GPIO value indicates a fault/problem? + error_function: memGoodError # Extra analysis function to call for this type + option_flags: none + GPIODefinitions: + - GPIODefinition: CPU 1 OMI0A PGOOD + gpio: 0 # GPIO pin/register to check for fault + # Call out path for fault + callout: /system/chassis/motherboard/dimm16 + - GPIODefinition: CPU 1 OMI0B PGOOD + gpio: 1 + callout: /system/chassis/motherboard/dimm15 + - GPIODefinition: CPU 1 OMI0C PGOOD + gpio: 2 + callout: /system/chassis/motherboard/dimm14 + - GPIODefinition: CPU 1 OMI1A PGOOD + gpio: 3 + callout: /system/chassis/motherboard/dimm17 + - GPIODefinition: CPU 1 OMI1B PGOOD + gpio: 4 + callout: /system/chassis/motherboard/dimm22 + - GPIODefinition: CPU 1 OMI1C PGOOD + gpio: 5 + callout: /system/chassis/motherboard/dimm20 + - GPIODefinition: CPU 1 OMI2A PGOOD + gpio: 6 + callout: /system/chassis/motherboard/dimm23 + - GPIODefinition: CPU 1 OMI2B PGOOD + gpio: 7 + callout: /system/chassis/motherboard/dimm21 + - GPIODefinition: CPU 1 OMI3A PGOOD + gpio: 8 + callout: /system/chassis/motherboard/dimm12 + - GPIODefinition: CPU 1 OMI3B PGOOD + gpio: 9 + callout: /system/chassis/motherboard/dimm13 + - GPIODefinition: CPU 1 OMI3C PGOOD + gpio: 10 + callout: /system/chassis/motherboard/dimm19 + - GPIODefinition: CPU 1 OMI4A PGOOD + gpio: 11 + callout: /system/chassis/motherboard/dimm18 diff --git a/meta-ibm/recipes-phosphor/power/power-sequencer/witherspoon/ucd90160.yaml b/meta-ibm/recipes-phosphor/power/power-sequencer/witherspoon/ucd90160.yaml new file mode 100644 index 000000000..9dd381248 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/power-sequencer/witherspoon/ucd90160.yaml @@ -0,0 +1,103 @@ +- Device: + index: 0 + # Linux sysfs path for this power sequencer (0xC8 8-bit address) + path: /sys/bus/i2c/devices/i2c-11/11-0064 + RailNames: + - "5.0VCS" + - "12.0V" + - "3.3V" + - "1.8V" + - "1.1V" + - "1.0V" + - "0.9V" + - "VDN-A" + - "VDN-B" + - "AVDD" + - "VIO-A" + - "VIO-B" + - "VDD-A" + - "VDD-B" + - "VCS-A" + - "VCS-B" + GPIConfigs: + - name: PGOOD_5P0V + gpi: 1 + pinID: 8 + poll: false + analysis: none + - name: MEM_GOOD0 + gpi: 2 + pinID: 9 + poll: false + analysis: none + - name: MEM_GOOD1 + gpi: 3 + pinID: 10 + poll: false + analysis: none + - name: GPU_PGOOD + gpi: 4 + pinID: 14 + poll: false + analysis: gpuPGOOD + - name: GPU_TH_OVERT + gpi: 5 + pinID: 17 + poll: true + analysis: gpuOverTemp + - name: SOFTWARE_PGOOD + gpi: 6 + pinID: 11 + poll: false + analysis: none + GPIOAnalysis: + - type: gpuPGOOD + path: /sys/bus/i2c/devices/i2c-11/11-0060 + gpio_value: low + error_function: gpuPGOODError + option_flags: none + GPIODefinitions: + - GPIODefinition: GPU Card 0 + gpio: 8 + callout: /system/chassis/motherboard/gv100card0 + - GPIODefinition: GPU Card 1 + gpio: 9 + callout: /system/chassis/motherboard/gv100card1 + - GPIODefinition: GPU Card 2 + gpio: 10 + callout: /system/chassis/motherboard/gv100card2 + - GPIODefinition: GPU Card 3 + gpio: 11 + callout: /system/chassis/motherboard/gv100card3 + - GPIODefinition: GPU Card 4 + gpio: 12 + callout: /system/chassis/motherboard/gv100card4 + - GPIODefinition: GPU Card 5 + gpio: 13 + callout: /system/chassis/motherboard/gv100card5 + - type: gpuOverTemp # Extra analysis function to call for this type + # The PCA9xxx chip device path and address (0xC0 8-bit = 0x60 7-bit) + path: /sys/bus/i2c/devices/i2c-11/11-0060 + gpio_value: low # What GPIO value indicates a fault/problem? + error_function: gpuOverTempError + option_flags: shutdownOnFault + GPIODefinitions: + - GPIODefinition: GPU Card 0 Overtemperature + gpio: 2 # GPIO pin/register to check for fault + # Call out path for fault + callout: /system/chassis/motherboard/gv100card0 + - GPIODefinition: GPU Card 1 Overtemperature + gpio: 3 + callout: /system/chassis/motherboard/gv100card1 + - GPIODefinition: GPU Card 2 Overtemperature + gpio: 4 + callout: /system/chassis/motherboard/gv100card2 + - GPIODefinition: GPU Card 3 Overtemperature + gpio: 5 + callout: /system/chassis/motherboard/gv100card3 + - GPIODefinition: GPU Card 4 Overtemperature + gpio: 6 + callout: /system/chassis/motherboard/gv100card4 + - GPIODefinition: GPU Card 5 Overtemperature + gpio: 7 + callout: /system/chassis/motherboard/gv100card5 diff --git a/meta-ibm/recipes-phosphor/power/witherspoon-pfault-analysis-error-native_git.bb b/meta-ibm/recipes-phosphor/power/witherspoon-pfault-analysis-error-native_git.bb new file mode 100644 index 000000000..3c174c3e8 --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/witherspoon-pfault-analysis-error-native_git.bb @@ -0,0 +1,18 @@ +SUMMARY = "Copy error yaml files to known path for elog parsing" +PR = "r1" +PV = "1.0+git${SRCPV}" + +inherit native +inherit phosphor-dbus-yaml + +require recipes-phosphor/power/phosphor-power.inc + +S = "${WORKDIR}/git" + +do_install_append() { + SRC=${S}/org/open_power/Witherspoon + DEST=${D}${yaml_dir}/org/open_power/Witherspoon + install -d ${DEST} + install ${SRC}/Fault.errors.yaml ${DEST} + install ${SRC}/Fault.metadata.yaml ${DEST} +} diff --git a/meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync.bb b/meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync.bb new file mode 100644 index 000000000..4f599a78c --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync.bb @@ -0,0 +1,16 @@ +SUMMARY = "Power Supply Sync" +DESCRIPTION = "Synchronizes the power supplies' INPUT_HISTORY data" +PR = "r1" +LICENSE = "Apache-2.0" +LIC_FILES_CHKSUM = "file://${COREBASE}/meta/files/common-licenses/Apache-2.0;md5=89aea4e17d99a7cacdbeed46a0096b10" + +inherit obmc-phosphor-systemd + +RDEPENDS_${PN} += "virtual/obmc-gpio-monitor" + +SYNC_SERVICE = "power-supply-sync.service" +TGTFMT = "obmc-chassis-poweron@0.target" +SYNC_FMT = "../${SYNC_SERVICE}:${TGTFMT}.wants/${SYNC_SERVICE}" + +SYSTEMD_SERVICE_${PN} += "${SYNC_SERVICE}" +SYSTEMD_LINK_${PN} += "${SYNC_FMT}" diff --git a/meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync/power-supply-sync.service b/meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync/power-supply-sync.service new file mode 100644 index 000000000..9e342367b --- /dev/null +++ b/meta-ibm/recipes-phosphor/power/witherspoon-power-supply-sync/power-supply-sync.service @@ -0,0 +1,14 @@ +[Unit] +Description=Power Supply Input History SYNC +Wants=obmc-power-start-pre@0.target +After=obmc-power-start-pre@0.target +Wants=obmc-chassis-poweron@0.target +Before=obmc-chassis-poweron@0.target +ConditionPathExists=!/run/openbmc/chassis@0-on + +[Service] +ExecStart=/usr/bin/env phosphor-gpio-util --gpio=105 --path=/dev/gpiochip0 --delay=5 --action=low_high +SyslogIdentifier=power-supply-sync + +[Install] +RequiredBy=obmc-chassis-poweron@0.target -- cgit v1.2.3