The patch titled
Fix AMD MIPS Alchemy au1550 I2C interface
has been removed from the -mm tree. Its filename was
fix-amd-mips-alchemy-au1550-i2c-interface.patch
This patch was dropped because it was merged into mainline or a subsystem tree
------------------------------------------------------
Subject: Fix AMD MIPS Alchemy au1550 I2C interface
From: "Chris David" <[EMAIL PROTECTED]>
Fix a problem on the AMD MIPS Alchemy au1550 I2C interface. The PSC
(programmable serial controller) seem to 'hang' when I sent only an
'address' byte on the I2C bus. The patch essentially uses the PSC_SMBSTAT
register's TE (transmit FIFO empty) bit to check when the transmit FIFO is
empty, instead of using the PSC_SMBEVNT register's TU (transmit underflow)
bit. Using the TE bit fixed the hang problem.
Cc: Jean Delvare <[EMAIL PROTECTED]>
Cc: Domen Puncer <[EMAIL PROTECTED]>
Cc: Ralf Baechle <[EMAIL PROTECTED]>
Cc: Jordan Crouse <[EMAIL PROTECTED]>
Signed-off-by: Andrew Morton <[EMAIL PROTECTED]>
---
drivers/i2c/busses/i2c-au1550.c | 11 ++++-------
1 file changed, 4 insertions(+), 7 deletions(-)
diff -puN
drivers/i2c/busses/i2c-au1550.c~fix-amd-mips-alchemy-au1550-i2c-interface
drivers/i2c/busses/i2c-au1550.c
--- a/drivers/i2c/busses/i2c-au1550.c~fix-amd-mips-alchemy-au1550-i2c-interface
+++ a/drivers/i2c/busses/i2c-au1550.c
@@ -48,17 +48,14 @@ wait_xfer_done(struct i2c_au1550_data *a
sp = (volatile psc_smb_t *)(adap->psc_base);
- /* Wait for Tx FIFO Underflow.
+ /* Wait for Tx Buffer Empty
*/
for (i = 0; i < adap->xfer_timeout; i++) {
- stat = sp->psc_smbevnt;
+ stat = sp->psc_smbstat;
au_sync();
- if ((stat & PSC_SMBEVNT_TU) != 0) {
- /* Clear it. */
- sp->psc_smbevnt = PSC_SMBEVNT_TU;
- au_sync();
+ if ((stat & PSC_SMBSTAT_TE) != 0)
return 0;
- }
+
udelay(1);
}
_
Patches currently in -mm which might be from [EMAIL PROTECTED] are
-
To unsubscribe from this list: send the line "unsubscribe mm-commits" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at http://vger.kernel.org/majordomo-info.html