lkml.org 
[lkml]   [2003]   [Dec]   [30]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
SubjectRe: [PATCH] i2c driver fixes for 2.6.0
Date
From
ChangeSet 1.1496.23.2, 2003/12/19 11:37:00-08:00, trini@kernel.crashing.org

[PATCH] I2C: make i2c-piix4 fix optional

On Thu, Dec 18, 2003 at 10:26:40AM -0800, Greg KH wrote:


drivers/i2c/busses/i2c-piix4.c | 21 ++++++++++++++++++---
1 files changed, 18 insertions(+), 3 deletions(-)


diff -Nru a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c
--- a/drivers/i2c/busses/i2c-piix4.c Tue Dec 30 12:29:37 2003
+++ b/drivers/i2c/busses/i2c-piix4.c Tue Dec 30 12:29:37 2003
@@ -99,6 +99,13 @@
"Forcibly enable the PIIX4 at the given address. "
"EXTREMELY DANGEROUS!");

+/* If fix_hstcfg is set to anything different from 0, we reset one of the
+ registers to be a valid value. */
+static int fix_hstcfg = 0;
+MODULE_PARM(fix_hstcfg, "i");
+MODULE_PARM_DESC(fix_hstcfg,
+ "Fix config register. Needed on some boards (Force CPCI735).");
+
static int piix4_transaction(void);


@@ -164,9 +171,17 @@
/* Some BIOS will set up the chipset incorrectly and leave a register
in an undefined state (causing I2C to act very strangely). */
if (temp & 0x02) {
- dev_info(&PIIX4_dev->dev, "Worked around buggy BIOS (I2C)\n");
- temp = temp & 0xfd;
- pci_write_config_byte(PIIX4_dev, SMBHSTCFG, temp);
+ if (fix_hstcfg) {
+ dev_info(&PIIX4_dev->dev, "Working around buggy BIOS "
+ "(I2C)\n");
+ temp &= 0xfd;
+ pci_write_config_byte(PIIX4_dev, SMBHSTCFG, temp);
+ } else {
+ dev_info(&PIIX4_dev->dev, "Unusual config register "
+ "value\n");
+ dev_info(&PIIX4_dev->dev, "Try using fix_hstcfg=1 if "
+ "you experience problems\n");
+ }
}

/* If force_addr is set, we program the new address here. Just to make
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/

\
 
 \ /
  Last update: 2005-03-22 13:59    [W:0.047 / U:0.572 seconds]
©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site