]> git.sur5r.net Git - groeck-it87/blobdiff - it87.c
Add preliminary support for IT8792E
[groeck-it87] / it87.c
diff --git a/it87.c b/it87.c
index f028820d55d7482e9bacd40ad2ceac8b17bfb381..df87ffaec0baee34d70f77077cdbf1368ed8951e 100644 (file)
--- a/it87.c
+++ b/it87.c
@@ -32,6 +32,7 @@
  *            IT8783E/F Super I/O chip w/LPC interface
  *            IT8786E  Super I/O chip w/LPC interface
  *            IT8790E  Super I/O chip w/LPC interface
+ *            IT8792E  Super I/O chip w/LPC interface
  *            Sis950   A clone of the IT8705F
  *
  *  Copyright (C) 2001 Chris Gauthron
@@ -71,8 +72,8 @@
 #define DRVNAME "it87"
 
 enum chips { it87, it8712, it8716, it8718, it8720, it8721, it8728, it8732,
-            it8771, it8772, it8781, it8782, it8783, it8786, it8790, it8603,
-            it8620, it8622, it8628 };
+            it8771, it8772, it8781, it8782, it8783, it8786, it8790,
+            it8792, it8603, it8620, it8622, it8628 };
 
 static unsigned short force_id;
 module_param(force_id, ushort, 0);
@@ -153,6 +154,7 @@ static inline void superio_exit(int ioreg)
 #define IT8726F_DEVID 0x8726
 #define IT8728F_DEVID 0x8728
 #define IT8732F_DEVID 0x8732
+#define IT8792E_DEVID 0x8733
 #define IT8771E_DEVID 0x8771
 #define IT8772E_DEVID 0x8772
 #define IT8781F_DEVID 0x8781
@@ -424,6 +426,15 @@ static const struct it87_devices it87_devices[] = {
                  | FEAT_PWM_FREQ2,
                .peci_mask = 0x07,
        },
+       [it8792] = {
+               .name = "it8792",
+               .suffix = "E",
+               .features = FEAT_NEWER_AUTOPWM | FEAT_16BIT_FANS
+                 | FEAT_TEMP_OFFSET | FEAT_TEMP_OLD_PECI | FEAT_TEMP_PECI
+                 | FEAT_10_9MV_ADC | FEAT_IN7_INTERNAL,
+               .peci_mask = 0x07,
+               .old_peci_mask = 0x02,  /* Actually reports PCH */
+       },
        [it8603] = {
                .name = "it8603",
                .suffix = "E",
@@ -2409,6 +2420,9 @@ static int __init it87_find(int sioaddr, unsigned short *address,
        case IT8732F_DEVID:
                sio_data->type = it8732;
                break;
+       case IT8792E_DEVID:
+               sio_data->type = it8792;
+               break;
        case IT8771E_DEVID:
                sio_data->type = it8771;
                break;