tree efaa703103f650da42d072d7c517a33839d68baf
parent d95a1b4818f2fe38a3cfc9a7d5817dc9a1a69329
author Christoph Hellwig <[EMAIL PROTECTED]> Thu, 04 Aug 2005 21:05:37 -0700
committer David S. Miller <[EMAIL PROTECTED]> Thu, 04 Aug 2005 21:05:37 -0700

[SPARC]: Fix up sleep_on() removal in vfc driver.

Signed-off-by: Christoph Hellwig <[EMAIL PROTECTED]>
Signed-off-by: David S. Miller <[EMAIL PROTECTED]>

 drivers/sbus/char/vfc.h     |    2 --
 drivers/sbus/char/vfc_dev.c |    1 -
 drivers/sbus/char/vfc_i2c.c |   19 ++-----------------
 3 files changed, 2 insertions(+), 20 deletions(-)

diff --git a/drivers/sbus/char/vfc.h b/drivers/sbus/char/vfc.h
--- a/drivers/sbus/char/vfc.h
+++ b/drivers/sbus/char/vfc.h
@@ -129,8 +129,6 @@ struct vfc_dev {
        struct vfc_regs *phys_regs;
        unsigned int control_reg;
        struct semaphore device_lock_sem;
-       struct timer_list poll_timer;
-       wait_queue_head_t poll_wait;
        int instance;
        int busy;
        unsigned long which_io;
diff --git a/drivers/sbus/char/vfc_dev.c b/drivers/sbus/char/vfc_dev.c
--- a/drivers/sbus/char/vfc_dev.c
+++ b/drivers/sbus/char/vfc_dev.c
@@ -137,7 +137,6 @@ int init_vfc_devstruct(struct vfc_dev *d
        dev->instance=instance;
        init_MUTEX(&dev->device_lock_sem);
        dev->control_reg=0;
-       init_waitqueue_head(&dev->poll_wait);
        dev->busy=0;
        return 0;
 }
diff --git a/drivers/sbus/char/vfc_i2c.c b/drivers/sbus/char/vfc_i2c.c
--- a/drivers/sbus/char/vfc_i2c.c
+++ b/drivers/sbus/char/vfc_i2c.c
@@ -79,25 +79,10 @@ 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) 
 {
-       DEFINE_WAIT(wait);
-       init_timer(&dev->poll_timer);
-       dev->poll_timer.expires = jiffies + usecs_to_jiffies(usecs);
-       dev->poll_timer.data=(unsigned long)dev;
-       dev->poll_timer.function=(void *)(unsigned long)vfc_i2c_delay_wakeup;
-       add_timer(&dev->poll_timer);
-       prepare_to_wait(&dev->poll_wait, &wait, TASK_UNINTERRUPTIBLE);
-       schedule();
-       del_timer(&dev->poll_timer);
-       finish_wait(&dev->poll_wait, &wait);
+       set_current_state(TASK_UNINTERRUPTIBLE);
+       schedule_timeout(usecs_to_jiffies(usecs));
 }
 
 void inline vfc_i2c_delay(struct vfc_dev *dev) 
-
To unsubscribe from this list: send the line "unsubscribe git-commits-head" in
the body of a message to [EMAIL PROTECTED]
More majordomo info at  http://vger.kernel.org/majordomo-info.html

Reply via email to