X-Git-Url: http://git.onelab.eu/?a=blobdiff_plain;ds=sidebyside;f=drivers%2Fsbus%2Fchar%2Fvfc_i2c.c;fp=drivers%2Fsbus%2Fchar%2Fvfc_i2c.c;h=ceec30648f4f65edd8f336536a28f79bdd2c1d4d;hb=43bc926fffd92024b46cafaf7350d669ba9ca884;hp=95e3cebf792cf8775a1437b884c4bfdf5808e063;hpb=cee37fe97739d85991964371c1f3a745c00dd236;p=linux-2.6.git diff --git a/drivers/sbus/char/vfc_i2c.c b/drivers/sbus/char/vfc_i2c.c index 95e3cebf7..ceec30648 100644 --- a/drivers/sbus/char/vfc_i2c.c +++ b/drivers/sbus/char/vfc_i2c.c @@ -79,23 +79,9 @@ int vfc_pcf8584_init(struct vfc_dev *dev) return 0; } -void vfc_i2c_delay_wakeup(struct vfc_dev *dev) -{ - /* Used to profile code and eliminate too many delays */ - VFC_I2C_DEBUG_PRINTK(("vfc%d: Delaying\n", dev->instance)); - wake_up(&dev->poll_wait); -} - void vfc_i2c_delay_no_busy(struct vfc_dev *dev, unsigned long usecs) { - init_timer(&dev->poll_timer); - dev->poll_timer.expires = jiffies + - ((unsigned long)usecs*(HZ))/1000000; - dev->poll_timer.data=(unsigned long)dev; - dev->poll_timer.function=(void *)(unsigned long)vfc_i2c_delay_wakeup; - add_timer(&dev->poll_timer); - sleep_on(&dev->poll_wait); - del_timer(&dev->poll_timer); + schedule_timeout_uninterruptible(usecs_to_jiffies(usecs)); } void inline vfc_i2c_delay(struct vfc_dev *dev)