1[
2    {
3        "Exposes": [
4            {
5                "Address": "0x5e",
6                "Bus": "$bus",
7                "Connector": {
8                    "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_IL",
9                    "Pwm": 2,
10                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
11                    "Tachs": [
12                        0
13                    ]
14                },
15                "Index": 0,
16                "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_IL_SPEED_RPM",
17                "PowerState": "Always",
18                "Thresholds": [
19                    {
20                        "Direction": "greater than",
21                        "Name": "upper critical",
22                        "Severity": 1,
23                        "Value": 20000
24                    },
25                    {
26                        "Direction": "less than",
27                        "Name": "lower critical",
28                        "Severity": 1,
29                        "Value": 800
30                    }
31                ],
32                "Type": "I2CFan"
33            },
34            {
35                "Address": "0x5e",
36                "Bus": "$bus",
37                "Connector": {
38                    "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_OL",
39                    "Pwm": 2,
40                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
41                    "Tachs": [
42                        1
43                    ]
44                },
45                "Index": 1,
46                "Name": "FCB_TOP_$bus * -1 + 17 FAN0_TACH_OL_SPEED_RPM",
47                "PowerState": "Always",
48                "Thresholds": [
49                    {
50                        "Direction": "greater than",
51                        "Name": "upper critical",
52                        "Severity": 1,
53                        "Value": 20000
54                    },
55                    {
56                        "Direction": "less than",
57                        "Name": "lower critical",
58                        "Severity": 1,
59                        "Value": 800
60                    }
61                ],
62                "Type": "I2CFan"
63            },
64            {
65                "Address": "0x5e",
66                "Bus": "$bus",
67                "Connector": {
68                    "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_IL",
69                    "Pwm": 2,
70                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
71                    "Tachs": [
72                        2
73                    ]
74                },
75                "Index": 2,
76                "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_IL_SPEED_RPM",
77                "PowerState": "Always",
78                "Thresholds": [
79                    {
80                        "Direction": "greater than",
81                        "Name": "upper critical",
82                        "Severity": 1,
83                        "Value": 20000
84                    },
85                    {
86                        "Direction": "less than",
87                        "Name": "lower critical",
88                        "Severity": 1,
89                        "Value": 800
90                    }
91                ],
92                "Type": "I2CFan"
93            },
94            {
95                "Address": "0x5e",
96                "Bus": "$bus",
97                "Connector": {
98                    "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_OL",
99                    "Pwm": 2,
100                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
101                    "Tachs": [
102                        3
103                    ]
104                },
105                "Index": 3,
106                "Name": "FCB_TOP_$bus * -1 + 17 FAN1_TACH_OL_SPEED_RPM",
107                "PowerState": "Always",
108                "Thresholds": [
109                    {
110                        "Direction": "greater than",
111                        "Name": "upper critical",
112                        "Severity": 1,
113                        "Value": 20000
114                    },
115                    {
116                        "Direction": "less than",
117                        "Name": "lower critical",
118                        "Severity": 1,
119                        "Value": 800
120                    }
121                ],
122                "Type": "I2CFan"
123            },
124            {
125                "Address": "0x5e",
126                "Bus": "$bus",
127                "Connector": {
128                    "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_IL",
129                    "Pwm": 2,
130                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
131                    "Tachs": [
132                        4
133                    ]
134                },
135                "Index": 4,
136                "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_IL_SPEED_RPM",
137                "PowerState": "Always",
138                "Thresholds": [
139                    {
140                        "Direction": "greater than",
141                        "Name": "upper critical",
142                        "Severity": 1,
143                        "Value": 20000
144                    },
145                    {
146                        "Direction": "less than",
147                        "Name": "lower critical",
148                        "Severity": 1,
149                        "Value": 800
150                    }
151                ],
152                "Type": "I2CFan"
153            },
154            {
155                "Address": "0x5e",
156                "Bus": "$bus",
157                "Connector": {
158                    "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_OL",
159                    "Pwm": 2,
160                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
161                    "Tachs": [
162                        5
163                    ]
164                },
165                "Index": 5,
166                "Name": "FCB_TOP_$bus * -1 + 17 FAN2_TACH_OL_SPEED_RPM",
167                "PowerState": "Always",
168                "Thresholds": [
169                    {
170                        "Direction": "greater than",
171                        "Name": "upper critical",
172                        "Severity": 1,
173                        "Value": 20000
174                    },
175                    {
176                        "Direction": "less than",
177                        "Name": "lower critical",
178                        "Severity": 1,
179                        "Value": 800
180                    }
181                ],
182                "Type": "I2CFan"
183            },
184            {
185                "Address": "0x5e",
186                "Bus": "$bus",
187                "Connector": {
188                    "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_IL",
189                    "Pwm": 2,
190                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
191                    "Tachs": [
192                        6
193                    ]
194                },
195                "Index": 6,
196                "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_IL_SPEED_RPM",
197                "PowerState": "Always",
198                "Thresholds": [
199                    {
200                        "Direction": "greater than",
201                        "Name": "upper critical",
202                        "Severity": 1,
203                        "Value": 20000
204                    },
205                    {
206                        "Direction": "less than",
207                        "Name": "lower critical",
208                        "Severity": 1,
209                        "Value": 800
210                    }
211                ],
212                "Type": "I2CFan"
213            },
214            {
215                "Address": "0x5e",
216                "Bus": "$bus",
217                "Connector": {
218                    "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_OL",
219                    "Pwm": 2,
220                    "PwmName": "FCB_TOP_$bus * -1 + 17 FAN_PWM",
221                    "Tachs": [
222                        7
223                    ]
224                },
225                "Index": 7,
226                "Name": "FCB_TOP_$bus * -1 + 17 FAN3_TACH_OL_SPEED_RPM",
227                "PowerState": "Always",
228                "Thresholds": [
229                    {
230                        "Direction": "greater than",
231                        "Name": "upper critical",
232                        "Severity": 1,
233                        "Value": 20000
234                    },
235                    {
236                        "Direction": "less than",
237                        "Name": "lower critical",
238                        "Severity": 1,
239                        "Value": 800
240                    }
241                ],
242                "Type": "I2CFan"
243            },
244            {
245                "Address": "0x40",
246                "Bus": "$bus",
247                "Labels": [
248                    "in1",
249                    "curr1"
250                ],
251                "Name": "FCB_TOP_$bus * -1 + 17 FAN0",
252                "Thresholds": [
253                    {
254                        "Direction": "less than",
255                        "Label": "in1",
256                        "Name": "lower critical",
257                        "Severity": 1,
258                        "Value": 54.6
259                    },
260                    {
261                        "Direction": "greater than",
262                        "Label": "in1",
263                        "Name": "upper critical",
264                        "Severity": 1,
265                        "Value": 55.8
266                    },
267                    {
268                        "Direction": "greater than",
269                        "Label": "curr1",
270                        "Name": "upper critical",
271                        "Severity": 1,
272                        "Value": 1.19
273                    }
274                ],
275                "Type": "INA238",
276                "curr1_Name": "FCB_TOP_$bus * -1 + 17 FAN0_CURR_A",
277                "in1_Name": "FCB_TOP_$bus * -1 + 17 FAN0_VOLT_V"
278            },
279            {
280                "Address": "0x41",
281                "Bus": "$bus",
282                "Labels": [
283                    "in1",
284                    "curr1"
285                ],
286                "Name": "FCB_TOP_$bus * -1 + 17 FAN1",
287                "Thresholds": [
288                    {
289                        "Direction": "less than",
290                        "Label": "in1",
291                        "Name": "lower critical",
292                        "Severity": 1,
293                        "Value": 54.6
294                    },
295                    {
296                        "Direction": "greater than",
297                        "Label": "in1",
298                        "Name": "upper critical",
299                        "Severity": 1,
300                        "Value": 55.8
301                    },
302                    {
303                        "Direction": "greater than",
304                        "Label": "curr1",
305                        "Name": "upper critical",
306                        "Severity": 1,
307                        "Value": 1.13
308                    }
309                ],
310                "Type": "INA238",
311                "curr1_Name": "FCB_TOP_$bus * -1 + 17 FAN1_CURR_A",
312                "in1_Name": "FCB_TOP_$bus * -1 + 17 FAN1_VOLT_V"
313            },
314            {
315                "Address": "0x44",
316                "Bus": "$bus",
317                "Labels": [
318                    "in1",
319                    "curr1"
320                ],
321                "Name": "FCB_TOP_$bus * -1 + 17 FAN2",
322                "Thresholds": [
323                    {
324                        "Direction": "less than",
325                        "Label": "in1",
326                        "Name": "lower critical",
327                        "Severity": 1,
328                        "Value": 54.6
329                    },
330                    {
331                        "Direction": "greater than",
332                        "Label": "in1",
333                        "Name": "upper critical",
334                        "Severity": 1,
335                        "Value": 55.8
336                    },
337                    {
338                        "Direction": "greater than",
339                        "Label": "curr1",
340                        "Name": "upper critical",
341                        "Severity": 1,
342                        "Value": 1.13
343                    }
344                ],
345                "Type": "INA238",
346                "curr1_Name": "FCB_TOP_$bus * -1 + 17 FAN2_CURR_A",
347                "in1_Name": "FCB_TOP_$bus * -1 + 17 FAN2_VOLT_V"
348            },
349            {
350                "Address": "0x45",
351                "Bus": "$bus",
352                "Labels": [
353                    "in1",
354                    "curr1"
355                ],
356                "Name": "FCB_TOP_$bus * -1 + 17 FAN3",
357                "Thresholds": [
358                    {
359                        "Direction": "less than",
360                        "Label": "in1",
361                        "Name": "lower critical",
362                        "Severity": 1,
363                        "Value": 54.6
364                    },
365                    {
366                        "Direction": "greater than",
367                        "Label": "in1",
368                        "Name": "upper critical",
369                        "Severity": 1,
370                        "Value": 55.8
371                    },
372                    {
373                        "Direction": "greater than",
374                        "Label": "curr1",
375                        "Name": "upper critical",
376                        "Severity": 1,
377                        "Value": 1.15
378                    }
379                ],
380                "Type": "INA238",
381                "curr1_Name": "FCB_TOP_$bus * -1 + 17 FAN3_CURR_A",
382                "in1_Name": "FCB_TOP_$bus * -1 + 17 FAN3_VOLT_V"
383            },
384            {
385                "Address": "0x4b",
386                "Bus": "$bus",
387                "Name": "FCB_TOP_$bus * -1 + 17 TEMP_C",
388                "Thresholds": [
389                    {
390                        "Direction": "greater than",
391                        "Name": "upper critical",
392                        "Severity": 1,
393                        "Value": 80
394                    },
395                    {
396                        "Direction": "greater than",
397                        "Name": "upper non critical",
398                        "Severity": 0,
399                        "Value": 75
400                    },
401                    {
402                        "Direction": "less than",
403                        "Name": "lower non critical",
404                        "Severity": 0,
405                        "Value": 5
406                    },
407                    {
408                        "Direction": "less than",
409                        "Name": "lower critical",
410                        "Severity": 1,
411                        "Value": 0
412                    }
413                ],
414                "Type": "TMP75"
415            }
416        ],
417        "Name": "Minerva Top Fan Board $bus * -1 + 17",
418        "Probe": [
419            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 16})",
420            "OR",
421            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 17})"
422        ],
423        "Type": "Board",
424        "xyz.openbmc_project.Inventory.Decorator.Asset": {
425            "BuildDate": "$BOARD_MANUFACTURE_DATE",
426            "Manufacturer": "$BOARD_MANUFACTURER",
427            "Model": "$BOARD_PRODUCT_NAME",
428            "PartNumber": "$BOARD_PART_NUMBER",
429            "SerialNumber": "$BOARD_SERIAL_NUMBER"
430        }
431    },
432    {
433        "Exposes": [
434            {
435                "Address": "0x5e",
436                "Bus": "$bus",
437                "Connector": {
438                    "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_IL",
439                    "Pwm": 2,
440                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
441                    "Tachs": [
442                        0
443                    ]
444                },
445                "Index": 0,
446                "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_IL_SPEED_RPM",
447                "PowerState": "Always",
448                "Thresholds": [
449                    {
450                        "Direction": "greater than",
451                        "Name": "upper critical",
452                        "Severity": 1,
453                        "Value": 20000
454                    },
455                    {
456                        "Direction": "less than",
457                        "Name": "lower critical",
458                        "Severity": 1,
459                        "Value": 800
460                    }
461                ],
462                "Type": "I2CFan"
463            },
464            {
465                "Address": "0x5e",
466                "Bus": "$bus",
467                "Connector": {
468                    "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_OL",
469                    "Pwm": 2,
470                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
471                    "Tachs": [
472                        1
473                    ]
474                },
475                "Index": 1,
476                "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_OL_SPEED_RPM",
477                "PowerState": "Always",
478                "Thresholds": [
479                    {
480                        "Direction": "greater than",
481                        "Name": "upper critical",
482                        "Severity": 1,
483                        "Value": 20000
484                    },
485                    {
486                        "Direction": "less than",
487                        "Name": "lower critical",
488                        "Severity": 1,
489                        "Value": 800
490                    }
491                ],
492                "Type": "I2CFan"
493            },
494            {
495                "Address": "0x5e",
496                "Bus": "$bus",
497                "Connector": {
498                    "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_IL",
499                    "Pwm": 2,
500                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
501                    "Tachs": [
502                        2
503                    ]
504                },
505                "Index": 2,
506                "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_IL_SPEED_RPM",
507                "PowerState": "Always",
508                "Thresholds": [
509                    {
510                        "Direction": "greater than",
511                        "Name": "upper critical",
512                        "Severity": 1,
513                        "Value": 20000
514                    },
515                    {
516                        "Direction": "less than",
517                        "Name": "lower critical",
518                        "Severity": 1,
519                        "Value": 800
520                    }
521                ],
522                "Type": "I2CFan"
523            },
524            {
525                "Address": "0x5e",
526                "Bus": "$bus",
527                "Connector": {
528                    "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_OL",
529                    "Pwm": 2,
530                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
531                    "Tachs": [
532                        3
533                    ]
534                },
535                "Index": 3,
536                "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_OL_SPEED_RPM",
537                "PowerState": "Always",
538                "Thresholds": [
539                    {
540                        "Direction": "greater than",
541                        "Name": "upper critical",
542                        "Severity": 1,
543                        "Value": 20000
544                    },
545                    {
546                        "Direction": "less than",
547                        "Name": "lower critical",
548                        "Severity": 1,
549                        "Value": 800
550                    }
551                ],
552                "Type": "I2CFan"
553            },
554            {
555                "Address": "0x5e",
556                "Bus": "$bus",
557                "Connector": {
558                    "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_IL",
559                    "Pwm": 2,
560                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
561                    "Tachs": [
562                        4
563                    ]
564                },
565                "Index": 4,
566                "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_IL_SPEED_RPM",
567                "PowerState": "Always",
568                "Thresholds": [
569                    {
570                        "Direction": "greater than",
571                        "Name": "upper critical",
572                        "Severity": 1,
573                        "Value": 20000
574                    },
575                    {
576                        "Direction": "less than",
577                        "Name": "lower critical",
578                        "Severity": 1,
579                        "Value": 800
580                    }
581                ],
582                "Type": "I2CFan"
583            },
584            {
585                "Address": "0x5e",
586                "Bus": "$bus",
587                "Connector": {
588                    "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_OL",
589                    "Pwm": 2,
590                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
591                    "Tachs": [
592                        5
593                    ]
594                },
595                "Index": 5,
596                "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_OL_SPEED_RPM",
597                "PowerState": "Always",
598                "Thresholds": [
599                    {
600                        "Direction": "greater than",
601                        "Name": "upper critical",
602                        "Severity": 1,
603                        "Value": 20000
604                    },
605                    {
606                        "Direction": "less than",
607                        "Name": "lower critical",
608                        "Severity": 1,
609                        "Value": 800
610                    }
611                ],
612                "Type": "I2CFan"
613            },
614            {
615                "Address": "0x5e",
616                "Bus": "$bus",
617                "Connector": {
618                    "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_IL",
619                    "Pwm": 2,
620                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
621                    "Tachs": [
622                        6
623                    ]
624                },
625                "Index": 6,
626                "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_IL_SPEED_RPM",
627                "PowerState": "Always",
628                "Thresholds": [
629                    {
630                        "Direction": "greater than",
631                        "Name": "upper critical",
632                        "Severity": 1,
633                        "Value": 20000
634                    },
635                    {
636                        "Direction": "less than",
637                        "Name": "lower critical",
638                        "Severity": 1,
639                        "Value": 800
640                    }
641                ],
642                "Type": "I2CFan"
643            },
644            {
645                "Address": "0x5e",
646                "Bus": "$bus",
647                "Connector": {
648                    "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_OL",
649                    "Pwm": 2,
650                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
651                    "Tachs": [
652                        7
653                    ]
654                },
655                "Index": 7,
656                "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_OL_SPEED_RPM",
657                "PowerState": "Always",
658                "Thresholds": [
659                    {
660                        "Direction": "greater than",
661                        "Name": "upper critical",
662                        "Severity": 1,
663                        "Value": 20000
664                    },
665                    {
666                        "Direction": "less than",
667                        "Name": "lower critical",
668                        "Severity": 1,
669                        "Value": 800
670                    }
671                ],
672                "Type": "I2CFan"
673            },
674            {
675                "Address": "0x40",
676                "Bus": "$bus",
677                "Labels": [
678                    "in1",
679                    "curr1"
680                ],
681                "Name": "FCB_MID_$bus * -1 + 19 FAN0",
682                "Thresholds": [
683                    {
684                        "Direction": "less than",
685                        "Label": "in1",
686                        "Name": "lower critical",
687                        "Severity": 1,
688                        "Value": 54.6
689                    },
690                    {
691                        "Direction": "greater than",
692                        "Label": "in1",
693                        "Name": "upper critical",
694                        "Severity": 1,
695                        "Value": 55.8
696                    },
697                    {
698                        "Direction": "greater than",
699                        "Label": "curr1",
700                        "Name": "upper critical",
701                        "Severity": 1,
702                        "Value": 1.19
703                    }
704                ],
705                "Type": "INA238",
706                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN0_CURR_A",
707                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN0_VOLT_V"
708            },
709            {
710                "Address": "0x41",
711                "Bus": "$bus",
712                "Labels": [
713                    "in1",
714                    "curr1"
715                ],
716                "Name": "FCB_MID_$bus * -1 + 19 FAN1",
717                "Thresholds": [
718                    {
719                        "Direction": "less than",
720                        "Label": "in1",
721                        "Name": "lower critical",
722                        "Severity": 1,
723                        "Value": 54.6
724                    },
725                    {
726                        "Direction": "greater than",
727                        "Label": "in1",
728                        "Name": "upper critical",
729                        "Severity": 1,
730                        "Value": 55.8
731                    },
732                    {
733                        "Direction": "greater than",
734                        "Label": "curr1",
735                        "Name": "upper critical",
736                        "Severity": 1,
737                        "Value": 1.13
738                    }
739                ],
740                "Type": "INA238",
741                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN1_CURR_A",
742                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN1_VOLT_V"
743            },
744            {
745                "Address": "0x44",
746                "Bus": "$bus",
747                "Labels": [
748                    "in1",
749                    "curr1"
750                ],
751                "Name": "FCB_MID_$bus * -1 + 19 FAN2",
752                "Thresholds": [
753                    {
754                        "Direction": "less than",
755                        "Label": "in1",
756                        "Name": "lower critical",
757                        "Severity": 1,
758                        "Value": 54.6
759                    },
760                    {
761                        "Direction": "greater than",
762                        "Label": "in1",
763                        "Name": "upper critical",
764                        "Severity": 1,
765                        "Value": 55.8
766                    },
767                    {
768                        "Direction": "greater than",
769                        "Label": "curr1",
770                        "Name": "upper critical",
771                        "Severity": 1,
772                        "Value": 1.13
773                    }
774                ],
775                "Type": "INA238",
776                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN2_CURR_A",
777                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN2_VOLT_V"
778            },
779            {
780                "Address": "0x45",
781                "Bus": "$bus",
782                "Labels": [
783                    "in1",
784                    "curr1"
785                ],
786                "Name": "FCB_MID_$bus * -1 + 19 FAN3",
787                "Thresholds": [
788                    {
789                        "Direction": "less than",
790                        "Label": "in1",
791                        "Name": "lower critical",
792                        "Severity": 1,
793                        "Value": 54.6
794                    },
795                    {
796                        "Direction": "greater than",
797                        "Label": "in1",
798                        "Name": "upper critical",
799                        "Severity": 1,
800                        "Value": 55.8
801                    },
802                    {
803                        "Direction": "greater than",
804                        "Label": "curr1",
805                        "Name": "upper critical",
806                        "Severity": 1,
807                        "Value": 1.15
808                    }
809                ],
810                "Type": "INA238",
811                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN3_CURR_A",
812                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN3_VOLT_V"
813            },
814            {
815                "Address": "0x4b",
816                "Bus": "$bus",
817                "Name": "FCB_MID_$bus * -1 + 19 TEMP_C",
818                "Thresholds": [
819                    {
820                        "Direction": "greater than",
821                        "Name": "upper critical",
822                        "Severity": 1,
823                        "Value": 80
824                    },
825                    {
826                        "Direction": "greater than",
827                        "Name": "upper non critical",
828                        "Severity": 0,
829                        "Value": 75
830                    },
831                    {
832                        "Direction": "less than",
833                        "Name": "lower non critical",
834                        "Severity": 0,
835                        "Value": 5
836                    },
837                    {
838                        "Direction": "less than",
839                        "Name": "lower critical",
840                        "Severity": 1,
841                        "Value": 0
842                    }
843                ],
844                "Type": "TMP75"
845            }
846        ],
847        "Name": "Minerva Middle Fan Board $bus * -1 + 19",
848        "Probe": [
849            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 18})",
850            "OR",
851            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 19})"
852        ],
853        "Type": "Board",
854        "xyz.openbmc_project.Inventory.Decorator.Asset": {
855            "BuildDate": "$BOARD_MANUFACTURE_DATE",
856            "Manufacturer": "$BOARD_MANUFACTURER",
857            "Model": "$BOARD_PRODUCT_NAME",
858            "PartNumber": "$BOARD_PART_NUMBER",
859            "SerialNumber": "$BOARD_SERIAL_NUMBER"
860        }
861    },
862    {
863        "Exposes": [
864            {
865                "Address": "0x5e",
866                "Bus": "$bus",
867                "Connector": {
868                    "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_IL",
869                    "Pwm": 2,
870                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
871                    "Tachs": [
872                        0
873                    ]
874                },
875                "Index": 0,
876                "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_IL_SPEED_RPM",
877                "PowerState": "Always",
878                "Thresholds": [
879                    {
880                        "Direction": "greater than",
881                        "Name": "upper critical",
882                        "Severity": 1,
883                        "Value": 20000
884                    },
885                    {
886                        "Direction": "less than",
887                        "Name": "lower critical",
888                        "Severity": 1,
889                        "Value": 800
890                    }
891                ],
892                "Type": "I2CFan"
893            },
894            {
895                "Address": "0x5e",
896                "Bus": "$bus",
897                "Connector": {
898                    "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_OL",
899                    "Pwm": 2,
900                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
901                    "Tachs": [
902                        1
903                    ]
904                },
905                "Index": 1,
906                "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_OL_SPEED_RPM",
907                "PowerState": "Always",
908                "Thresholds": [
909                    {
910                        "Direction": "greater than",
911                        "Name": "upper critical",
912                        "Severity": 1,
913                        "Value": 20000
914                    },
915                    {
916                        "Direction": "less than",
917                        "Name": "lower critical",
918                        "Severity": 1,
919                        "Value": 800
920                    }
921                ],
922                "Type": "I2CFan"
923            },
924            {
925                "Address": "0x5e",
926                "Bus": "$bus",
927                "Connector": {
928                    "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_IL",
929                    "Pwm": 2,
930                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
931                    "Tachs": [
932                        2
933                    ]
934                },
935                "Index": 2,
936                "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_IL_SPEED_RPM",
937                "PowerState": "Always",
938                "Thresholds": [
939                    {
940                        "Direction": "greater than",
941                        "Name": "upper critical",
942                        "Severity": 1,
943                        "Value": 20000
944                    },
945                    {
946                        "Direction": "less than",
947                        "Name": "lower critical",
948                        "Severity": 1,
949                        "Value": 800
950                    }
951                ],
952                "Type": "I2CFan"
953            },
954            {
955                "Address": "0x5e",
956                "Bus": "$bus",
957                "Connector": {
958                    "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_OL",
959                    "Pwm": 2,
960                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
961                    "Tachs": [
962                        3
963                    ]
964                },
965                "Index": 3,
966                "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_OL_SPEED_RPM",
967                "PowerState": "Always",
968                "Thresholds": [
969                    {
970                        "Direction": "greater than",
971                        "Name": "upper critical",
972                        "Severity": 1,
973                        "Value": 20000
974                    },
975                    {
976                        "Direction": "less than",
977                        "Name": "lower critical",
978                        "Severity": 1,
979                        "Value": 800
980                    }
981                ],
982                "Type": "I2CFan"
983            },
984            {
985                "Address": "0x5e",
986                "Bus": "$bus",
987                "Connector": {
988                    "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_IL",
989                    "Pwm": 2,
990                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
991                    "Tachs": [
992                        4
993                    ]
994                },
995                "Index": 4,
996                "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_IL_SPEED_RPM",
997                "PowerState": "Always",
998                "Thresholds": [
999                    {
1000                        "Direction": "greater than",
1001                        "Name": "upper critical",
1002                        "Severity": 1,
1003                        "Value": 20000
1004                    },
1005                    {
1006                        "Direction": "less than",
1007                        "Name": "lower critical",
1008                        "Severity": 1,
1009                        "Value": 800
1010                    }
1011                ],
1012                "Type": "I2CFan"
1013            },
1014            {
1015                "Address": "0x5e",
1016                "Bus": "$bus",
1017                "Connector": {
1018                    "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_OL",
1019                    "Pwm": 2,
1020                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
1021                    "Tachs": [
1022                        5
1023                    ]
1024                },
1025                "Index": 5,
1026                "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_OL_SPEED_RPM",
1027                "PowerState": "Always",
1028                "Thresholds": [
1029                    {
1030                        "Direction": "greater than",
1031                        "Name": "upper critical",
1032                        "Severity": 1,
1033                        "Value": 20000
1034                    },
1035                    {
1036                        "Direction": "less than",
1037                        "Name": "lower critical",
1038                        "Severity": 1,
1039                        "Value": 800
1040                    }
1041                ],
1042                "Type": "I2CFan"
1043            },
1044            {
1045                "Address": "0x5e",
1046                "Bus": "$bus",
1047                "Connector": {
1048                    "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_IL",
1049                    "Pwm": 2,
1050                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
1051                    "Tachs": [
1052                        6
1053                    ]
1054                },
1055                "Index": 6,
1056                "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_IL_SPEED_RPM",
1057                "PowerState": "Always",
1058                "Thresholds": [
1059                    {
1060                        "Direction": "greater than",
1061                        "Name": "upper critical",
1062                        "Severity": 1,
1063                        "Value": 20000
1064                    },
1065                    {
1066                        "Direction": "less than",
1067                        "Name": "lower critical",
1068                        "Severity": 1,
1069                        "Value": 800
1070                    }
1071                ],
1072                "Type": "I2CFan"
1073            },
1074            {
1075                "Address": "0x5e",
1076                "Bus": "$bus",
1077                "Connector": {
1078                    "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_OL",
1079                    "Pwm": 2,
1080                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
1081                    "Tachs": [
1082                        7
1083                    ]
1084                },
1085                "Index": 7,
1086                "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_OL_SPEED_RPM",
1087                "PowerState": "Always",
1088                "Thresholds": [
1089                    {
1090                        "Direction": "greater than",
1091                        "Name": "upper critical",
1092                        "Severity": 1,
1093                        "Value": 20000
1094                    },
1095                    {
1096                        "Direction": "less than",
1097                        "Name": "lower critical",
1098                        "Severity": 1,
1099                        "Value": 800
1100                    }
1101                ],
1102                "Type": "I2CFan"
1103            },
1104            {
1105                "Address": "0x40",
1106                "Bus": "$bus",
1107                "Labels": [
1108                    "in1",
1109                    "curr1"
1110                ],
1111                "Name": "FCB_BOT_$bus * -1 + 21 FAN0",
1112                "Thresholds": [
1113                    {
1114                        "Direction": "less than",
1115                        "Label": "in1",
1116                        "Name": "lower critical",
1117                        "Severity": 1,
1118                        "Value": 54.6
1119                    },
1120                    {
1121                        "Direction": "greater than",
1122                        "Label": "in1",
1123                        "Name": "upper critical",
1124                        "Severity": 1,
1125                        "Value": 55.8
1126                    },
1127                    {
1128                        "Direction": "greater than",
1129                        "Label": "curr1",
1130                        "Name": "upper critical",
1131                        "Severity": 1,
1132                        "Value": 1.19
1133                    }
1134                ],
1135                "Type": "INA238",
1136                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN0_CURR_A",
1137                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN0_VOLT_V"
1138            },
1139            {
1140                "Address": "0x41",
1141                "Bus": "$bus",
1142                "Labels": [
1143                    "in1",
1144                    "curr1"
1145                ],
1146                "Name": "FCB_BOT_$bus * -1 + 21 FAN1",
1147                "Thresholds": [
1148                    {
1149                        "Direction": "less than",
1150                        "Label": "in1",
1151                        "Name": "lower critical",
1152                        "Severity": 1,
1153                        "Value": 54.6
1154                    },
1155                    {
1156                        "Direction": "greater than",
1157                        "Label": "in1",
1158                        "Name": "upper critical",
1159                        "Severity": 1,
1160                        "Value": 55.8
1161                    },
1162                    {
1163                        "Direction": "greater than",
1164                        "Label": "curr1",
1165                        "Name": "upper critical",
1166                        "Severity": 1,
1167                        "Value": 1.13
1168                    }
1169                ],
1170                "Type": "INA238",
1171                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN1_CURR_A",
1172                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN1_VOLT_V"
1173            },
1174            {
1175                "Address": "0x44",
1176                "Bus": "$bus",
1177                "Labels": [
1178                    "in1",
1179                    "curr1"
1180                ],
1181                "Name": "FCB_BOT_$bus * -1 + 21 FAN2",
1182                "Thresholds": [
1183                    {
1184                        "Direction": "less than",
1185                        "Label": "in1",
1186                        "Name": "lower critical",
1187                        "Severity": 1,
1188                        "Value": 54.6
1189                    },
1190                    {
1191                        "Direction": "greater than",
1192                        "Label": "in1",
1193                        "Name": "upper critical",
1194                        "Severity": 1,
1195                        "Value": 55.8
1196                    },
1197                    {
1198                        "Direction": "greater than",
1199                        "Label": "curr1",
1200                        "Name": "upper critical",
1201                        "Severity": 1,
1202                        "Value": 1.13
1203                    }
1204                ],
1205                "Type": "INA238",
1206                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN2_CURR_A",
1207                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN2_VOLT_V"
1208            },
1209            {
1210                "Address": "0x45",
1211                "Bus": "$bus",
1212                "Labels": [
1213                    "in1",
1214                    "curr1"
1215                ],
1216                "Name": "FCB_BOT_$bus * -1 + 21 FAN3",
1217                "Thresholds": [
1218                    {
1219                        "Direction": "less than",
1220                        "Label": "in1",
1221                        "Name": "lower critical",
1222                        "Severity": 1,
1223                        "Value": 54.6
1224                    },
1225                    {
1226                        "Direction": "greater than",
1227                        "Label": "in1",
1228                        "Name": "upper critical",
1229                        "Severity": 1,
1230                        "Value": 55.8
1231                    },
1232                    {
1233                        "Direction": "greater than",
1234                        "Label": "curr1",
1235                        "Name": "upper critical",
1236                        "Severity": 1,
1237                        "Value": 1.15
1238                    }
1239                ],
1240                "Type": "INA238",
1241                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN3_CURR_A",
1242                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN3_VOLT_V"
1243            },
1244            {
1245                "Address": "0x4b",
1246                "Bus": "$bus",
1247                "Name": "FCB_BOT_$bus * -1 + 21 TEMP_C",
1248                "Thresholds": [
1249                    {
1250                        "Direction": "greater than",
1251                        "Name": "upper critical",
1252                        "Severity": 1,
1253                        "Value": 80
1254                    },
1255                    {
1256                        "Direction": "greater than",
1257                        "Name": "upper non critical",
1258                        "Severity": 0,
1259                        "Value": 75
1260                    },
1261                    {
1262                        "Direction": "less than",
1263                        "Name": "lower non critical",
1264                        "Severity": 0,
1265                        "Value": 5
1266                    },
1267                    {
1268                        "Direction": "less than",
1269                        "Name": "lower critical",
1270                        "Severity": 1,
1271                        "Value": 0
1272                    }
1273                ],
1274                "Type": "TMP75"
1275            }
1276        ],
1277        "Name": "Minerva Bottom Fan Board $bus * -1 + 21",
1278        "Probe": [
1279            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 20})",
1280            "OR",
1281            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 21})"
1282        ],
1283        "Type": "Board",
1284        "xyz.openbmc_project.Inventory.Decorator.Asset": {
1285            "BuildDate": "$BOARD_MANUFACTURE_DATE",
1286            "Manufacturer": "$BOARD_MANUFACTURER",
1287            "Model": "$BOARD_PRODUCT_NAME",
1288            "PartNumber": "$BOARD_PART_NUMBER",
1289            "SerialNumber": "$BOARD_SERIAL_NUMBER"
1290        }
1291    }
1292]
1293