瀏覽代碼

i2c-viapro: Add VX800/VX820 support

Thanks to new datasheets published on http://linux.via.com.tw we can now add 
support for VX800/VX820 chipsets.

Signed-off-by: Rudolf Marek <r.marek@assembler.cz>
Signed-off-by: Jean Delvare <khali@linux-fr.org>
Rudolf Marek 17 年之前
父節點
當前提交
b806a71a0e
共有 3 個文件被更改,包括 13 次插入3 次删除
  1. 6 2
      Documentation/i2c/busses/i2c-viapro
  2. 3 1
      drivers/i2c/busses/Kconfig
  3. 4 0
      drivers/i2c/busses/i2c-viapro.c

+ 6 - 2
Documentation/i2c/busses/i2c-viapro

@@ -16,6 +16,9 @@ Supported adapters:
   * VIA Technologies, Inc. CX700
   * VIA Technologies, Inc. CX700
     Datasheet: available on request and under NDA from VIA
     Datasheet: available on request and under NDA from VIA
 
 
+  * VIA Technologies, Inc. VX800/VX820
+    Datasheet: available on http://linux.via.com.tw
+
 Authors:
 Authors:
 	Kyösti Mälkki <kmalkki@cc.hut.fi>,
 	Kyösti Mälkki <kmalkki@cc.hut.fi>,
 	Mark D. Studebaker <mdsxyz123@yahoo.com>,
 	Mark D. Studebaker <mdsxyz123@yahoo.com>,
@@ -49,6 +52,7 @@ Your lspci -n listing must show one of these :
  device 1106:3372   (VT8237S)
  device 1106:3372   (VT8237S)
  device 1106:3287   (VT8251)
  device 1106:3287   (VT8251)
  device 1106:8324   (CX700)
  device 1106:8324   (CX700)
+ device 1106:8353   (VX800/VX820)
 
 
 If none of these show up, you should look in the BIOS for settings like
 If none of these show up, you should look in the BIOS for settings like
 enable ACPI / SMBus or even USB.
 enable ACPI / SMBus or even USB.
@@ -57,5 +61,5 @@ Except for the oldest chips (VT82C596A/B, VT82C686A and most probably
 VT8231), this driver supports I2C block transactions. Such transactions
 VT8231), this driver supports I2C block transactions. Such transactions
 are mainly useful to read from and write to EEPROMs.
 are mainly useful to read from and write to EEPROMs.
 
 
-The CX700 additionally appears to support SMBus PEC, although this driver
-doesn't implement it yet.
+The CX700/VX800/VX820 additionally appears to support SMBus PEC, although
+this driver doesn't implement it yet.

+ 3 - 1
drivers/i2c/busses/Kconfig

@@ -209,7 +209,7 @@ config I2C_VIA
 	  will be called i2c-via.
 	  will be called i2c-via.
 
 
 config I2C_VIAPRO
 config I2C_VIAPRO
-	tristate "VIA VT82C596/82C686/82xx and CX700"
+	tristate "VIA VT82C596/82C686/82xx and CX700/VX800/VX820"
 	depends on PCI
 	depends on PCI
 	help
 	help
 	  If you say yes to this option, support will be included for the VIA
 	  If you say yes to this option, support will be included for the VIA
@@ -223,6 +223,8 @@ config I2C_VIAPRO
 	    VT8237R/A/S
 	    VT8237R/A/S
 	    VT8251
 	    VT8251
 	    CX700
 	    CX700
+	    VX800
+	    VX820
 
 
 	  This driver can also be built as a module.  If so, the module
 	  This driver can also be built as a module.  If so, the module
 	  will be called i2c-viapro.
 	  will be called i2c-viapro.

+ 4 - 0
drivers/i2c/busses/i2c-viapro.c

@@ -36,6 +36,7 @@
    VT8237S            0x3372             yes
    VT8237S            0x3372             yes
    VT8251             0x3287             yes
    VT8251             0x3287             yes
    CX700              0x8324             yes
    CX700              0x8324             yes
+   VX800/VX820        0x8353             yes
 
 
    Note: we assume there can only be one device, with one SMBus interface.
    Note: we assume there can only be one device, with one SMBus interface.
 */
 */
@@ -396,6 +397,7 @@ found:
 
 
 	switch (pdev->device) {
 	switch (pdev->device) {
 	case PCI_DEVICE_ID_VIA_CX700:
 	case PCI_DEVICE_ID_VIA_CX700:
+	case PCI_DEVICE_ID_VIA_VX800:
 	case PCI_DEVICE_ID_VIA_8251:
 	case PCI_DEVICE_ID_VIA_8251:
 	case PCI_DEVICE_ID_VIA_8237:
 	case PCI_DEVICE_ID_VIA_8237:
 	case PCI_DEVICE_ID_VIA_8237A:
 	case PCI_DEVICE_ID_VIA_8237A:
@@ -459,6 +461,8 @@ static struct pci_device_id vt596_ids[] = {
 	  .driver_data = SMBBA3 },
 	  .driver_data = SMBBA3 },
 	{ PCI_DEVICE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_CX700),
 	{ PCI_DEVICE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_CX700),
 	  .driver_data = SMBBA3 },
 	  .driver_data = SMBBA3 },
+	{ PCI_DEVICE(PCI_VENDOR_ID_VIA, PCI_DEVICE_ID_VIA_VX800),
+	  .driver_data = SMBBA3 },
 	{ 0, }
 	{ 0, }
 };
 };