Lines Matching refs:ide_drive_t
586 typedef struct ide_drive_s ide_drive_t; typedef
588 #define to_ide_device(dev) container_of(dev, ide_drive_t, gendev)
604 void (*dev_select)(ide_drive_t *);
605 void (*tf_load)(ide_drive_t *, struct ide_taskfile *, u8);
606 void (*tf_read)(ide_drive_t *, struct ide_taskfile *, u8);
608 void (*input_data)(ide_drive_t *, struct ide_cmd *,
610 void (*output_data)(ide_drive_t *, struct ide_cmd *,
635 void (*init_dev)(ide_drive_t *);
636 void (*set_pio_mode)(struct hwif_s *, ide_drive_t *);
637 void (*set_dma_mode)(struct hwif_s *, ide_drive_t *);
638 int (*reset_poll)(ide_drive_t *);
639 void (*pre_reset)(ide_drive_t *);
640 void (*resetproc)(ide_drive_t *);
641 void (*maskproc)(ide_drive_t *, int);
642 void (*quirkproc)(ide_drive_t *);
643 void (*clear_irq)(ide_drive_t *);
646 u8 (*mdma_filter)(ide_drive_t *);
647 u8 (*udma_filter)(ide_drive_t *);
688 ide_drive_t *devices[MAX_DRIVES + 1];
710 void (*rw_disk)(ide_drive_t *, struct request *);
758 ide_startstop_t (*handler)(ide_drive_t *);
764 ide_drive_t *cur_dev;
774 int (*expiry)(ide_drive_t *);
812 typedef ide_startstop_t (ide_handler_t)(ide_drive_t *);
813 typedef int (ide_expiry_t)(ide_drive_t *);
816 typedef void (xfer_func_t)(ide_drive_t *, struct ide_cmd *, void *, unsigned);
827 int (*get)(ide_drive_t *);
828 int (*set)(ide_drive_t *, int);
839 static int get_##name(ide_drive_t *drive) \
845 static int set_##name(ide_drive_t *drive, int arg) \
852 static int get_##name(ide_drive_t *drive) \
858 static int set_##name(ide_drive_t *drive, int arg) \
914 int (*mulf)(ide_drive_t *);
915 int (*divf)(ide_drive_t *);
940 void ide_proc_unregister_device(ide_drive_t *);
942 void ide_proc_register_driver(ide_drive_t *, struct ide_driver *);
943 void ide_proc_unregister_driver(ide_drive_t *, struct ide_driver *);
952 static inline void ide_proc_unregister_device(ide_drive_t *drive) { ; } in ide_proc_unregister_device()
954 static inline void ide_proc_register_driver(ide_drive_t *drive, in ide_proc_register_driver()
956 static inline void ide_proc_unregister_driver(ide_drive_t *drive, in ide_proc_unregister_driver()
1015 void ide_complete_power_step(ide_drive_t *, struct request *);
1016 ide_startstop_t ide_start_power_step(ide_drive_t *, struct request *);
1017 void ide_complete_pm_rq(ide_drive_t *, struct request *);
1018 void ide_check_pm_state(ide_drive_t *, struct request *);
1028 ide_startstop_t (*do_request)(ide_drive_t *, struct request *, sector_t);
1030 int (*probe)(ide_drive_t *);
1031 void (*remove)(ide_drive_t *);
1032 void (*resume)(ide_drive_t *);
1033 void (*shutdown)(ide_drive_t *);
1035 ide_proc_entry_t * (*proc_entries)(ide_drive_t *);
1036 const struct ide_proc_devset * (*proc_devsets)(ide_drive_t *);
1042 int ide_device_get(ide_drive_t *);
1043 void ide_device_put(ide_drive_t *);
1051 int ide_setting_ioctl(ide_drive_t *, struct block_device *, unsigned int,
1054 int generic_ide_ioctl(ide_drive_t *, struct block_device *, unsigned, unsigned long);
1059 int ide_end_rq(ide_drive_t *, struct request *, int, unsigned int);
1060 void ide_kill_rq(ide_drive_t *, struct request *);
1062 void __ide_set_handler(ide_drive_t *, ide_handler_t *, unsigned int);
1063 void ide_set_handler(ide_drive_t *, ide_handler_t *, unsigned int);
1065 void ide_execute_command(ide_drive_t *, struct ide_cmd *, ide_handler_t *,
1068 void ide_pad_transfer(ide_drive_t *, int, int);
1070 ide_startstop_t ide_error(ide_drive_t *, const char *, u8);
1076 int ide_busy_sleep(ide_drive_t *, unsigned long, int);
1078 int __ide_wait_stat(ide_drive_t *, u8, u8, unsigned long, u8 *);
1079 int ide_wait_stat(ide_startstop_t *, ide_drive_t *, u8, u8, unsigned long);
1081 ide_startstop_t ide_do_park_unpark(ide_drive_t *, struct request *);
1082 ide_startstop_t ide_do_devset(ide_drive_t *, struct request *);
1084 extern ide_startstop_t ide_do_reset (ide_drive_t *);
1086 extern int ide_devset_execute(ide_drive_t *drive,
1089 void ide_complete_cmd(ide_drive_t *, struct ide_cmd *, u8, u8);
1090 int ide_complete_rq(ide_drive_t *, int, unsigned int);
1092 void ide_tf_readback(ide_drive_t *drive, struct ide_cmd *cmd);
1100 void ide_dev_select(ide_drive_t *);
1101 void ide_tf_load(ide_drive_t *, struct ide_taskfile *, u8);
1102 void ide_tf_read(ide_drive_t *, struct ide_taskfile *, u8);
1104 void ide_input_data(ide_drive_t *, struct ide_cmd *, void *, unsigned int);
1105 void ide_output_data(ide_drive_t *, struct ide_cmd *, void *, unsigned int);
1107 void SELECT_MASK(ide_drive_t *, int);
1109 u8 ide_read_error(ide_drive_t *);
1110 void ide_read_bcount_and_ireason(ide_drive_t *, u16 *, u8 *);
1112 int ide_check_ireason(ide_drive_t *, struct request *, int, int, int);
1114 int ide_check_atapi_device(ide_drive_t *, const char *);
1138 int ide_queue_pc_tail(ide_drive_t *, struct gendisk *, struct ide_atapi_pc *,
1141 int ide_do_test_unit_ready(ide_drive_t *, struct gendisk *);
1142 int ide_do_start_stop(ide_drive_t *, struct gendisk *, int);
1143 int ide_set_media_lock(ide_drive_t *, struct gendisk *, int);
1144 void ide_create_request_sense_cmd(ide_drive_t *, struct ide_atapi_pc *);
1145 void ide_retry_pc(ide_drive_t *drive);
1147 void ide_prep_sense(ide_drive_t *drive, struct request *rq);
1148 int ide_queue_sense_rq(ide_drive_t *drive, void *special);
1150 int ide_cd_expiry(ide_drive_t *);
1154 ide_startstop_t ide_issue_pc(ide_drive_t *, struct ide_cmd *);
1156 ide_startstop_t do_rw_taskfile(ide_drive_t *, struct ide_cmd *);
1158 void ide_pio_bytes(ide_drive_t *, struct ide_cmd *, unsigned int, unsigned int);
1160 void ide_finish_cmd(ide_drive_t *, struct ide_cmd *, u8);
1162 int ide_raw_taskfile(ide_drive_t *, struct ide_cmd *, u8 *, u16);
1163 int ide_no_data_taskfile(ide_drive_t *, struct ide_cmd *);
1165 int ide_taskfile_ioctl(ide_drive_t *, unsigned long);
1167 int ide_dev_read_id(ide_drive_t *, u8, u16 *, int);
1169 extern int ide_driveid_update(ide_drive_t *);
1170 extern int ide_config_drive_speed(ide_drive_t *, u8);
1171 extern u8 eighty_ninty_three (ide_drive_t *);
1172 extern int taskfile_lib_get_identify(ide_drive_t *drive, u8 *);
1176 extern void ide_stall_queue(ide_drive_t *drive, unsigned long timeout);
1181 extern void ide_requeue_and_plug(ide_drive_t *drive, struct request *rq);
1183 void ide_init_disk(struct gendisk *, ide_drive_t *);
1356 void ide_map_sg(ide_drive_t *, struct ide_cmd *);
1370 int ide_dma_good_drive(ide_drive_t *);
1371 int __ide_dma_bad_drive(ide_drive_t *);
1373 u8 ide_find_dma_mode(ide_drive_t *, u8);
1375 static inline u8 ide_max_dma_mode(ide_drive_t *drive) in ide_max_dma_mode()
1380 void ide_dma_off_quietly(ide_drive_t *);
1381 void ide_dma_off(ide_drive_t *);
1382 void ide_dma_on(ide_drive_t *);
1383 int ide_set_dma(ide_drive_t *);
1384 void ide_check_dma_crc(ide_drive_t *);
1385 ide_startstop_t ide_dma_intr(ide_drive_t *);
1390 int ide_dma_prepare(ide_drive_t *, struct ide_cmd *);
1391 void ide_dma_unmap_sg(ide_drive_t *, struct ide_cmd *);
1394 int config_drive_for_dma(ide_drive_t *);
1395 int ide_build_dmatable(ide_drive_t *, struct ide_cmd *);
1396 void ide_dma_host_set(ide_drive_t *, int);
1397 int ide_dma_setup(ide_drive_t *, struct ide_cmd *);
1398 extern void ide_dma_start(ide_drive_t *);
1399 int ide_dma_end(ide_drive_t *);
1400 int ide_dma_test_irq(ide_drive_t *);
1401 int ide_dma_sff_timer_expiry(ide_drive_t *);
1405 static inline int config_drive_for_dma(ide_drive_t *drive) { return 0; } in config_drive_for_dma()
1408 void ide_dma_lost_irq(ide_drive_t *);
1409 ide_startstop_t ide_dma_timeout_retry(ide_drive_t *, int);
1412 static inline u8 ide_find_dma_mode(ide_drive_t *drive, u8 speed) { return 0; } in ide_find_dma_mode()
1413 static inline u8 ide_max_dma_mode(ide_drive_t *drive) { return 0; } in ide_max_dma_mode()
1414 static inline void ide_dma_off_quietly(ide_drive_t *drive) { ; } in ide_dma_off_quietly()
1415 static inline void ide_dma_off(ide_drive_t *drive) { ; } in ide_dma_off()
1416 static inline void ide_dma_on(ide_drive_t *drive) { ; } in ide_dma_on()
1417 static inline void ide_dma_verbose(ide_drive_t *drive) { ; } in ide_dma_verbose()
1418 static inline int ide_set_dma(ide_drive_t *drive) { return 1; } in ide_set_dma()
1419 static inline void ide_check_dma_crc(ide_drive_t *drive) { ; } in ide_check_dma_crc()
1420 static inline ide_startstop_t ide_dma_intr(ide_drive_t *drive) { return ide_stopped; } in ide_dma_intr()
1421 static inline ide_startstop_t ide_dma_timeout_retry(ide_drive_t *drive, int error) { return ide_sto… in ide_dma_timeout_retry()
1423 static inline int ide_dma_prepare(ide_drive_t *drive, in ide_dma_prepare()
1425 static inline void ide_dma_unmap_sg(ide_drive_t *drive, in ide_dma_unmap_sg()
1432 extern int ide_acpi_exec_tfs(ide_drive_t *drive);
1441 static inline int ide_acpi_exec_tfs(ide_drive_t *drive) { return 0; } in ide_acpi_exec_tfs()
1452 void ide_check_nien_quirk_list(ide_drive_t *);
1453 void ide_undecoded_slave(ide_drive_t *);
1480 extern void ide_toggle_bounce(ide_drive_t *drive, int on);
1483 u8 ide_dump_status(ide_drive_t *, const char *, u8);
1514 u16 ide_pio_cycle_time(ide_drive_t *, u8);
1517 int ide_timing_compute(ide_drive_t *, u8, struct ide_timing *, int, int);
1522 int ide_pio_need_iordy(ide_drive_t *, const u8);
1523 int ide_set_pio_mode(ide_drive_t *, u8);
1524 int ide_set_dma_mode(ide_drive_t *, u8);
1525 void ide_set_pio(ide_drive_t *, u8);
1526 int ide_set_xfer_rate(ide_drive_t *, u8);
1528 static inline void ide_set_pio(ide_drive_t *drive, u8 pio) { ; } in ide_set_pio()
1529 static inline int ide_set_xfer_rate(ide_drive_t *drive, u8 rate) { return -1; } in ide_set_xfer_rate()
1532 static inline void ide_set_max_pio(ide_drive_t *drive) in ide_set_max_pio()
1537 char *ide_media_string(ide_drive_t *);
1553 static inline ide_drive_t *ide_get_pair_dev(ide_drive_t *drive) in ide_get_pair_dev()
1555 ide_drive_t *peer = drive->hwif->devices[(drive->dn ^ 1) & 1]; in ide_get_pair_dev()
1560 static inline void *ide_get_drivedata(ide_drive_t *drive) in ide_get_drivedata()
1565 static inline void ide_set_drivedata(ide_drive_t *drive, void *data) in ide_set_drivedata()