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": 1000
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": 1000
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": 1000
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": 1000
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": 1000
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": 1000
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": 1000
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": 1000
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": 48.45
259                    },
260                    {
261                        "Direction": "greater than",
262                        "Label": "in1",
263                        "Name": "upper critical",
264                        "Severity": 1,
265                        "Value": 53.35
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": 48.45
294                    },
295                    {
296                        "Direction": "greater than",
297                        "Label": "in1",
298                        "Name": "upper critical",
299                        "Severity": 1,
300                        "Value": 53.35
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": 48.45
329                    },
330                    {
331                        "Direction": "greater than",
332                        "Label": "in1",
333                        "Name": "upper critical",
334                        "Severity": 1,
335                        "Value": 53.35
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": 48.45
364                    },
365                    {
366                        "Direction": "greater than",
367                        "Label": "in1",
368                        "Name": "upper critical",
369                        "Severity": 1,
370                        "Value": 53.35
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            "SparePartNumber": "$BOARD_INFO_AM1"
431        }
432    },
433    {
434        "Exposes": [
435            {
436                "Address": "0x5e",
437                "Bus": "$bus",
438                "Connector": {
439                    "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_IL",
440                    "Pwm": 2,
441                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
442                    "Tachs": [
443                        0
444                    ]
445                },
446                "Index": 0,
447                "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_IL_SPEED_RPM",
448                "PowerState": "Always",
449                "Thresholds": [
450                    {
451                        "Direction": "greater than",
452                        "Name": "upper critical",
453                        "Severity": 1,
454                        "Value": 20000
455                    },
456                    {
457                        "Direction": "less than",
458                        "Name": "lower critical",
459                        "Severity": 1,
460                        "Value": 1000
461                    }
462                ],
463                "Type": "I2CFan"
464            },
465            {
466                "Address": "0x5e",
467                "Bus": "$bus",
468                "Connector": {
469                    "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_OL",
470                    "Pwm": 2,
471                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
472                    "Tachs": [
473                        1
474                    ]
475                },
476                "Index": 1,
477                "Name": "FCB_MID_$bus * -1 + 19 FAN0_TACH_OL_SPEED_RPM",
478                "PowerState": "Always",
479                "Thresholds": [
480                    {
481                        "Direction": "greater than",
482                        "Name": "upper critical",
483                        "Severity": 1,
484                        "Value": 20000
485                    },
486                    {
487                        "Direction": "less than",
488                        "Name": "lower critical",
489                        "Severity": 1,
490                        "Value": 1000
491                    }
492                ],
493                "Type": "I2CFan"
494            },
495            {
496                "Address": "0x5e",
497                "Bus": "$bus",
498                "Connector": {
499                    "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_IL",
500                    "Pwm": 2,
501                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
502                    "Tachs": [
503                        2
504                    ]
505                },
506                "Index": 2,
507                "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_IL_SPEED_RPM",
508                "PowerState": "Always",
509                "Thresholds": [
510                    {
511                        "Direction": "greater than",
512                        "Name": "upper critical",
513                        "Severity": 1,
514                        "Value": 20000
515                    },
516                    {
517                        "Direction": "less than",
518                        "Name": "lower critical",
519                        "Severity": 1,
520                        "Value": 1000
521                    }
522                ],
523                "Type": "I2CFan"
524            },
525            {
526                "Address": "0x5e",
527                "Bus": "$bus",
528                "Connector": {
529                    "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_OL",
530                    "Pwm": 2,
531                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
532                    "Tachs": [
533                        3
534                    ]
535                },
536                "Index": 3,
537                "Name": "FCB_MID_$bus * -1 + 19 FAN1_TACH_OL_SPEED_RPM",
538                "PowerState": "Always",
539                "Thresholds": [
540                    {
541                        "Direction": "greater than",
542                        "Name": "upper critical",
543                        "Severity": 1,
544                        "Value": 20000
545                    },
546                    {
547                        "Direction": "less than",
548                        "Name": "lower critical",
549                        "Severity": 1,
550                        "Value": 1000
551                    }
552                ],
553                "Type": "I2CFan"
554            },
555            {
556                "Address": "0x5e",
557                "Bus": "$bus",
558                "Connector": {
559                    "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_IL",
560                    "Pwm": 2,
561                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
562                    "Tachs": [
563                        4
564                    ]
565                },
566                "Index": 4,
567                "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_IL_SPEED_RPM",
568                "PowerState": "Always",
569                "Thresholds": [
570                    {
571                        "Direction": "greater than",
572                        "Name": "upper critical",
573                        "Severity": 1,
574                        "Value": 20000
575                    },
576                    {
577                        "Direction": "less than",
578                        "Name": "lower critical",
579                        "Severity": 1,
580                        "Value": 1000
581                    }
582                ],
583                "Type": "I2CFan"
584            },
585            {
586                "Address": "0x5e",
587                "Bus": "$bus",
588                "Connector": {
589                    "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_OL",
590                    "Pwm": 2,
591                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
592                    "Tachs": [
593                        5
594                    ]
595                },
596                "Index": 5,
597                "Name": "FCB_MID_$bus * -1 + 19 FAN2_TACH_OL_SPEED_RPM",
598                "PowerState": "Always",
599                "Thresholds": [
600                    {
601                        "Direction": "greater than",
602                        "Name": "upper critical",
603                        "Severity": 1,
604                        "Value": 20000
605                    },
606                    {
607                        "Direction": "less than",
608                        "Name": "lower critical",
609                        "Severity": 1,
610                        "Value": 1000
611                    }
612                ],
613                "Type": "I2CFan"
614            },
615            {
616                "Address": "0x5e",
617                "Bus": "$bus",
618                "Connector": {
619                    "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_IL",
620                    "Pwm": 2,
621                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
622                    "Tachs": [
623                        6
624                    ]
625                },
626                "Index": 6,
627                "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_IL_SPEED_RPM",
628                "PowerState": "Always",
629                "Thresholds": [
630                    {
631                        "Direction": "greater than",
632                        "Name": "upper critical",
633                        "Severity": 1,
634                        "Value": 20000
635                    },
636                    {
637                        "Direction": "less than",
638                        "Name": "lower critical",
639                        "Severity": 1,
640                        "Value": 1000
641                    }
642                ],
643                "Type": "I2CFan"
644            },
645            {
646                "Address": "0x5e",
647                "Bus": "$bus",
648                "Connector": {
649                    "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_OL",
650                    "Pwm": 2,
651                    "PwmName": "FCB_MID_$bus * -1 + 19 FAN_PWM",
652                    "Tachs": [
653                        7
654                    ]
655                },
656                "Index": 7,
657                "Name": "FCB_MID_$bus * -1 + 19 FAN3_TACH_OL_SPEED_RPM",
658                "PowerState": "Always",
659                "Thresholds": [
660                    {
661                        "Direction": "greater than",
662                        "Name": "upper critical",
663                        "Severity": 1,
664                        "Value": 20000
665                    },
666                    {
667                        "Direction": "less than",
668                        "Name": "lower critical",
669                        "Severity": 1,
670                        "Value": 1000
671                    }
672                ],
673                "Type": "I2CFan"
674            },
675            {
676                "Address": "0x40",
677                "Bus": "$bus",
678                "Labels": [
679                    "in1",
680                    "curr1"
681                ],
682                "Name": "FCB_MID_$bus * -1 + 19 FAN0",
683                "Thresholds": [
684                    {
685                        "Direction": "less than",
686                        "Label": "in1",
687                        "Name": "lower critical",
688                        "Severity": 1,
689                        "Value": 48.45
690                    },
691                    {
692                        "Direction": "greater than",
693                        "Label": "in1",
694                        "Name": "upper critical",
695                        "Severity": 1,
696                        "Value": 53.35
697                    },
698                    {
699                        "Direction": "greater than",
700                        "Label": "curr1",
701                        "Name": "upper critical",
702                        "Severity": 1,
703                        "Value": 1.19
704                    }
705                ],
706                "Type": "INA238",
707                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN0_CURR_A",
708                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN0_VOLT_V"
709            },
710            {
711                "Address": "0x41",
712                "Bus": "$bus",
713                "Labels": [
714                    "in1",
715                    "curr1"
716                ],
717                "Name": "FCB_MID_$bus * -1 + 19 FAN1",
718                "Thresholds": [
719                    {
720                        "Direction": "less than",
721                        "Label": "in1",
722                        "Name": "lower critical",
723                        "Severity": 1,
724                        "Value": 48.45
725                    },
726                    {
727                        "Direction": "greater than",
728                        "Label": "in1",
729                        "Name": "upper critical",
730                        "Severity": 1,
731                        "Value": 53.35
732                    },
733                    {
734                        "Direction": "greater than",
735                        "Label": "curr1",
736                        "Name": "upper critical",
737                        "Severity": 1,
738                        "Value": 1.13
739                    }
740                ],
741                "Type": "INA238",
742                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN1_CURR_A",
743                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN1_VOLT_V"
744            },
745            {
746                "Address": "0x44",
747                "Bus": "$bus",
748                "Labels": [
749                    "in1",
750                    "curr1"
751                ],
752                "Name": "FCB_MID_$bus * -1 + 19 FAN2",
753                "Thresholds": [
754                    {
755                        "Direction": "less than",
756                        "Label": "in1",
757                        "Name": "lower critical",
758                        "Severity": 1,
759                        "Value": 48.45
760                    },
761                    {
762                        "Direction": "greater than",
763                        "Label": "in1",
764                        "Name": "upper critical",
765                        "Severity": 1,
766                        "Value": 53.35
767                    },
768                    {
769                        "Direction": "greater than",
770                        "Label": "curr1",
771                        "Name": "upper critical",
772                        "Severity": 1,
773                        "Value": 1.13
774                    }
775                ],
776                "Type": "INA238",
777                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN2_CURR_A",
778                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN2_VOLT_V"
779            },
780            {
781                "Address": "0x45",
782                "Bus": "$bus",
783                "Labels": [
784                    "in1",
785                    "curr1"
786                ],
787                "Name": "FCB_MID_$bus * -1 + 19 FAN3",
788                "Thresholds": [
789                    {
790                        "Direction": "less than",
791                        "Label": "in1",
792                        "Name": "lower critical",
793                        "Severity": 1,
794                        "Value": 48.45
795                    },
796                    {
797                        "Direction": "greater than",
798                        "Label": "in1",
799                        "Name": "upper critical",
800                        "Severity": 1,
801                        "Value": 53.35
802                    },
803                    {
804                        "Direction": "greater than",
805                        "Label": "curr1",
806                        "Name": "upper critical",
807                        "Severity": 1,
808                        "Value": 1.15
809                    }
810                ],
811                "Type": "INA238",
812                "curr1_Name": "FCB_MID_$bus * -1 + 19 FAN3_CURR_A",
813                "in1_Name": "FCB_MID_$bus * -1 + 19 FAN3_VOLT_V"
814            },
815            {
816                "Address": "0x4b",
817                "Bus": "$bus",
818                "Name": "FCB_MID_$bus * -1 + 19 TEMP_C",
819                "Thresholds": [
820                    {
821                        "Direction": "greater than",
822                        "Name": "upper critical",
823                        "Severity": 1,
824                        "Value": 80
825                    },
826                    {
827                        "Direction": "greater than",
828                        "Name": "upper non critical",
829                        "Severity": 0,
830                        "Value": 75
831                    },
832                    {
833                        "Direction": "less than",
834                        "Name": "lower non critical",
835                        "Severity": 0,
836                        "Value": 5
837                    },
838                    {
839                        "Direction": "less than",
840                        "Name": "lower critical",
841                        "Severity": 1,
842                        "Value": 0
843                    }
844                ],
845                "Type": "TMP75"
846            }
847        ],
848        "Name": "Minerva Middle Fan Board $bus * -1 + 19",
849        "Probe": [
850            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 18})",
851            "OR",
852            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 19})"
853        ],
854        "Type": "Board",
855        "xyz.openbmc_project.Inventory.Decorator.Asset": {
856            "BuildDate": "$BOARD_MANUFACTURE_DATE",
857            "Manufacturer": "$BOARD_MANUFACTURER",
858            "Model": "$BOARD_PRODUCT_NAME",
859            "PartNumber": "$BOARD_PART_NUMBER",
860            "SerialNumber": "$BOARD_SERIAL_NUMBER",
861            "SparePartNumber": "$BOARD_INFO_AM1"
862        }
863    },
864    {
865        "Exposes": [
866            {
867                "Address": "0x5e",
868                "Bus": "$bus",
869                "Connector": {
870                    "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_IL",
871                    "Pwm": 2,
872                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
873                    "Tachs": [
874                        0
875                    ]
876                },
877                "Index": 0,
878                "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_IL_SPEED_RPM",
879                "PowerState": "Always",
880                "Thresholds": [
881                    {
882                        "Direction": "greater than",
883                        "Name": "upper critical",
884                        "Severity": 1,
885                        "Value": 20000
886                    },
887                    {
888                        "Direction": "less than",
889                        "Name": "lower critical",
890                        "Severity": 1,
891                        "Value": 1000
892                    }
893                ],
894                "Type": "I2CFan"
895            },
896            {
897                "Address": "0x5e",
898                "Bus": "$bus",
899                "Connector": {
900                    "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_OL",
901                    "Pwm": 2,
902                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
903                    "Tachs": [
904                        1
905                    ]
906                },
907                "Index": 1,
908                "Name": "FCB_BOT_$bus * -1 + 21 FAN0_TACH_OL_SPEED_RPM",
909                "PowerState": "Always",
910                "Thresholds": [
911                    {
912                        "Direction": "greater than",
913                        "Name": "upper critical",
914                        "Severity": 1,
915                        "Value": 20000
916                    },
917                    {
918                        "Direction": "less than",
919                        "Name": "lower critical",
920                        "Severity": 1,
921                        "Value": 1000
922                    }
923                ],
924                "Type": "I2CFan"
925            },
926            {
927                "Address": "0x5e",
928                "Bus": "$bus",
929                "Connector": {
930                    "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_IL",
931                    "Pwm": 2,
932                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
933                    "Tachs": [
934                        2
935                    ]
936                },
937                "Index": 2,
938                "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_IL_SPEED_RPM",
939                "PowerState": "Always",
940                "Thresholds": [
941                    {
942                        "Direction": "greater than",
943                        "Name": "upper critical",
944                        "Severity": 1,
945                        "Value": 20000
946                    },
947                    {
948                        "Direction": "less than",
949                        "Name": "lower critical",
950                        "Severity": 1,
951                        "Value": 1000
952                    }
953                ],
954                "Type": "I2CFan"
955            },
956            {
957                "Address": "0x5e",
958                "Bus": "$bus",
959                "Connector": {
960                    "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_OL",
961                    "Pwm": 2,
962                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
963                    "Tachs": [
964                        3
965                    ]
966                },
967                "Index": 3,
968                "Name": "FCB_BOT_$bus * -1 + 21 FAN1_TACH_OL_SPEED_RPM",
969                "PowerState": "Always",
970                "Thresholds": [
971                    {
972                        "Direction": "greater than",
973                        "Name": "upper critical",
974                        "Severity": 1,
975                        "Value": 20000
976                    },
977                    {
978                        "Direction": "less than",
979                        "Name": "lower critical",
980                        "Severity": 1,
981                        "Value": 1000
982                    }
983                ],
984                "Type": "I2CFan"
985            },
986            {
987                "Address": "0x5e",
988                "Bus": "$bus",
989                "Connector": {
990                    "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_IL",
991                    "Pwm": 2,
992                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
993                    "Tachs": [
994                        4
995                    ]
996                },
997                "Index": 4,
998                "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_IL_SPEED_RPM",
999                "PowerState": "Always",
1000                "Thresholds": [
1001                    {
1002                        "Direction": "greater than",
1003                        "Name": "upper critical",
1004                        "Severity": 1,
1005                        "Value": 20000
1006                    },
1007                    {
1008                        "Direction": "less than",
1009                        "Name": "lower critical",
1010                        "Severity": 1,
1011                        "Value": 1000
1012                    }
1013                ],
1014                "Type": "I2CFan"
1015            },
1016            {
1017                "Address": "0x5e",
1018                "Bus": "$bus",
1019                "Connector": {
1020                    "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_OL",
1021                    "Pwm": 2,
1022                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
1023                    "Tachs": [
1024                        5
1025                    ]
1026                },
1027                "Index": 5,
1028                "Name": "FCB_BOT_$bus * -1 + 21 FAN2_TACH_OL_SPEED_RPM",
1029                "PowerState": "Always",
1030                "Thresholds": [
1031                    {
1032                        "Direction": "greater than",
1033                        "Name": "upper critical",
1034                        "Severity": 1,
1035                        "Value": 20000
1036                    },
1037                    {
1038                        "Direction": "less than",
1039                        "Name": "lower critical",
1040                        "Severity": 1,
1041                        "Value": 1000
1042                    }
1043                ],
1044                "Type": "I2CFan"
1045            },
1046            {
1047                "Address": "0x5e",
1048                "Bus": "$bus",
1049                "Connector": {
1050                    "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_IL",
1051                    "Pwm": 2,
1052                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
1053                    "Tachs": [
1054                        6
1055                    ]
1056                },
1057                "Index": 6,
1058                "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_IL_SPEED_RPM",
1059                "PowerState": "Always",
1060                "Thresholds": [
1061                    {
1062                        "Direction": "greater than",
1063                        "Name": "upper critical",
1064                        "Severity": 1,
1065                        "Value": 20000
1066                    },
1067                    {
1068                        "Direction": "less than",
1069                        "Name": "lower critical",
1070                        "Severity": 1,
1071                        "Value": 1000
1072                    }
1073                ],
1074                "Type": "I2CFan"
1075            },
1076            {
1077                "Address": "0x5e",
1078                "Bus": "$bus",
1079                "Connector": {
1080                    "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_OL",
1081                    "Pwm": 2,
1082                    "PwmName": "FCB_BOT_$bus * -1 + 21 FAN_PWM",
1083                    "Tachs": [
1084                        7
1085                    ]
1086                },
1087                "Index": 7,
1088                "Name": "FCB_BOT_$bus * -1 + 21 FAN3_TACH_OL_SPEED_RPM",
1089                "PowerState": "Always",
1090                "Thresholds": [
1091                    {
1092                        "Direction": "greater than",
1093                        "Name": "upper critical",
1094                        "Severity": 1,
1095                        "Value": 20000
1096                    },
1097                    {
1098                        "Direction": "less than",
1099                        "Name": "lower critical",
1100                        "Severity": 1,
1101                        "Value": 1000
1102                    }
1103                ],
1104                "Type": "I2CFan"
1105            },
1106            {
1107                "Address": "0x40",
1108                "Bus": "$bus",
1109                "Labels": [
1110                    "in1",
1111                    "curr1"
1112                ],
1113                "Name": "FCB_BOT_$bus * -1 + 21 FAN0",
1114                "Thresholds": [
1115                    {
1116                        "Direction": "less than",
1117                        "Label": "in1",
1118                        "Name": "lower critical",
1119                        "Severity": 1,
1120                        "Value": 48.45
1121                    },
1122                    {
1123                        "Direction": "greater than",
1124                        "Label": "in1",
1125                        "Name": "upper critical",
1126                        "Severity": 1,
1127                        "Value": 53.35
1128                    },
1129                    {
1130                        "Direction": "greater than",
1131                        "Label": "curr1",
1132                        "Name": "upper critical",
1133                        "Severity": 1,
1134                        "Value": 1.19
1135                    }
1136                ],
1137                "Type": "INA238",
1138                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN0_CURR_A",
1139                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN0_VOLT_V"
1140            },
1141            {
1142                "Address": "0x41",
1143                "Bus": "$bus",
1144                "Labels": [
1145                    "in1",
1146                    "curr1"
1147                ],
1148                "Name": "FCB_BOT_$bus * -1 + 21 FAN1",
1149                "Thresholds": [
1150                    {
1151                        "Direction": "less than",
1152                        "Label": "in1",
1153                        "Name": "lower critical",
1154                        "Severity": 1,
1155                        "Value": 48.45
1156                    },
1157                    {
1158                        "Direction": "greater than",
1159                        "Label": "in1",
1160                        "Name": "upper critical",
1161                        "Severity": 1,
1162                        "Value": 53.35
1163                    },
1164                    {
1165                        "Direction": "greater than",
1166                        "Label": "curr1",
1167                        "Name": "upper critical",
1168                        "Severity": 1,
1169                        "Value": 1.13
1170                    }
1171                ],
1172                "Type": "INA238",
1173                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN1_CURR_A",
1174                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN1_VOLT_V"
1175            },
1176            {
1177                "Address": "0x44",
1178                "Bus": "$bus",
1179                "Labels": [
1180                    "in1",
1181                    "curr1"
1182                ],
1183                "Name": "FCB_BOT_$bus * -1 + 21 FAN2",
1184                "Thresholds": [
1185                    {
1186                        "Direction": "less than",
1187                        "Label": "in1",
1188                        "Name": "lower critical",
1189                        "Severity": 1,
1190                        "Value": 48.45
1191                    },
1192                    {
1193                        "Direction": "greater than",
1194                        "Label": "in1",
1195                        "Name": "upper critical",
1196                        "Severity": 1,
1197                        "Value": 53.35
1198                    },
1199                    {
1200                        "Direction": "greater than",
1201                        "Label": "curr1",
1202                        "Name": "upper critical",
1203                        "Severity": 1,
1204                        "Value": 1.13
1205                    }
1206                ],
1207                "Type": "INA238",
1208                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN2_CURR_A",
1209                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN2_VOLT_V"
1210            },
1211            {
1212                "Address": "0x45",
1213                "Bus": "$bus",
1214                "Labels": [
1215                    "in1",
1216                    "curr1"
1217                ],
1218                "Name": "FCB_BOT_$bus * -1 + 21 FAN3",
1219                "Thresholds": [
1220                    {
1221                        "Direction": "less than",
1222                        "Label": "in1",
1223                        "Name": "lower critical",
1224                        "Severity": 1,
1225                        "Value": 48.45
1226                    },
1227                    {
1228                        "Direction": "greater than",
1229                        "Label": "in1",
1230                        "Name": "upper critical",
1231                        "Severity": 1,
1232                        "Value": 53.35
1233                    },
1234                    {
1235                        "Direction": "greater than",
1236                        "Label": "curr1",
1237                        "Name": "upper critical",
1238                        "Severity": 1,
1239                        "Value": 1.15
1240                    }
1241                ],
1242                "Type": "INA238",
1243                "curr1_Name": "FCB_BOT_$bus * -1 + 21 FAN3_CURR_A",
1244                "in1_Name": "FCB_BOT_$bus * -1 + 21 FAN3_VOLT_V"
1245            },
1246            {
1247                "Address": "0x4b",
1248                "Bus": "$bus",
1249                "Name": "FCB_BOT_$bus * -1 + 21 TEMP_C",
1250                "Thresholds": [
1251                    {
1252                        "Direction": "greater than",
1253                        "Name": "upper critical",
1254                        "Severity": 1,
1255                        "Value": 80
1256                    },
1257                    {
1258                        "Direction": "greater than",
1259                        "Name": "upper non critical",
1260                        "Severity": 0,
1261                        "Value": 75
1262                    },
1263                    {
1264                        "Direction": "less than",
1265                        "Name": "lower non critical",
1266                        "Severity": 0,
1267                        "Value": 5
1268                    },
1269                    {
1270                        "Direction": "less than",
1271                        "Name": "lower critical",
1272                        "Severity": 1,
1273                        "Value": 0
1274                    }
1275                ],
1276                "Type": "TMP75"
1277            }
1278        ],
1279        "Name": "Minerva Bottom Fan Board $bus * -1 + 21",
1280        "Probe": [
1281            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 20})",
1282            "OR",
1283            "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Minerva Fan Board.*', 'BUS': 21})"
1284        ],
1285        "Type": "Board",
1286        "xyz.openbmc_project.Inventory.Decorator.Asset": {
1287            "BuildDate": "$BOARD_MANUFACTURE_DATE",
1288            "Manufacturer": "$BOARD_MANUFACTURER",
1289            "Model": "$BOARD_PRODUCT_NAME",
1290            "PartNumber": "$BOARD_PART_NUMBER",
1291            "SerialNumber": "$BOARD_SERIAL_NUMBER",
1292            "SparePartNumber": "$BOARD_INFO_AM1"
1293        }
1294    }
1295]
1296