ide: move ->lock and ->timer init from init_irq() to ide_init_port_data()
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 24 Mar 2009 22:22:39 +0000 (23:22 +0100)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Tue, 24 Mar 2009 22:22:39 +0000 (23:22 +0100)
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-probe.c

index eebd4ed29062120f6cba0b4a0ddcc02cfb04df31..63f67e3c2555d69906b94e9e624b629f99bf53bf 100644 (file)
@@ -941,11 +941,6 @@ static int init_irq (ide_hwif_t *hwif)
        int sa = 0;
 
        mutex_lock(&ide_cfg_mtx);
-       spin_lock_init(&hwif->lock);
-
-       init_timer(&hwif->timer);
-       hwif->timer.function = &ide_timer_expiry;
-       hwif->timer.data = (unsigned long)hwif;
 
        irq_handler = hwif->host->irq_handler;
        if (irq_handler == NULL)
@@ -1306,6 +1301,12 @@ static void ide_init_port_data(ide_hwif_t *hwif, unsigned int index)
        hwif->name[2]   = 'e';
        hwif->name[3]   = '0' + index;
 
+       spin_lock_init(&hwif->lock);
+
+       init_timer(&hwif->timer);
+       hwif->timer.function = &ide_timer_expiry;
+       hwif->timer.data = (unsigned long)hwif;
+
        init_completion(&hwif->gendev_rel_comp);
 
        hwif->tp_ops = &default_tp_ops;