提交 099ce8f4 编写于 作者: L Linus Torvalds

Merge branch 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6

* 'i2c-for-linus' of git://jdelvare.pck.nerim.net/jdelvare-2.6:
  i2c-tiny-usb: New VID/PID pair
  i2c-davinci: Fix lost interrupt
  i2c-ibm_iic: Fast mode parm desc fixup
...@@ -382,9 +382,8 @@ static irqreturn_t i2c_davinci_isr(int this_irq, void *dev_id) ...@@ -382,9 +382,8 @@ static irqreturn_t i2c_davinci_isr(int this_irq, void *dev_id)
break; break;
case DAVINCI_I2C_IVR_ARDY: case DAVINCI_I2C_IVR_ARDY:
w = davinci_i2c_read_reg(dev, DAVINCI_I2C_STR_REG); davinci_i2c_write_reg(dev,
MOD_REG_BIT(w, DAVINCI_I2C_STR_ARDY, 1); DAVINCI_I2C_STR_REG, DAVINCI_I2C_STR_ARDY);
davinci_i2c_write_reg(dev, DAVINCI_I2C_STR_REG, w);
complete(&dev->cmd_complete); complete(&dev->cmd_complete);
break; break;
...@@ -397,12 +396,9 @@ static irqreturn_t i2c_davinci_isr(int this_irq, void *dev_id) ...@@ -397,12 +396,9 @@ static irqreturn_t i2c_davinci_isr(int this_irq, void *dev_id)
if (dev->buf_len) if (dev->buf_len)
continue; continue;
w = davinci_i2c_read_reg(dev,
DAVINCI_I2C_STR_REG);
MOD_REG_BIT(w, DAVINCI_I2C_IMR_RRDY, 0);
davinci_i2c_write_reg(dev, davinci_i2c_write_reg(dev,
DAVINCI_I2C_STR_REG, DAVINCI_I2C_STR_REG,
w); DAVINCI_I2C_IMR_RRDY);
} else } else
dev_err(dev->dev, "RDR IRQ while no " dev_err(dev->dev, "RDR IRQ while no "
"data requested\n"); "data requested\n");
...@@ -428,9 +424,8 @@ static irqreturn_t i2c_davinci_isr(int this_irq, void *dev_id) ...@@ -428,9 +424,8 @@ static irqreturn_t i2c_davinci_isr(int this_irq, void *dev_id)
break; break;
case DAVINCI_I2C_IVR_SCD: case DAVINCI_I2C_IVR_SCD:
w = davinci_i2c_read_reg(dev, DAVINCI_I2C_STR_REG); davinci_i2c_write_reg(dev,
MOD_REG_BIT(w, DAVINCI_I2C_STR_SCD, 1); DAVINCI_I2C_STR_REG, DAVINCI_I2C_STR_SCD);
davinci_i2c_write_reg(dev, DAVINCI_I2C_STR_REG, w);
complete(&dev->cmd_complete); complete(&dev->cmd_complete);
break; break;
......
...@@ -55,7 +55,7 @@ MODULE_PARM_DESC(iic_force_poll, "Force polling mode"); ...@@ -55,7 +55,7 @@ MODULE_PARM_DESC(iic_force_poll, "Force polling mode");
static int iic_force_fast; static int iic_force_fast;
module_param(iic_force_fast, bool, 0); module_param(iic_force_fast, bool, 0);
MODULE_PARM_DESC(iic_fast_poll, "Force fast mode (400 kHz)"); MODULE_PARM_DESC(iic_force_fast, "Force fast mode (400 kHz)");
#define DBG_LEVEL 0 #define DBG_LEVEL 0
......
...@@ -131,11 +131,15 @@ static const struct i2c_algorithm usb_algorithm = { ...@@ -131,11 +131,15 @@ static const struct i2c_algorithm usb_algorithm = {
/* ----- begin of usb layer ---------------------------------------------- */ /* ----- begin of usb layer ---------------------------------------------- */
/* The usb i2c interface uses a vid/pid pair donated by */ /*
/* Future Technology Devices International Ltd. */ * Initially the usb i2c interface uses a vid/pid pair donated by
* Future Technology Devices International Ltd., later a pair was
* bought from EZPrototypes
*/
static struct usb_device_id i2c_tiny_usb_table [] = { static struct usb_device_id i2c_tiny_usb_table [] = {
{ USB_DEVICE(0x0403, 0xc631) }, { USB_DEVICE(0x0403, 0xc631) }, /* FTDI */
{ } /* Terminating entry */ { USB_DEVICE(0x1c40, 0x0534) }, /* EZPrototypes */
{ } /* Terminating entry */
}; };
MODULE_DEVICE_TABLE(usb, i2c_tiny_usb_table); MODULE_DEVICE_TABLE(usb, i2c_tiny_usb_table);
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册