Re: [BK PATCH] i2c driver fixes for 2.6.0-test2

From: Mark M. Hoffman
Date: Thu Aug 14 2003 - 00:18:16 EST


This is a resend of a patch to the i2c-nforce2.c I2C bus driver.
The start of the relevant thread was here:
http://archives.andrew.net.au/lm-sensors/msg03820.html

[comment]
This patch restores a line that was wrongly removed. There are also some
trivial cleanups. It applies & compiles vs. 2.6.0-test3. It's untested
(no hardware here).
[/comment]

--- linux-2.6.0-test3/drivers/i2c/busses/i2c-nforce2.c.orig 2003-08-14 00:53:00.000000000 -0400
+++ linux-2.6.0-test3/drivers/i2c/busses/i2c-nforce2.c 2003-08-14 01:05:31.000000000 -0400
@@ -51,10 +51,6 @@
#ifndef PCI_DEVICE_ID_NVIDIA_NFORCE2_SMBUS
#define PCI_DEVICE_ID_NVIDIA_NFORCE2_SMBUS 0x0064
#endif
-/* TODO: sync with lm-sensors */
-#ifndef I2C_HW_SMBUS_NFORCE2
-#define I2C_HW_SMBUS_NFORCE2 0x0c
-#endif


struct nforce2_smbus {
@@ -128,20 +124,10 @@
.name = "unset",
};

-
-#if 0
-/* Internally used pause function */
-static void nforce2_do_pause(unsigned int amount)
-{
- current->state = TASK_INTERRUPTIBLE;
- schedule_timeout(amount);
-}
-#endif
-
/* Return -1 on error. See smbus.h for more information */
-static s32 nforce2_access(struct i2c_adapter * adap, u16 addr, unsigned short flags,
- char read_write, u8 command, int size,
- union i2c_smbus_data * data)
+static s32 nforce2_access(struct i2c_adapter * adap, u16 addr,
+ unsigned short flags, char read_write,
+ u8 command, int size, union i2c_smbus_data * data)
{
struct nforce2_smbus *smbus = adap->algo_data;
unsigned char protocol, pec, temp;
@@ -249,7 +235,7 @@

#if 0
do {
- nforce2_do_pause(1);
+ i2c_do_pause(1);
temp = inb_p(NVIDIA_SMB_STS);
} while (((temp & NVIDIA_SMB_STS_DONE) == 0) && (timeout++ < MAX_TIMEOUT));
#endif
@@ -332,13 +318,8 @@
smbus->base, smbus->base+smbus->size-1, name);
return -1;
}
-/*
- smbus->adapter.owner = THIS_MODULE;
- smbus->adapter.id = I2C_ALGO_SMBUS | I2C_HW_SMBUS_NFORCE2;
- smbus->adapter.algo = &smbus_algorithm;
- smbus->adapter.algo_data = smbus;
-*/
smbus->adapter = nforce2_adapter;
+ smbus->adapter.algo_data = smbus;
smbus->adapter.dev.parent = &dev->dev;
snprintf(smbus->adapter.name, DEVICE_NAME_SIZE,
"SMBus nForce2 adapter at %04x", smbus->base);

--
Mark M. Hoffman
mhoffman@xxxxxxxxxxxxx

-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/