configurations: Add minerva fan board
Initial commit for the fan board of the Minerva system.
The Minerva system has six fan control boards (FCB) each with four fan
modules connected to the CMM board on the i2c bus as below:
FCB_TOP_0 -> bus 17
FCB_TOP_1 -> bus 16
FCB_MID_0 -> bus 19
FCB_MID_1 -> bus 18
FCB_BOT_0 -> bus 21
FCB_BOT_1 -> bus 20
Change-Id: Ibf5f882228c80b9618a53a0065e708b0645e62e8
Signed-off-by: Yang Chen <yang.chen@quantatw.com>
diff --git a/configurations/minerva_fanboard.json b/configurations/minerva_fanboard.json
new file mode 100644
index 0000000..54ad6da
--- /dev/null
+++ b/configurations/minerva_fanboard.json
@@ -0,0 +1,773 @@
+[
+ {
+ "Exposes": [
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN0_PWM",
+ "Tachs": [
+ 0
+ ]
+ },
+ "Index": 0,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN0_PWM",
+ "Tachs": [
+ 1
+ ]
+ },
+ "Index": 1,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN1_PWM",
+ "Tachs": [
+ 2
+ ]
+ },
+ "Index": 2,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN1_PWM",
+ "Tachs": [
+ 3
+ ]
+ },
+ "Index": 3,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN2_PWM",
+ "Tachs": [
+ 4
+ ]
+ },
+ "Index": 4,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN2_PWM",
+ "Tachs": [
+ 5
+ ]
+ },
+ "Index": 5,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN3_PWM",
+ "Tachs": [
+ 6
+ ]
+ },
+ "Index": 6,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_TOP_$bus * -1 + 17 FAN3_PWM",
+ "Tachs": [
+ 7
+ ]
+ },
+ "Index": 7,
+ "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ }
+ ],
+ "Name": "Minerva Top Fan Board $bus * -1 + 17",
+ "Probe": [
+ "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 16})",
+ "OR",
+ "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 17})"
+ ],
+ "Type": "Board",
+ "xyz.openbmc_project.Inventory.Decorator.Asset": {
+ "Manufacturer": "$PRODUCT_MANUFACTURER",
+ "Model": "$PRODUCT_PRODUCT_NAME",
+ "PartNumber": "$PRODUCT_PART_NUMBER",
+ "SerialNumber": "$PRODUCT_SERIAL_NUMBER"
+ }
+ },
+ {
+ "Exposes": [
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN0_PWM",
+ "Tachs": [
+ 0
+ ]
+ },
+ "Index": 0,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN0_PWM",
+ "Tachs": [
+ 1
+ ]
+ },
+ "Index": 1,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN1_PWM",
+ "Tachs": [
+ 2
+ ]
+ },
+ "Index": 2,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN1_PWM",
+ "Tachs": [
+ 3
+ ]
+ },
+ "Index": 3,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN2_PWM",
+ "Tachs": [
+ 4
+ ]
+ },
+ "Index": 4,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN2_PWM",
+ "Tachs": [
+ 5
+ ]
+ },
+ "Index": 5,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN3_PWM",
+ "Tachs": [
+ 6
+ ]
+ },
+ "Index": 6,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_MID_$bus * -1 + 19 FAN3_PWM",
+ "Tachs": [
+ 7
+ ]
+ },
+ "Index": 7,
+ "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ }
+ ],
+ "Name": "Minerva Middle Fan Board $bus * -1 + 19",
+ "Probe": [
+ "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 18})",
+ "OR",
+ "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 19})"
+ ],
+ "Type": "Board",
+ "xyz.openbmc_project.Inventory.Decorator.Asset": {
+ "Manufacturer": "$PRODUCT_MANUFACTURER",
+ "Model": "$PRODUCT_PRODUCT_NAME",
+ "PartNumber": "$PRODUCT_PART_NUMBER",
+ "SerialNumber": "$PRODUCT_SERIAL_NUMBER"
+ }
+ },
+ {
+ "Exposes": [
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN0_PWM",
+ "Tachs": [
+ 0
+ ]
+ },
+ "Index": 0,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN0_PWM",
+ "Tachs": [
+ 1
+ ]
+ },
+ "Index": 1,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN1_PWM",
+ "Tachs": [
+ 2
+ ]
+ },
+ "Index": 2,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN1_PWM",
+ "Tachs": [
+ 3
+ ]
+ },
+ "Index": 3,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN2_PWM",
+ "Tachs": [
+ 4
+ ]
+ },
+ "Index": 4,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN2_PWM",
+ "Tachs": [
+ 5
+ ]
+ },
+ "Index": 5,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_IL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN3_PWM",
+ "Tachs": [
+ 6
+ ]
+ },
+ "Index": 6,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_IL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ },
+ {
+ "Address": "0x5e",
+ "Bus": "$bus",
+ "Connector": {
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_OL",
+ "Pwm": 2,
+ "PwmName": "FCB_BOT_$bus * -1 + 21 FAN3_PWM",
+ "Tachs": [
+ 7
+ ]
+ },
+ "Index": 7,
+ "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_OL_SPEED_RPM",
+ "PowerState": "Always",
+ "Thresholds": [
+ {
+ "Direction": "greater than",
+ "Name": "upper critical",
+ "Severity": 1,
+ "Value": 20000
+ },
+ {
+ "Direction": "less than",
+ "Name": "lower critical",
+ "Severity": 1,
+ "Value": 800
+ }
+ ],
+ "Type": "I2CFan"
+ }
+ ],
+ "Name": "Minerva Bottom Fan Board $bus * -1 + 21",
+ "Probe": [
+ "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 20})",
+ "OR",
+ "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 21})"
+ ],
+ "Type": "Board",
+ "xyz.openbmc_project.Inventory.Decorator.Asset": {
+ "Manufacturer": "$PRODUCT_MANUFACTURER",
+ "Model": "$PRODUCT_PRODUCT_NAME",
+ "PartNumber": "$PRODUCT_PART_NUMBER",
+ "SerialNumber": "$PRODUCT_SERIAL_NUMBER"
+ }
+ }
+]