1{
2    "Exposes": [
3        {
4            "Address": "$address",
5            "Bus": "$bus",
6            "Name": "Fan Board $bus % 30 FRU",
7            "Type": "EEPROM"
8        },
9        {
10            "Address": "0x21",
11            "Bus": "$bus",
12            "Connector": {
13                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 0 TACH_IL_SPEED_RPM",
14                "Pwm": 5,
15                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 0 PWM_TACH_PCT",
16                "Tachs": [
17                    1
18                ]
19            },
20            "Index": 1,
21            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 0 TACH_IL_SPEED_RPM",
22            "PowerState": "Always",
23            "Thresholds": [
24                {
25                    "Direction": "greater than",
26                    "Name": "upper critical",
27                    "Severity": 1,
28                    "Value": 17380
29                },
30                {
31                    "Direction": "greater than",
32                    "Name": "upper non critical",
33                    "Severity": 0,
34                    "Value": 13140
35                },
36                {
37                    "Direction": "less than",
38                    "Name": "lower critical",
39                    "Severity": 1,
40                    "Value": 1000
41                }
42            ],
43            "Type": "I2CFan"
44        },
45        {
46            "Address": "0x21",
47            "Bus": "$bus",
48            "Connector": {
49                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 0 TACH_OL_SPEED_RPM",
50                "Pwm": 5,
51                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 0 PWM_TACH_PCT",
52                "Tachs": [
53                    2
54                ]
55            },
56            "Index": 2,
57            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 0 TACH_OL_SPEED_RPM",
58            "PowerState": "Always",
59            "Thresholds": [
60                {
61                    "Direction": "greater than",
62                    "Name": "upper critical",
63                    "Severity": 1,
64                    "Value": 15950
65                },
66                {
67                    "Direction": "greater than",
68                    "Name": "upper non critical",
69                    "Severity": 0,
70                    "Value": 11970
71                },
72                {
73                    "Direction": "less than",
74                    "Name": "lower critical",
75                    "Severity": 1,
76                    "Value": 1000
77                }
78            ],
79            "Type": "I2CFan"
80        },
81        {
82            "Address": "0x23",
83            "Bus": "$bus",
84            "Connector": {
85                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 1 TACH_IL_SPEED_RPM",
86                "Pwm": 5,
87                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 1 PWM_TACH_PCT",
88                "Tachs": [
89                    1
90                ]
91            },
92            "Index": 1,
93            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 1 TACH_IL_SPEED_RPM",
94            "PowerState": "Always",
95            "Thresholds": [
96                {
97                    "Direction": "greater than",
98                    "Name": "upper critical",
99                    "Severity": 1,
100                    "Value": 17380
101                },
102                {
103                    "Direction": "greater than",
104                    "Name": "upper non critical",
105                    "Severity": 0,
106                    "Value": 13140
107                },
108                {
109                    "Direction": "less than",
110                    "Name": "lower critical",
111                    "Severity": 1,
112                    "Value": 1000
113                }
114            ],
115            "Type": "I2CFan"
116        },
117        {
118            "Address": "0x23",
119            "Bus": "$bus",
120            "Connector": {
121                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 1 TACH_OL_SPEED_RPM",
122                "Pwm": 5,
123                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 1 PWM_TACH_PCT",
124                "Tachs": [
125                    2
126                ]
127            },
128            "Index": 2,
129            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 1 TACH_OL_SPEED_RPM",
130            "PowerState": "Always",
131            "Thresholds": [
132                {
133                    "Direction": "greater than",
134                    "Name": "upper critical",
135                    "Severity": 1,
136                    "Value": 15950
137                },
138                {
139                    "Direction": "greater than",
140                    "Name": "upper non critical",
141                    "Severity": 0,
142                    "Value": 11970
143                },
144                {
145                    "Direction": "less than",
146                    "Name": "lower critical",
147                    "Severity": 1,
148                    "Value": 1000
149                }
150            ],
151            "Type": "I2CFan"
152        },
153        {
154            "Address": "0x21",
155            "Bus": "$bus",
156            "Connector": {
157                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 4 TACH_IL_SPEED_RPM",
158                "Pwm": 2,
159                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 4 PWM_TACH_PCT",
160                "Tachs": [
161                    14
162                ]
163            },
164            "Index": 14,
165            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 4 TACH_IL_SPEED_RPM",
166            "PowerState": "Always",
167            "Thresholds": [
168                {
169                    "Direction": "greater than",
170                    "Name": "upper critical",
171                    "Severity": 1,
172                    "Value": 17380
173                },
174                {
175                    "Direction": "greater than",
176                    "Name": "upper non critical",
177                    "Severity": 0,
178                    "Value": 13140
179                },
180                {
181                    "Direction": "less than",
182                    "Name": "lower critical",
183                    "Severity": 1,
184                    "Value": 1000
185                }
186            ],
187            "Type": "I2CFan"
188        },
189        {
190            "Address": "0x21",
191            "Bus": "$bus",
192            "Connector": {
193                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 4 TACH_OL_SPEED_RPM",
194                "Pwm": 2,
195                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 4 PWM_TACH_PCT",
196                "Tachs": [
197                    0
198                ]
199            },
200            "Index": 0,
201            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 4 TACH_OL_SPEED_RPM",
202            "PowerState": "Always",
203            "Thresholds": [
204                {
205                    "Direction": "greater than",
206                    "Name": "upper critical",
207                    "Severity": 1,
208                    "Value": 15950
209                },
210                {
211                    "Direction": "greater than",
212                    "Name": "upper non critical",
213                    "Severity": 0,
214                    "Value": 11970
215                },
216                {
217                    "Direction": "less than",
218                    "Name": "lower critical",
219                    "Severity": 1,
220                    "Value": 1000
221                }
222            ],
223            "Type": "I2CFan"
224        },
225        {
226            "Address": "0x23",
227            "Bus": "$bus",
228            "Connector": {
229                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 5 TACH_IL_SPEED_RPM",
230                "Pwm": 2,
231                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 5 PWM_TACH_PCT",
232                "Tachs": [
233                    14
234                ]
235            },
236            "Index": 14,
237            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 5 TACH_IL_SPEED_RPM",
238            "PowerState": "Always",
239            "Thresholds": [
240                {
241                    "Direction": "greater than",
242                    "Name": "upper critical",
243                    "Severity": 1,
244                    "Value": 17380
245                },
246                {
247                    "Direction": "greater than",
248                    "Name": "upper non critical",
249                    "Severity": 0,
250                    "Value": 13140
251                },
252                {
253                    "Direction": "less than",
254                    "Name": "lower critical",
255                    "Severity": 1,
256                    "Value": 1000
257                }
258            ],
259            "Type": "I2CFan"
260        },
261        {
262            "Address": "0x23",
263            "Bus": "$bus",
264            "Connector": {
265                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 5 TACH_OL_SPEED_RPM",
266                "Pwm": 2,
267                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 5 PWM_TACH_PCT",
268                "Tachs": [
269                    0
270                ]
271            },
272            "Index": 0,
273            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 5 TACH_OL_SPEED_RPM",
274            "PowerState": "Always",
275            "Thresholds": [
276                {
277                    "Direction": "greater than",
278                    "Name": "upper critical",
279                    "Severity": 1,
280                    "Value": 15950
281                },
282                {
283                    "Direction": "greater than",
284                    "Name": "upper non critical",
285                    "Severity": 0,
286                    "Value": 11970
287                },
288                {
289                    "Direction": "less than",
290                    "Name": "lower critical",
291                    "Severity": 1,
292                    "Value": 1000
293                }
294            ],
295            "Type": "I2CFan"
296        },
297        {
298            "Address": "0x21",
299            "Bus": "$bus",
300            "Connector": {
301                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 8 TACH_IL_SPEED_RPM",
302                "Pwm": 0,
303                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 8 PWM_TACH_PCT",
304                "Tachs": [
305                    9
306                ]
307            },
308            "Index": 9,
309            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 8 TACH_IL_SPEED_RPM",
310            "PowerState": "Always",
311            "Thresholds": [
312                {
313                    "Direction": "greater than",
314                    "Name": "upper critical",
315                    "Severity": 1,
316                    "Value": 17380
317                },
318                {
319                    "Direction": "greater than",
320                    "Name": "upper non critical",
321                    "Severity": 0,
322                    "Value": 13140
323                },
324                {
325                    "Direction": "less than",
326                    "Name": "lower critical",
327                    "Severity": 1,
328                    "Value": 1000
329                }
330            ],
331            "Type": "I2CFan"
332        },
333        {
334            "Address": "0x21",
335            "Bus": "$bus",
336            "Connector": {
337                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 8 TACH_OL_SPEED_RPM",
338                "Pwm": 0,
339                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 8 PWM_TACH_PCT",
340                "Tachs": [
341                    12
342                ]
343            },
344            "Index": 12,
345            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 8 TACH_OL_SPEED_RPM",
346            "PowerState": "Always",
347            "Thresholds": [
348                {
349                    "Direction": "greater than",
350                    "Name": "upper critical",
351                    "Severity": 1,
352                    "Value": 15950
353                },
354                {
355                    "Direction": "greater than",
356                    "Name": "upper non critical",
357                    "Severity": 0,
358                    "Value": 11970
359                },
360                {
361                    "Direction": "less than",
362                    "Name": "lower critical",
363                    "Severity": 1,
364                    "Value": 1000
365                }
366            ],
367            "Type": "I2CFan"
368        },
369        {
370            "Address": "0x23",
371            "Bus": "$bus",
372            "Connector": {
373                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 9 TACH_IL_SPEED_RPM",
374                "Pwm": 0,
375                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 9 PWM_TACH_PCT",
376                "Tachs": [
377                    9
378                ]
379            },
380            "Index": 9,
381            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 9 TACH_IL_SPEED_RPM",
382            "PowerState": "Always",
383            "Thresholds": [
384                {
385                    "Direction": "greater than",
386                    "Name": "upper critical",
387                    "Severity": 1,
388                    "Value": 17380
389                },
390                {
391                    "Direction": "greater than",
392                    "Name": "upper non critical",
393                    "Severity": 0,
394                    "Value": 13140
395                },
396                {
397                    "Direction": "less than",
398                    "Name": "lower critical",
399                    "Severity": 1,
400                    "Value": 1000
401                }
402            ],
403            "Type": "I2CFan"
404        },
405        {
406            "Address": "0x23",
407            "Bus": "$bus",
408            "Connector": {
409                "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 9 TACH_OL_SPEED_RPM",
410                "Pwm": 0,
411                "PwmName": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 9 PWM_TACH_PCT",
412                "Tachs": [
413                    12
414                ]
415            },
416            "Index": 12,
417            "Name": "FANBOARD$bus % 30 FAN$bus % 30 * 2 + 9 TACH_OL_SPEED_RPM",
418            "PowerState": "Always",
419            "Thresholds": [
420                {
421                    "Direction": "greater than",
422                    "Name": "upper critical",
423                    "Severity": 1,
424                    "Value": 15950
425                },
426                {
427                    "Direction": "greater than",
428                    "Name": "upper non critical",
429                    "Severity": 0,
430                    "Value": 11970
431                },
432                {
433                    "Direction": "less than",
434                    "Name": "lower critical",
435                    "Severity": 1,
436                    "Value": 1000
437                }
438            ],
439            "Type": "I2CFan"
440        },
441        {
442            "Address": "0x33",
443            "Bus": "$bus",
444            "Labels": [
445                "in_voltage0",
446                "in_voltage1",
447                "in_voltage2",
448                "in_voltage3",
449                "in_voltage4",
450                "in_voltage5",
451                "in_voltage6",
452                "in_voltage7"
453            ],
454            "Name": "FANBOARD$bus % 30 ADC",
455            "Thresholds": [
456                {
457                    "Direction": "greater than",
458                    "Label": "in_voltage0",
459                    "Name": "upper non recoverable",
460                    "Severity": 4,
461                    "Value": 6
462                },
463                {
464                    "Direction": "greater than",
465                    "Label": "in_voltage0",
466                    "Name": "upper critical",
467                    "Severity": 1,
468                    "Value": 2.156
469                },
470                {
471                    "Direction": "greater than",
472                    "Label": "in_voltage0",
473                    "Name": "upper non critical",
474                    "Severity": 0,
475                    "Value": 2.058
476                },
477                {
478                    "Direction": "greater than",
479                    "Label": "in_voltage1",
480                    "Name": "upper non recoverable",
481                    "Severity": 4,
482                    "Value": 6
483                },
484                {
485                    "Direction": "greater than",
486                    "Label": "in_voltage1",
487                    "Name": "upper critical",
488                    "Severity": 1,
489                    "Value": 2.156
490                },
491                {
492                    "Direction": "greater than",
493                    "Label": "in_voltage1",
494                    "Name": "upper non critical",
495                    "Severity": 0,
496                    "Value": 2.058
497                },
498                {
499                    "Direction": "greater than",
500                    "Label": "in_voltage2",
501                    "Name": "upper non recoverable",
502                    "Severity": 4,
503                    "Value": 6
504                },
505                {
506                    "Direction": "greater than",
507                    "Label": "in_voltage2",
508                    "Name": "upper critical",
509                    "Severity": 1,
510                    "Value": 2.156
511                },
512                {
513                    "Direction": "greater than",
514                    "Label": "in_voltage2",
515                    "Name": "upper non critical",
516                    "Severity": 0,
517                    "Value": 2.058
518                },
519                {
520                    "Direction": "greater than",
521                    "Label": "in_voltage3",
522                    "Name": "upper non recoverable",
523                    "Severity": 4,
524                    "Value": 6
525                },
526                {
527                    "Direction": "greater than",
528                    "Label": "in_voltage3",
529                    "Name": "upper critical",
530                    "Severity": 1,
531                    "Value": 2.156
532                },
533                {
534                    "Direction": "greater than",
535                    "Label": "in_voltage3",
536                    "Name": "upper non critical",
537                    "Severity": 0,
538                    "Value": 2.058
539                },
540                {
541                    "Direction": "greater than",
542                    "Label": "in_voltage4",
543                    "Name": "upper non recoverable",
544                    "Severity": 4,
545                    "Value": 6
546                },
547                {
548                    "Direction": "greater than",
549                    "Label": "in_voltage4",
550                    "Name": "upper critical",
551                    "Severity": 1,
552                    "Value": 2.156
553                },
554                {
555                    "Direction": "greater than",
556                    "Label": "in_voltage4",
557                    "Name": "upper non critical",
558                    "Severity": 0,
559                    "Value": 2.058
560                },
561                {
562                    "Direction": "greater than",
563                    "Label": "in_voltage5",
564                    "Name": "upper non recoverable",
565                    "Severity": 4,
566                    "Value": 6
567                },
568                {
569                    "Direction": "greater than",
570                    "Label": "in_voltage5",
571                    "Name": "upper critical",
572                    "Severity": 1,
573                    "Value": 2.156
574                },
575                {
576                    "Direction": "greater than",
577                    "Label": "in_voltage5",
578                    "Name": "upper non critical",
579                    "Severity": 0,
580                    "Value": 2.058
581                },
582                {
583                    "Direction": "greater than",
584                    "Label": "in_voltage6",
585                    "Name": "upper non recoverable",
586                    "Severity": 4,
587                    "Value": 60
588                },
589                {
590                    "Direction": "greater than",
591                    "Label": "in_voltage6",
592                    "Name": "upper critical",
593                    "Severity": 1,
594                    "Value": 53.28
595                },
596                {
597                    "Direction": "greater than",
598                    "Label": "in_voltage6",
599                    "Name": "upper non critical",
600                    "Severity": 0,
601                    "Value": 52.8
602                },
603                {
604                    "Direction": "less than",
605                    "Label": "in_voltage6",
606                    "Name": "lower non critical",
607                    "Severity": 0,
608                    "Value": 43.2
609                },
610                {
611                    "Direction": "less than",
612                    "Label": "in_voltage6",
613                    "Name": "lower critical",
614                    "Severity": 1,
615                    "Value": 42.72
616                },
617                {
618                    "Direction": "less than",
619                    "Label": "in_voltage6",
620                    "Name": "lower non recoverable",
621                    "Severity": 4,
622                    "Value": 40
623                },
624                {
625                    "Direction": "greater than",
626                    "Label": "in_voltage7",
627                    "Name": "upper non recoverable",
628                    "Severity": 4,
629                    "Value": 3.83
630                },
631                {
632                    "Direction": "greater than",
633                    "Label": "in_voltage7",
634                    "Name": "upper critical",
635                    "Severity": 1,
636                    "Value": 3.432
637                },
638                {
639                    "Direction": "greater than",
640                    "Label": "in_voltage7",
641                    "Name": "upper non critical",
642                    "Severity": 0,
643                    "Value": 3.399
644                },
645                {
646                    "Direction": "less than",
647                    "Label": "in_voltage7",
648                    "Name": "lower non critical",
649                    "Severity": 0,
650                    "Value": 3.201
651                },
652                {
653                    "Direction": "less than",
654                    "Label": "in_voltage7",
655                    "Name": "lower critical",
656                    "Severity": 1,
657                    "Value": 3.168
658                },
659                {
660                    "Direction": "less than",
661                    "Label": "in_voltage7",
662                    "Name": "lower non recoverable",
663                    "Severity": 4,
664                    "Value": 2.64
665                }
666            ],
667            "Type": "MAX11615",
668            "in_voltage0_Max": 2.5,
669            "in_voltage0_Name": "FANBOARD$bus % 30 ADC_48V_FAN$bus % 30 * 2 + 8 CURR_A",
670            "in_voltage0_Scale": 480,
671            "in_voltage1_Max": 2.5,
672            "in_voltage1_Name": "FANBOARD$bus % 30 ADC_48V_FAN$bus % 30 * 2 + 4 CURR_A",
673            "in_voltage1_Scale": 480,
674            "in_voltage2_Max": 2.5,
675            "in_voltage2_Name": "FANBOARD$bus % 30 ADC_48V_FAN$bus % 30 * 2 + 0 CURR_A",
676            "in_voltage2_Scale": 480,
677            "in_voltage3_Max": 2.5,
678            "in_voltage3_Name": "FANBOARD$bus % 30 ADC_48V_FAN$bus % 30 * 2 + 9 CURR_A",
679            "in_voltage3_Scale": 480,
680            "in_voltage4_Max": 2.5,
681            "in_voltage4_Name": "FANBOARD$bus % 30 ADC_48V_FAN$bus % 30 * 2 + 5 CURR_A",
682            "in_voltage4_Scale": 480,
683            "in_voltage5_Max": 2.5,
684            "in_voltage5_Name": "FANBOARD$bus % 30 ADC_48V_FAN$bus % 30 * 2 + 1 CURR_A",
685            "in_voltage5_Scale": 480,
686            "in_voltage6_Name": "FANBOARD$bus % 30 ADC_48V_AUX_VOLT_V",
687            "in_voltage6_Scale": 63.84,
688            "in_voltage7_Name": "FANBOARD$bus % 30 ADC_3V3_STBY_VOLT_V",
689            "in_voltage7_Scale": 1000
690        }
691    ],
692    "Name": "Yosemite 4 Fan Board $bus % 30",
693    "Probe": "xyz.openbmc_project.FruDevice({'BOARD_PRODUCT_NAME': 'Fan Board FSC-NCT ADC-MAX LED-ONS EFUSE-MAX', 'PRODUCT_PRODUCT_NAME': 'Yosemite V4'})",
694    "Type": "Board",
695    "xyz.openbmc_project.Inventory.Decorator.Asset": {
696        "BuildDate": "$BOARD_MANUFACTURE_DATE",
697        "Manufacturer": "$BOARD_MANUFACTURER",
698        "Model": "$BOARD_PRODUCT_NAME",
699        "PartNumber": "$BOARD_PART_NUMBER",
700        "SerialNumber": "$BOARD_SERIAL_NUMBER",
701        "SparePartNumber": "$BOARD_INFO_AM1"
702    },
703    "xyz.openbmc_project.Inventory.Decorator.AssetTag": {
704        "AssetTag": "$PRODUCT_ASSET_TAG"
705    },
706    "xyz.openbmc_project.Inventory.Decorator.Revision": {
707        "Version": "$PRODUCT_VERSION"
708    },
709    "xyz.openbmc_project.Inventory.Decorator.Slot": {
710        "SlotNumber": "$bus % 30"
711    }
712}
713