]> err.no Git - linux-2.6/blobdiff - drivers/ide/legacy/ht6560b.c
Merge branch 'for-linus' of git://neil.brown.name/md
[linux-2.6] / drivers / ide / legacy / ht6560b.c
index dd6dfb32e85303b4342be96afddddd4584cf33f4..7bc8fd59ea9ee336dbcab2a5981c0bf696df6401 100644 (file)
@@ -216,6 +216,7 @@ static u8 ht_pio2timings(ide_drive_t *drive, const u8 pio)
 
         if (pio) {
                unsigned int cycle_time;
+               struct ide_timing *t = ide_timing_find_mode(XFER_PIO_0 + pio);
 
                cycle_time = ide_pio_cycle_time(drive, pio);
 
@@ -224,10 +225,8 @@ static u8 ht_pio2timings(ide_drive_t *drive, const u8 pio)
                 *  actual cycle time for recovery and activity
                 *  according system bus speed.
                 */
-               active_time = ide_pio_timings[pio].active_time;
-               recovery_time = cycle_time
-                       - active_time
-                       - ide_pio_timings[pio].setup_time;
+               active_time = t->active;
+               recovery_time = cycle_time - active_time - t->setup;
                /*
                 *  Cycle times should be Vesa bus cycles
                 */
@@ -311,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;
@@ -329,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,
 };