diff options
author | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-19 18:32:31 -0400 |
---|---|---|
committer | Bartlomiej Zolnierkiewicz <bzolnier@gmail.com> | 2007-10-19 18:32:31 -0400 |
commit | fd9bb53942a7ca3398a63f2c238afd8fbed3ec0e (patch) | |
tree | eab9592f5bcbee89e0fdf9661e40a92d629d0a32 /include/linux/ide.h | |
parent | 438c470261036db25bfae15235ba99812e3dc763 (diff) |
ide: add ->fixup method to ide_hwif_t
* Add ->fixup method to ide_hwif_t.
* Set hwif->fixup in ide_pci_setup_ports() to d->fixup.
* Use hwif->fixup in probe_hwif().
* Use probe_hwif_init() instead of probe_hwif_init_with_fixup() in
ide_setup_pci_device().
* Add 'fixup' argument to ide_register_hw() and use it to set hwif->fixup,
update all ide_register_hw() users accordingly.
* Convert ide-cs/delkin_cb host drivers to use ide_register_hw().
* Restore hwif->fixup in ide_hwif_restore().
* Remove ide_register_hw_with_fixup(), probe_hwif_init_with_fixup()
and 'fixup' argument from probe_hwif().
Signed-off-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Diffstat (limited to 'include/linux/ide.h')
-rw-r--r-- | include/linux/ide.h | 11 |
1 files changed, 4 insertions, 7 deletions
diff --git a/include/linux/ide.h b/include/linux/ide.h index 258a15cc2746..831b9cc2f1d9 100644 --- a/include/linux/ide.h +++ b/include/linux/ide.h | |||
@@ -223,12 +223,8 @@ typedef struct hw_regs_s { | |||
223 | struct device *dev; | 223 | struct device *dev; |
224 | } hw_regs_t; | 224 | } hw_regs_t; |
225 | 225 | ||
226 | /* | 226 | int ide_register_hw(hw_regs_t *, void (*)(struct hwif_s *), int, |
227 | * Register new hardware with ide | 227 | struct hwif_s **); |
228 | */ | ||
229 | int ide_register_hw(hw_regs_t *, int, struct hwif_s **); | ||
230 | int ide_register_hw_with_fixup(hw_regs_t *, int, struct hwif_s **, | ||
231 | void (*)(struct hwif_s *)); | ||
232 | 228 | ||
233 | /* | 229 | /* |
234 | * Set up hw_regs_t structure before calling ide_register_hw (optional) | 230 | * Set up hw_regs_t structure before calling ide_register_hw (optional) |
@@ -727,6 +723,8 @@ typedef struct hwif_s { | |||
727 | u8 (*mdma_filter)(ide_drive_t *); | 723 | u8 (*mdma_filter)(ide_drive_t *); |
728 | u8 (*udma_filter)(ide_drive_t *); | 724 | u8 (*udma_filter)(ide_drive_t *); |
729 | 725 | ||
726 | void (*fixup)(struct hwif_s *); | ||
727 | |||
730 | void (*ata_input_data)(ide_drive_t *, void *, u32); | 728 | void (*ata_input_data)(ide_drive_t *, void *, u32); |
731 | void (*ata_output_data)(ide_drive_t *, void *, u32); | 729 | void (*ata_output_data)(ide_drive_t *, void *, u32); |
732 | 730 | ||
@@ -1380,7 +1378,6 @@ void ide_unregister_region(struct gendisk *); | |||
1380 | 1378 | ||
1381 | void ide_undecoded_slave(ide_hwif_t *); | 1379 | void ide_undecoded_slave(ide_hwif_t *); |
1382 | 1380 | ||
1383 | int probe_hwif_init_with_fixup(ide_hwif_t *, void (*)(ide_hwif_t *)); | ||
1384 | extern int probe_hwif_init(ide_hwif_t *); | 1381 | extern int probe_hwif_init(ide_hwif_t *); |
1385 | 1382 | ||
1386 | static inline void *ide_get_hwifdata (ide_hwif_t * hwif) | 1383 | static inline void *ide_get_hwifdata (ide_hwif_t * hwif) |