aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux
diff options
context:
space:
mode:
authorBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-01-26 14:13:03 -0500
committerBartlomiej Zolnierkiewicz <bzolnier@gmail.com>2008-01-26 14:13:03 -0500
commitf01393e48c44e30f7c9a36c8b98a07b0232580fe (patch)
treed585310ef7ee6509285a96b849af2e544e5fea25 /include/linux
parent6dd9b8376adbee95ddc321cc83c7f641577e01f6 (diff)
ide: merge ->fixup and ->quirkproc methods
* Assign drive->quirk_list in ->quirkproc implementations: - hpt366.c::hpt3xx_quirkproc() - pdc202xx_new.c::pdcnew_quirkproc() - pdc202xx_old.c::pdc202xx_quirkproc() * Make ->quirkproc void. * Move calling ->quirkproc from do_identify() to probe_hwif(). * Convert it821x_fixups() to it821x_quirkproc() in it821x.c. * Convert siimage_fixup() to sil_quirkproc() in siimage.c, also remove no longer needed drive->present check from is_dev_seagate_sata(). * Convert ide_undecoded_slave() to accept 'drive' instead of 'hwif' as an argument. Then convert ide_register_hw() to accept 'quirkproc' argument instead of 'fixup' one. * Remove no longer needed ->fixup method. Acked-by: Sergei Shtylyov <sshtylyov@ru.mvista.com> Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'include/linux')
-rw-r--r--include/linux/ide.h10
1 files changed, 4 insertions, 6 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h
index ffb76d0d0814..dd50a5c5ec10 100644
--- a/include/linux/ide.h
+++ b/include/linux/ide.h
@@ -199,7 +199,8 @@ typedef struct hw_regs_s {
199 199
200struct hwif_s * ide_find_port(unsigned long); 200struct hwif_s * ide_find_port(unsigned long);
201 201
202int ide_register_hw(hw_regs_t *, void (*)(struct hwif_s *), int, 202struct ide_drive_s;
203int ide_register_hw(hw_regs_t *, void (*)(struct ide_drive_s *), int,
203 struct hwif_s **); 204 struct hwif_s **);
204 205
205void ide_setup_ports( hw_regs_t *hw, 206void ide_setup_ports( hw_regs_t *hw,
@@ -527,15 +528,13 @@ typedef struct hwif_s {
527 /* special host masking for drive selection */ 528 /* special host masking for drive selection */
528 void (*maskproc)(ide_drive_t *, int); 529 void (*maskproc)(ide_drive_t *, int);
529 /* check host's drive quirk list */ 530 /* check host's drive quirk list */
530 int (*quirkproc)(ide_drive_t *); 531 void (*quirkproc)(ide_drive_t *);
531 /* driver soft-power interface */ 532 /* driver soft-power interface */
532 int (*busproc)(ide_drive_t *, int); 533 int (*busproc)(ide_drive_t *, int);
533#endif 534#endif
534 u8 (*mdma_filter)(ide_drive_t *); 535 u8 (*mdma_filter)(ide_drive_t *);
535 u8 (*udma_filter)(ide_drive_t *); 536 u8 (*udma_filter)(ide_drive_t *);
536 537
537 void (*fixup)(struct hwif_s *);
538
539 void (*ata_input_data)(ide_drive_t *, void *, u32); 538 void (*ata_input_data)(ide_drive_t *, void *, u32);
540 void (*ata_output_data)(ide_drive_t *, void *, u32); 539 void (*ata_output_data)(ide_drive_t *, void *, u32);
541 540
@@ -1108,7 +1107,6 @@ struct ide_port_info {
1108 void (*init_iops)(ide_hwif_t *); 1107 void (*init_iops)(ide_hwif_t *);
1109 void (*init_hwif)(ide_hwif_t *); 1108 void (*init_hwif)(ide_hwif_t *);
1110 void (*init_dma)(ide_hwif_t *, unsigned long); 1109 void (*init_dma)(ide_hwif_t *, unsigned long);
1111 void (*fixup)(ide_hwif_t *);
1112 ide_pci_enablebit_t enablebits[2]; 1110 ide_pci_enablebit_t enablebits[2];
1113 hwif_chipset_t chipset; 1111 hwif_chipset_t chipset;
1114 u8 extra; 1112 u8 extra;
@@ -1203,7 +1201,7 @@ extern void ide_unregister (unsigned int index);
1203void ide_register_region(struct gendisk *); 1201void ide_register_region(struct gendisk *);
1204void ide_unregister_region(struct gendisk *); 1202void ide_unregister_region(struct gendisk *);
1205 1203
1206void ide_undecoded_slave(ide_hwif_t *); 1204void ide_undecoded_slave(ide_drive_t *);
1207 1205
1208int ide_device_add(u8 idx[4]); 1206int ide_device_add(u8 idx[4]);
1209 1207