@@ -340,6 +340,232 @@ static const struct m10bmc_hwmon_board_data n5010bmc_hwmon_bdata = {
340340 .hinfo = n5010bmc_hinfo ,
341341};
342342
343+ static const struct m10bmc_sdata n6010bmc_temp_tbl [] = {
344+ { 0x444 , 0x448 , 0x44c , 0x0 , 0x0 , 500 , "FPGA E-TILE Temperature #1" },
345+ { 0x450 , 0x454 , 0x458 , 0x0 , 0x0 , 500 , "FPGA E-TILE Temperature #2" },
346+ { 0x45c , 0x460 , 0x464 , 0x0 , 0x0 , 500 , "FPGA E-TILE Temperature #3" },
347+ { 0x468 , 0x46c , 0x470 , 0x0 , 0x0 , 500 , "FPGA E-TILE Temperature #4" },
348+ { 0x474 , 0x478 , 0x47c , 0x0 , 0x0 , 500 , "FPGA P-TILE Temperature" },
349+ { 0x484 , 0x488 , 0x48c , 0x0 , 0x0 , 500 , "FPGA FABRIC Digital Temperature#1" },
350+ { 0x490 , 0x494 , 0x498 , 0x0 , 0x0 , 500 , "FPGA FABRIC Digital Temperature#2" },
351+ { 0x49c , 0x4a0 , 0x4a4 , 0x0 , 0x0 , 500 , "FPGA FABRIC Digital Temperature#3" },
352+ { 0x4a8 , 0x4ac , 0x4b0 , 0x0 , 0x0 , 500 , "FPGA FABRIC Digital Temperature#4" },
353+ { 0x4b4 , 0x4b8 , 0x4bc , 0x0 , 0x0 , 500 , "FPGA FABRIC Digital Temperature#5" },
354+ { 0x4c0 , 0x4c4 , 0x4c8 , 0x0 , 0x0 , 500 , "FPGA FABRIC Remote Digital Temperature#1" },
355+ { 0x4cc , 0x4d0 , 0x4d4 , 0x0 , 0x0 , 500 , "FPGA FABRIC Remote Digital Temperature#2" },
356+ { 0x4d8 , 0x4dc , 0x4e0 , 0x0 , 0x0 , 500 , "FPGA FABRIC Remote Digital Temperature#3" },
357+ { 0x4e4 , 0x4e8 , 0x4ec , 0x0 , 0x0 , 500 , "FPGA FABRIC Remote Digital Temperature#4" },
358+ { 0x4f0 , 0x4f4 , 0x4f8 , 0x0 , 0x0 , 500 , "Board Top Near FPGA Temperature" },
359+ { 0x4fc , 0x500 , 0x504 , 0x52c , 0x0 , 500 , "Board Bottom Near CVL Temperature" },
360+ { 0x508 , 0x50c , 0x510 , 0x52c , 0x0 , 500 , "Board Top East Near VRs Temperature" },
361+ { 0x51c , 0x518 , 0x51c , 0x52c , 0x0 , 500 , "Columbiaville Die Temperature" },
362+ { 0x520 , 0x524 , 0x528 , 0x52c , 0x0 , 500 , "Board Rear Side Temperature" },
363+ { 0x530 , 0x534 , 0x538 , 0x52c , 0x0 , 500 , "Board Front Side Temperature" },
364+ { 0x53c , 0x540 , 0x544 , 0x0 , 0x0 , 500 , "QSFP1 Temperature" },
365+ { 0x548 , 0x54c , 0x550 , 0x0 , 0x0 , 500 , "QSFP2 Temperature" },
366+ { 0x554 , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "FPGA Core Voltage Phase 0 VR Temperature" },
367+ { 0x560 , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "FPGA Core Voltage Phase 1 VR Temperature" },
368+ { 0x56c , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "FPGA Core Voltage Phase 2 VR Temperature" },
369+ { 0x578 , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "FPGA Core Voltage VR Controller Temperature" },
370+ { 0x584 , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "FPGA VCCH VR Temperature" },
371+ { 0x590 , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "FPGA VCC_1V2 VR Temperature" },
372+ { 0x59c , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "FPGA VCCH, VCC_1V2 VR Controller Temperature" },
373+ { 0x5a8 , 0x0 , 0x0 , 0x0 , 0x0 , 500 , "3V3 VR Temperature" },
374+ { 0x5b4 , 0x5b8 , 0x5bc , 0x0 , 0x0 , 500 , "CVL Core Voltage VR Temperature" },
375+ { 0x5c4 , 0x5c8 , 0x5cc , 0x5c0 , 0x0 , 500 , "FPGA P-Tile Temperature [Remote]" },
376+ { 0x5d0 , 0x5d4 , 0x5d8 , 0x5c0 , 0x0 , 500 , "FPGA E-Tile Temperature [Remote]" },
377+ { 0x5dc , 0x5e0 , 0x5e4 , 0x5c0 , 0x0 , 500 , "FPGA SDM Temperature [Remote]" },
378+ { 0x5e8 , 0x5ec , 0x5f0 , 0x5c0 , 0x0 , 500 , "FPGA Corner Temperature [Remote]" },
379+ };
380+
381+ static const struct m10bmc_sdata n6010bmc_in_tbl [] = {
382+ { 0x5f4 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "Inlet 12V PCIe Rail Voltage" },
383+ { 0x60c , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "Inlet 12V Aux Rail Voltage" },
384+ { 0x624 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "Inlet 3V3 PCIe Rail Voltage" },
385+ { 0x63c , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA Core Voltage Rail Voltage" },
386+ { 0x644 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA VCCH Rail Voltage" },
387+ { 0x64c , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA VCC_1V2 Rail Voltage" },
388+ { 0x654 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA VCCH_GXER_1V1, VCCA_1V8 Voltage" },
389+ { 0x664 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA VCCIO_1V2 Voltage" },
390+ { 0x674 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "CVL Non Core Rails Inlet Voltage" },
391+ { 0x684 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "MAX10 & Board CLK PWR 3V3 Inlet Voltage" },
392+ { 0x694 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "CVL Core Voltage Rail Voltage" },
393+ { 0x6ac , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "Board 3V3 VR Voltage" },
394+ { 0x6b4 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "QSFP 3V3 Rail Voltage" },
395+ { 0x6c4 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "QSFP (Primary) Supply Rail Voltage" },
396+ { 0x6c8 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "QSFP (Secondary) Supply Rail Voltage" },
397+ { 0x6cc , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCCLK_GXER_2V5 Voltage" },
398+ { 0x6d0 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "AVDDH_1V1_CVL Voltage" },
399+ { 0x6d4 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VDDH_1V8_CVL Voltage" },
400+ { 0x6d8 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCA_PLL Voltage" },
401+ { 0x6e0 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCRT_GXER_0V9 Voltage" },
402+ { 0x6e8 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCRT_GXEL_0V9 Voltage" },
403+ { 0x6f0 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCH_GXPL_1V8 Voltage" },
404+ { 0x6f4 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCPT_1V8 Voltage" },
405+ { 0x6fc , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCC_3V3_M10 Voltage" },
406+ { 0x700 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCC_1V8_M10 Voltage" },
407+ { 0x704 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCC_1V2_EMIF1_2_3 Voltage" },
408+ { 0x70c , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCC_1V2_EMIF4_5 Voltage" },
409+ { 0x714 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCA_1V8 Voltage" },
410+ { 0x718 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "VCCH_GXER_1V1 Voltage" },
411+ { 0x71c , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "AVDD_ETH_0V9_CVL Voltage" },
412+ { 0x720 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "AVDD_PCIE_0V9_CVL Voltage" },
413+ };
414+
415+ static const struct m10bmc_sdata n6010bmc_curr_tbl [] = {
416+ { 0x600 , 0x604 , 0x608 , 0x0 , 0x0 , 1 , "Inlet 12V PCIe Rail Current" },
417+ { 0x618 , 0x61c , 0x620 , 0x0 , 0x0 , 1 , "Inlet 12V Aux Rail Current" },
418+ { 0x630 , 0x634 , 0x638 , 0x0 , 0x0 , 1 , "Inlet 3V3 PCIe Rail Current" },
419+ { 0x640 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA Core Voltage Rail Current" },
420+ { 0x648 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA VCCH Rail Current" },
421+ { 0x650 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "FPGA VCC_1V2 Rail Current" },
422+ { 0x658 , 0x65c , 0x660 , 0x0 , 0x0 , 1 , "FPGA VCCH_GXER_1V1, VCCA_1V8 Current" },
423+ { 0x668 , 0x66c , 0x670 , 0x0 , 0x0 , 1 , "FPGA VCCIO_1V2 Current" },
424+ { 0x678 , 0x67c , 0x680 , 0x0 , 0x0 , 1 , "CVL Non Core Rails Inlet Current" },
425+ { 0x688 , 0x68c , 0x680 , 0x0 , 0x0 , 1 , "MAX10 & Board CLK PWR 3V3 Inlet Current" },
426+ { 0x690 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "CVL Core Voltage Rail Current" },
427+ { 0x6b0 , 0x0 , 0x0 , 0x0 , 0x0 , 1 , "Board 3V3 VR Current" },
428+ { 0x6b8 , 0x6bc , 0x670 , 0x0 , 0x0 , 1 , "QSFP 3V3 Rail Current" },
429+ };
430+
431+ static const struct m10bmc_sdata n6010bmc_power_tbl [] = {
432+ { 0x724 , 0x0 , 0x0 , 0x0 , 0x0 , 1000 , "Board Power" },
433+ };
434+
435+ static const struct hwmon_channel_info * n6010bmc_hinfo [] = {
436+ HWMON_CHANNEL_INFO (temp ,
437+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
438+ HWMON_T_LABEL ,
439+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
440+ HWMON_T_LABEL ,
441+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
442+ HWMON_T_LABEL ,
443+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
444+ HWMON_T_LABEL ,
445+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
446+ HWMON_T_LABEL ,
447+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
448+ HWMON_T_LABEL ,
449+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
450+ HWMON_T_LABEL ,
451+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
452+ HWMON_T_LABEL ,
453+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
454+ HWMON_T_LABEL ,
455+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
456+ HWMON_T_LABEL ,
457+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
458+ HWMON_T_LABEL ,
459+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
460+ HWMON_T_LABEL ,
461+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
462+ HWMON_T_LABEL ,
463+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
464+ HWMON_T_LABEL ,
465+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
466+ HWMON_T_LABEL ,
467+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
468+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
469+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
470+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
471+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
472+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
473+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
474+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
475+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
476+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
477+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
478+ HWMON_T_LABEL ,
479+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
480+ HWMON_T_LABEL ,
481+ HWMON_T_INPUT | HWMON_T_LABEL ,
482+ HWMON_T_INPUT | HWMON_T_LABEL ,
483+ HWMON_T_INPUT | HWMON_T_LABEL ,
484+ HWMON_T_INPUT | HWMON_T_LABEL ,
485+ HWMON_T_INPUT | HWMON_T_LABEL ,
486+ HWMON_T_INPUT | HWMON_T_LABEL ,
487+ HWMON_T_INPUT | HWMON_T_LABEL ,
488+ HWMON_T_INPUT | HWMON_T_LABEL ,
489+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_CRIT |
490+ HWMON_T_LABEL ,
491+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
492+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
493+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
494+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
495+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
496+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ,
497+ HWMON_T_INPUT | HWMON_T_MAX | HWMON_T_MAX_HYST |
498+ HWMON_T_CRIT | HWMON_T_CRIT_HYST | HWMON_T_LABEL ),
499+ HWMON_CHANNEL_INFO (in ,
500+ HWMON_I_INPUT | HWMON_I_LABEL ,
501+ HWMON_I_INPUT | HWMON_I_LABEL ,
502+ HWMON_I_INPUT | HWMON_I_LABEL ,
503+ HWMON_I_INPUT | HWMON_I_LABEL ,
504+ HWMON_I_INPUT | HWMON_I_LABEL ,
505+ HWMON_I_INPUT | HWMON_I_LABEL ,
506+ HWMON_I_INPUT | HWMON_I_LABEL ,
507+ HWMON_I_INPUT | HWMON_I_LABEL ,
508+ HWMON_I_INPUT | HWMON_I_LABEL ,
509+ HWMON_I_INPUT | HWMON_I_LABEL ,
510+ HWMON_I_INPUT | HWMON_I_LABEL ,
511+ HWMON_I_INPUT | HWMON_I_LABEL ,
512+ HWMON_I_INPUT | HWMON_I_LABEL ,
513+ HWMON_I_INPUT | HWMON_I_LABEL ,
514+ HWMON_I_INPUT | HWMON_I_LABEL ,
515+ HWMON_I_INPUT | HWMON_I_LABEL ,
516+ HWMON_I_INPUT | HWMON_I_LABEL ,
517+ HWMON_I_INPUT | HWMON_I_LABEL ,
518+ HWMON_I_INPUT | HWMON_I_LABEL ,
519+ HWMON_I_INPUT | HWMON_I_LABEL ,
520+ HWMON_I_INPUT | HWMON_I_LABEL ,
521+ HWMON_I_INPUT | HWMON_I_LABEL ,
522+ HWMON_I_INPUT | HWMON_I_LABEL ,
523+ HWMON_I_INPUT | HWMON_I_LABEL ,
524+ HWMON_I_INPUT | HWMON_I_LABEL ,
525+ HWMON_I_INPUT | HWMON_I_LABEL ,
526+ HWMON_I_INPUT | HWMON_I_LABEL ,
527+ HWMON_I_INPUT | HWMON_I_LABEL ,
528+ HWMON_I_INPUT | HWMON_I_LABEL ,
529+ HWMON_I_INPUT | HWMON_I_LABEL ,
530+ HWMON_I_INPUT | HWMON_I_LABEL ),
531+ HWMON_CHANNEL_INFO (curr ,
532+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
533+ HWMON_C_LABEL ,
534+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
535+ HWMON_C_LABEL ,
536+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
537+ HWMON_C_LABEL ,
538+ HWMON_C_INPUT | HWMON_C_LABEL ,
539+ HWMON_C_INPUT | HWMON_C_LABEL ,
540+ HWMON_C_INPUT | HWMON_C_LABEL ,
541+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
542+ HWMON_C_LABEL ,
543+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
544+ HWMON_C_LABEL ,
545+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
546+ HWMON_C_LABEL ,
547+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
548+ HWMON_C_LABEL ,
549+ HWMON_C_INPUT | HWMON_C_LABEL ,
550+ HWMON_C_INPUT | HWMON_C_LABEL ,
551+ HWMON_C_INPUT | HWMON_C_MAX | HWMON_C_CRIT |
552+ HWMON_C_LABEL ),
553+ HWMON_CHANNEL_INFO (power ,
554+ HWMON_P_INPUT | HWMON_P_LABEL ),
555+ NULL
556+ };
557+
558+ static const struct m10bmc_hwmon_board_data n6010bmc_hwmon_bdata = {
559+ .tables = {
560+ [hwmon_temp ] = n6010bmc_temp_tbl ,
561+ [hwmon_in ] = n6010bmc_in_tbl ,
562+ [hwmon_curr ] = n6010bmc_curr_tbl ,
563+ [hwmon_power ] = n6010bmc_power_tbl ,
564+ },
565+
566+ .hinfo = n6010bmc_hinfo ,
567+ };
568+
343569static umode_t
344570m10bmc_hwmon_is_visible (const void * data , enum hwmon_sensor_types type ,
345571 u32 attr , int channel )
@@ -554,6 +780,10 @@ static const struct platform_device_id intel_m10bmc_hwmon_ids[] = {
554780 .name = "n5010bmc-hwmon" ,
555781 .driver_data = (unsigned long )& n5010bmc_hwmon_bdata ,
556782 },
783+ {
784+ .name = "n6010bmc-hwmon" ,
785+ .driver_data = (unsigned long )& n6010bmc_hwmon_bdata ,
786+ },
557787 { }
558788};
559789
0 commit comments