ChangeSet 1.1750, 2004/05/18 16:00:39-07:00, greg@kroah.com I2C: change i2c_delay() to use msleep() instead. drivers/i2c/busses/i2c-ali1535.c | 5 +++-- drivers/i2c/busses/i2c-ali1563.c | 5 +++-- drivers/i2c/busses/i2c-ali15x3.c | 5 +++-- drivers/i2c/busses/i2c-amd756.c | 7 ++++--- drivers/i2c/busses/i2c-amd8111.c | 2 +- drivers/i2c/busses/i2c-i801.c | 7 ++++--- drivers/i2c/busses/i2c-piix4.c | 3 ++- drivers/i2c/busses/i2c-sis5595.c | 3 ++- drivers/i2c/busses/i2c-sis630.c | 3 ++- drivers/i2c/busses/i2c-sis96x.c | 3 ++- drivers/i2c/busses/i2c-viapro.c | 3 ++- drivers/i2c/chips/w83l785ts.c | 3 ++- include/linux/i2c.h | 7 ------- 13 files changed, 30 insertions(+), 26 deletions(-) diff -Nru a/drivers/i2c/busses/i2c-ali1535.c b/drivers/i2c/busses/i2c-ali1535.c --- a/drivers/i2c/busses/i2c-ali1535.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-ali1535.c Tue May 18 17:04:53 2004 @@ -59,6 +59,7 @@ #include #include #include +#include #include #include #include @@ -276,7 +277,7 @@ /* We will always wait for a fraction of a second! */ timeout = 0; do { - i2c_delay(1); + msleep(1); temp = inb_p(SMBHSTSTS); } while (((temp & ALI1535_STS_BUSY) && !(temp & ALI1535_STS_IDLE)) && (timeout++ < MAX_TIMEOUT)); @@ -350,7 +351,7 @@ for (timeout = 0; (timeout < MAX_TIMEOUT) && !(temp & ALI1535_STS_IDLE); timeout++) { - i2c_delay(1); + msleep(1); temp = inb_p(SMBHSTSTS); } if (timeout >= MAX_TIMEOUT) diff -Nru a/drivers/i2c/busses/i2c-ali1563.c b/drivers/i2c/busses/i2c-ali1563.c --- a/drivers/i2c/busses/i2c-ali1563.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-ali1563.c Tue May 18 17:04:53 2004 @@ -16,6 +16,7 @@ */ #include +#include #include #include #include @@ -82,7 +83,7 @@ timeout = ALI1563_MAX_TIMEOUT; do - i2c_delay(1); + msleep(1); while (((data = inb_p(SMB_HST_STS)) & HST_STS_BUSY) && --timeout); dev_dbg(&a->dev, "Transaction (post): STS=%02x, CNTL1=%02x, " @@ -137,7 +138,7 @@ timeout = ALI1563_MAX_TIMEOUT; do - i2c_delay(1); + msleep(1); while (!((data = inb_p(SMB_HST_STS)) & HST_STS_DONE) && --timeout); dev_dbg(&a->dev, "Block (post): STS=%02x, CNTL1=%02x, " diff -Nru a/drivers/i2c/busses/i2c-ali15x3.c b/drivers/i2c/busses/i2c-ali15x3.c --- a/drivers/i2c/busses/i2c-ali15x3.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-ali15x3.c Tue May 18 17:04:53 2004 @@ -67,6 +67,7 @@ #include #include #include +#include #include #include #include @@ -296,7 +297,7 @@ /* We will always wait for a fraction of a second! */ timeout = 0; do { - i2c_delay(1); + msleep(1); temp = inb_p(SMBHSTSTS); } while ((!(temp & (ALI15X3_STS_ERR | ALI15X3_STS_DONE))) && (timeout++ < MAX_TIMEOUT)); @@ -353,7 +354,7 @@ for (timeout = 0; (timeout < MAX_TIMEOUT) && !(temp & ALI15X3_STS_IDLE); timeout++) { - i2c_delay(1); + msleep(1); temp = inb_p(SMBHSTSTS); } if (timeout >= MAX_TIMEOUT) { diff -Nru a/drivers/i2c/busses/i2c-amd756.c b/drivers/i2c/busses/i2c-amd756.c --- a/drivers/i2c/busses/i2c-amd756.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-amd756.c Tue May 18 17:04:53 2004 @@ -41,6 +41,7 @@ #include #include #include +#include #include #include #include @@ -124,7 +125,7 @@ if ((temp = inw_p(SMB_GLOBAL_STATUS)) & (GS_HST_STS | GS_SMB_STS)) { dev_dbg(&adap->dev, ": SMBus busy (%04x). Waiting... \n", temp); do { - i2c_delay(1); + msleep(1); temp = inw_p(SMB_GLOBAL_STATUS); } while ((temp & (GS_HST_STS | GS_SMB_STS)) && (timeout++ < MAX_TIMEOUT)); @@ -141,7 +142,7 @@ /* We will always wait for a fraction of a second! */ do { - i2c_delay(1); + msleep(1); temp = inw_p(SMB_GLOBAL_STATUS); } while ((temp & GS_HST_STS) && (timeout++ < MAX_TIMEOUT)); @@ -188,7 +189,7 @@ abort: dev_warn(&adap->dev, ": Sending abort.\n"); outw_p(inw(SMB_GLOBAL_ENABLE) | GE_ABORT, SMB_GLOBAL_ENABLE); - i2c_delay(100); + msleep(100); outw_p(GS_CLEAR_STS, SMB_GLOBAL_STATUS); return -1; } diff -Nru a/drivers/i2c/busses/i2c-amd8111.c b/drivers/i2c/busses/i2c-amd8111.c --- a/drivers/i2c/busses/i2c-amd8111.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-amd8111.c Tue May 18 17:04:53 2004 @@ -276,7 +276,7 @@ } if (~temp[0] & AMD_SMB_STS_DONE) { - i2c_delay(HZ/100); + msleep(1); amd_ec_read(smbus, AMD_SMB_STS, temp + 0); } diff -Nru a/drivers/i2c/busses/i2c-i801.c b/drivers/i2c/busses/i2c-i801.c --- a/drivers/i2c/busses/i2c-i801.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-i801.c Tue May 18 17:04:53 2004 @@ -44,6 +44,7 @@ #include #include #include +#include #include #include #include @@ -207,7 +208,7 @@ /* We will always wait for a fraction of a second! */ do { - i2c_delay(1); + msleep(1); temp = inb_p(SMBHSTSTS); } while ((temp & 0x01) && (timeout++ < MAX_TIMEOUT)); @@ -335,7 +336,7 @@ timeout = 0; do { temp = inb_p(SMBHSTSTS); - i2c_delay(1); + msleep(1); } while ((!(temp & 0x80)) && (timeout++ < MAX_TIMEOUT)); @@ -395,7 +396,7 @@ timeout = 0; do { temp = inb_p(SMBHSTSTS); - i2c_delay(1); + msleep(1); } while ((!(temp & 0x02)) && (timeout++ < MAX_TIMEOUT)); diff -Nru a/drivers/i2c/busses/i2c-piix4.c b/drivers/i2c/busses/i2c-piix4.c --- a/drivers/i2c/busses/i2c-piix4.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-piix4.c Tue May 18 17:04:53 2004 @@ -33,6 +33,7 @@ #include #include #include +#include #include #include #include @@ -260,7 +261,7 @@ /* We will always wait for a fraction of a second! (See PIIX4 docs errata) */ do { - i2c_delay(1); + msleep(1); temp = inb_p(SMBHSTSTS); } while ((temp & 0x01) && (timeout++ < MAX_TIMEOUT)); diff -Nru a/drivers/i2c/busses/i2c-sis5595.c b/drivers/i2c/busses/i2c-sis5595.c --- a/drivers/i2c/busses/i2c-sis5595.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-sis5595.c Tue May 18 17:04:53 2004 @@ -58,6 +58,7 @@ #include #include #include +#include #include #include #include @@ -239,7 +240,7 @@ /* We will always wait for a fraction of a second! */ do { - i2c_delay(1); + msleep(1); temp = sis5595_read(SMB_STS_LO); } while (!(temp & 0x40) && (timeout++ < MAX_TIMEOUT)); diff -Nru a/drivers/i2c/busses/i2c-sis630.c b/drivers/i2c/busses/i2c-sis630.c --- a/drivers/i2c/busses/i2c-sis630.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-sis630.c Tue May 18 17:04:53 2004 @@ -51,6 +51,7 @@ #include #include #include +#include #include #include #include @@ -165,7 +166,7 @@ /* We will always wait for a fraction of a second! */ do { - i2c_delay(1); + msleep(1); temp = sis630_read(SMB_STS); /* check if block transmitted */ if (size == SIS630_BLOCK_DATA && (temp & 0x10)) diff -Nru a/drivers/i2c/busses/i2c-sis96x.c b/drivers/i2c/busses/i2c-sis96x.c --- a/drivers/i2c/busses/i2c-sis96x.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-sis96x.c Tue May 18 17:04:53 2004 @@ -36,6 +36,7 @@ #include #include #include +#include #include #include #include @@ -139,7 +140,7 @@ /* We will always wait for a fraction of a second! */ do { - i2c_delay(1); + msleep(1); temp = sis96x_read(SMB_STS); } while (!(temp & 0x0e) && (timeout++ < MAX_TIMEOUT)); diff -Nru a/drivers/i2c/busses/i2c-viapro.c b/drivers/i2c/busses/i2c-viapro.c --- a/drivers/i2c/busses/i2c-viapro.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/busses/i2c-viapro.c Tue May 18 17:04:53 2004 @@ -35,6 +35,7 @@ #include #include +#include #include #include #include @@ -138,7 +139,7 @@ /* We will always wait for a fraction of a second! I don't know if VIA needs this, Intel did */ do { - i2c_delay(1); + msleep(1); temp = inb_p(SMBHSTSTS); } while ((temp & 0x01) && (timeout++ < MAX_TIMEOUT)); diff -Nru a/drivers/i2c/chips/w83l785ts.c b/drivers/i2c/chips/w83l785ts.c --- a/drivers/i2c/chips/w83l785ts.c Tue May 18 17:04:53 2004 +++ b/drivers/i2c/chips/w83l785ts.c Tue May 18 17:04:53 2004 @@ -32,6 +32,7 @@ #include #include +#include #include #include #include @@ -284,7 +285,7 @@ if (value >= 0) return value; dev_dbg(&client->dev, "Read failed, will retry in %d.\n", i); - i2c_delay(i); + msleep(i); } dev_err(&client->dev, "Couldn't read value from register. " diff -Nru a/include/linux/i2c.h b/include/linux/i2c.h --- a/include/linux/i2c.h Tue May 18 17:04:53 2004 +++ b/include/linux/i2c.h Tue May 18 17:04:53 2004 @@ -601,11 +601,4 @@ #define i2c_is_isa_adapter(adapptr) \ ((adapptr)->algo->id == I2C_ALGO_ISA) -/* Tiny delay function used by the i2c bus drivers */ -static inline void i2c_delay(signed long timeout) -{ - set_current_state(TASK_INTERRUPTIBLE); - schedule_timeout(timeout); -} - #endif /* _LINUX_I2C_H */