ide: ->port_init_devs -> ->init_dev
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Wed, 16 Jul 2008 18:33:42 +0000 (20:33 +0200)
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Wed, 16 Jul 2008 18:33:42 +0000 (20:33 +0200)
Change ->port_init_devs method to take 'ide_drive_t *' as an argument
instead of 'ide_hwif_t *' and rename it to ->init_dev.

There should be no functional changes caused by this patch.

Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
drivers/ide/ide-probe.c
drivers/ide/legacy/ht6560b.c
drivers/ide/legacy/ide-4drives.c
drivers/ide/legacy/qd65xx.c
include/linux/ide.h

index 97dda05914a1cd7018accc5190fdb98489021bd1..c5dc188493035e8553e65c51e260ffc32375a847 100644 (file)
@@ -1320,10 +1320,10 @@ static void ide_port_init_devices(ide_hwif_t *hwif)
                        drive->unmask = 1;
                if (hwif->host_flags & IDE_HFLAG_NO_UNMASK_IRQS)
                        drive->no_unmask = 1;
-       }
 
-       if (port_ops && port_ops->port_init_devs)
-               port_ops->port_init_devs(hwif);
+               if (port_ops && port_ops->init_dev)
+                       port_ops->init_dev(drive);
+       }
 }
 
 static void ide_init_port(ide_hwif_t *hwif, unsigned int port,
index bd2f579946fa84efc80a1342d9e69386febc21f0..7bc8fd59ea9ee336dbcab2a5981c0bf696df6401 100644 (file)
@@ -310,16 +310,16 @@ static void ht6560b_set_pio_mode(ide_drive_t *drive, const u8 pio)
 #endif
 }
 
-static void __init ht6560b_port_init_devs(ide_hwif_t *hwif)
+static void __init ht6560b_init_dev(ide_drive_t *drive)
 {
+       ide_hwif_t *hwif = drive->hwif;
        /* Setting default configurations for drives. */
        int t = (HT_CONFIG_DEFAULT << 8) | HT_TIMING_DEFAULT;
 
        if (hwif->channel)
                t |= (HT_SECONDARY_IF << 8);
 
-       hwif->drives[0].drive_data = t;
-       hwif->drives[1].drive_data = t;
+       drive->drive_data = t;
 }
 
 static int probe_ht6560b;
@@ -328,7 +328,7 @@ module_param_named(probe, probe_ht6560b, bool, 0);
 MODULE_PARM_DESC(probe, "probe for HT6560B chipset");
 
 static const struct ide_port_ops ht6560b_port_ops = {
-       .port_init_devs         = ht6560b_port_init_devs,
+       .init_dev               = ht6560b_init_dev,
        .set_pio_mode           = ht6560b_set_pio_mode,
        .selectproc             = ht6560b_selectproc,
 };
index 5cd6ce537eea2f0b964301593b1e8d62f92cda7c..89c8ff0a4d085f81e89bffba2fc3ba12a89f97c2 100644 (file)
@@ -11,16 +11,14 @@ static int probe_4drives;
 module_param_named(probe, probe_4drives, bool, 0);
 MODULE_PARM_DESC(probe, "probe for generic IDE chipset with 4 drives/port");
 
-static void ide_4drives_port_init_devs(ide_hwif_t *hwif)
+static void ide_4drives_init_dev(ide_drive_t *drive)
 {
-       if (hwif->channel) {
-               hwif->drives[0].select.all ^= 0x20;
-               hwif->drives[1].select.all ^= 0x20;
-       }
+       if (drive->hwif->channel)
+               drive->select.all ^= 0x20;
 }
 
 static const struct ide_port_ops ide_4drives_port_ops = {
-       .port_init_devs         = ide_4drives_port_init_devs,
+       .init_dev               = ide_4drives_init_dev,
 };
 
 static const struct ide_port_info ide_4drives_port_info = {
index 63f6c31d16ea20eeebf03f387a26c0ff1d8ad124..2338f344ea243809b7fb5954d7e09e494303ada9 100644 (file)
@@ -282,17 +282,18 @@ static int __init qd_testreg(int port)
        return (readreg != QD_TESTVAL);
 }
 
-static void __init qd6500_port_init_devs(ide_hwif_t *hwif)
+static void __init qd6500_init_dev(ide_drive_t *drive)
 {
+       ide_hwif_t *hwif = drive->hwif;
        u8 base = (hwif->config_data & 0xff00) >> 8;
        u8 config = QD_CONFIG(hwif);
 
-       hwif->drives[0].drive_data = QD6500_DEF_DATA;
-       hwif->drives[1].drive_data = QD6500_DEF_DATA;
+       drive->drive_data = QD6500_DEF_DATA;
 }
 
-static void __init qd6580_port_init_devs(ide_hwif_t *hwif)
+static void __init qd6580_init_dev(ide_drive_t *drive)
 {
+       ide_hwif_t *hwif = drive->hwif;
        u16 t1, t2;
        u8 base = (hwif->config_data & 0xff00) >> 8;
        u8 config = QD_CONFIG(hwif);
@@ -303,18 +304,17 @@ static void __init qd6580_port_init_devs(ide_hwif_t *hwif)
        } else
                t2 = t1 = hwif->channel ? QD6580_DEF_DATA2 : QD6580_DEF_DATA;
 
-       hwif->drives[0].drive_data = t1;
-       hwif->drives[1].drive_data = t2;
+       drive->drive_data = drive->select.b.unit ? t2 : t1;
 }
 
 static const struct ide_port_ops qd6500_port_ops = {
-       .port_init_devs         = qd6500_port_init_devs,
+       .init_dev               = qd6500_init_dev,
        .set_pio_mode           = qd6500_set_pio_mode,
        .selectproc             = qd65xx_select,
 };
 
 static const struct ide_port_ops qd6580_port_ops = {
-       .port_init_devs         = qd6580_port_init_devs,
+       .init_dev               = qd6580_init_dev,
        .set_pio_mode           = qd6580_set_pio_mode,
        .selectproc             = qd65xx_select,
 };
index a6a2eccb65268c08d7bd0aea4c187155487a1891..f9cbe9350cadfab39e955073dfdfd44807c53908 100644 (file)
@@ -405,8 +405,8 @@ typedef struct ide_drive_s {
 struct ide_port_info;
 
 struct ide_port_ops {
-       /* host specific initialization of devices on a port */
-       void    (*port_init_devs)(struct hwif_s *);
+       /* host specific initialization of a device */
+       void    (*init_dev)(ide_drive_t *);
        /* routine to program host for PIO mode */
        void    (*set_pio_mode)(ide_drive_t *, const u8);
        /* routine to program host for DMA mode */