Lines Matching refs:ide_drive_t
573 typedef struct ide_drive_s ide_drive_t; typedef
575 #define to_ide_device(dev) container_of(dev, ide_drive_t, gendev)
591 void (*dev_select)(ide_drive_t *);
592 void (*tf_load)(ide_drive_t *, struct ide_taskfile *, u8);
593 void (*tf_read)(ide_drive_t *, struct ide_taskfile *, u8);
595 void (*input_data)(ide_drive_t *, struct ide_cmd *,
597 void (*output_data)(ide_drive_t *, struct ide_cmd *,
622 void (*init_dev)(ide_drive_t *);
623 void (*set_pio_mode)(struct hwif_s *, ide_drive_t *);
624 void (*set_dma_mode)(struct hwif_s *, ide_drive_t *);
625 int (*reset_poll)(ide_drive_t *);
626 void (*pre_reset)(ide_drive_t *);
627 void (*resetproc)(ide_drive_t *);
628 void (*maskproc)(ide_drive_t *, int);
629 void (*quirkproc)(ide_drive_t *);
630 void (*clear_irq)(ide_drive_t *);
633 u8 (*mdma_filter)(ide_drive_t *);
634 u8 (*udma_filter)(ide_drive_t *);
675 ide_drive_t *devices[MAX_DRIVES + 1];
697 void (*rw_disk)(ide_drive_t *, struct request *);
745 ide_startstop_t (*handler)(ide_drive_t *);
751 ide_drive_t *cur_dev;
761 int (*expiry)(ide_drive_t *);
799 typedef ide_startstop_t (ide_handler_t)(ide_drive_t *);
800 typedef int (ide_expiry_t)(ide_drive_t *);
803 typedef void (xfer_func_t)(ide_drive_t *, struct ide_cmd *, void *, unsigned);
814 int (*get)(ide_drive_t *);
815 int (*set)(ide_drive_t *, int);
826 static int get_##name(ide_drive_t *drive) \
832 static int set_##name(ide_drive_t *drive, int arg) \
839 static int get_##name(ide_drive_t *drive) \
845 static int set_##name(ide_drive_t *drive, int arg) \
901 int (*mulf)(ide_drive_t *);
902 int (*divf)(ide_drive_t *);
927 void ide_proc_unregister_device(ide_drive_t *);
929 void ide_proc_register_driver(ide_drive_t *, struct ide_driver *);
930 void ide_proc_unregister_driver(ide_drive_t *, struct ide_driver *);
939 static inline void ide_proc_unregister_device(ide_drive_t *drive) { ; } in ide_proc_unregister_device()
941 static inline void ide_proc_register_driver(ide_drive_t *drive, in ide_proc_register_driver()
943 static inline void ide_proc_unregister_driver(ide_drive_t *drive, in ide_proc_unregister_driver()
1002 void ide_complete_power_step(ide_drive_t *, struct request *);
1003 ide_startstop_t ide_start_power_step(ide_drive_t *, struct request *);
1004 void ide_complete_pm_rq(ide_drive_t *, struct request *);
1005 void ide_check_pm_state(ide_drive_t *, struct request *);
1015 ide_startstop_t (*do_request)(ide_drive_t *, struct request *, sector_t);
1017 int (*probe)(ide_drive_t *);
1018 void (*remove)(ide_drive_t *);
1019 void (*resume)(ide_drive_t *);
1020 void (*shutdown)(ide_drive_t *);
1022 ide_proc_entry_t * (*proc_entries)(ide_drive_t *);
1023 const struct ide_proc_devset * (*proc_devsets)(ide_drive_t *);
1029 int ide_device_get(ide_drive_t *);
1030 void ide_device_put(ide_drive_t *);
1038 int ide_setting_ioctl(ide_drive_t *, struct block_device *, unsigned int,
1041 int generic_ide_ioctl(ide_drive_t *, struct block_device *, unsigned, unsigned long);
1046 int ide_end_rq(ide_drive_t *, struct request *, int, unsigned int);
1047 void ide_kill_rq(ide_drive_t *, struct request *);
1049 void __ide_set_handler(ide_drive_t *, ide_handler_t *, unsigned int);
1050 void ide_set_handler(ide_drive_t *, ide_handler_t *, unsigned int);
1052 void ide_execute_command(ide_drive_t *, struct ide_cmd *, ide_handler_t *,
1055 void ide_pad_transfer(ide_drive_t *, int, int);
1057 ide_startstop_t ide_error(ide_drive_t *, const char *, u8);
1063 int ide_busy_sleep(ide_drive_t *, unsigned long, int);
1065 int __ide_wait_stat(ide_drive_t *, u8, u8, unsigned long, u8 *);
1066 int ide_wait_stat(ide_startstop_t *, ide_drive_t *, u8, u8, unsigned long);
1068 ide_startstop_t ide_do_park_unpark(ide_drive_t *, struct request *);
1069 ide_startstop_t ide_do_devset(ide_drive_t *, struct request *);
1071 extern ide_startstop_t ide_do_reset (ide_drive_t *);
1073 extern int ide_devset_execute(ide_drive_t *drive,
1076 void ide_complete_cmd(ide_drive_t *, struct ide_cmd *, u8, u8);
1077 int ide_complete_rq(ide_drive_t *, int, unsigned int);
1079 void ide_tf_readback(ide_drive_t *drive, struct ide_cmd *cmd);
1087 void ide_dev_select(ide_drive_t *);
1088 void ide_tf_load(ide_drive_t *, struct ide_taskfile *, u8);
1089 void ide_tf_read(ide_drive_t *, struct ide_taskfile *, u8);
1091 void ide_input_data(ide_drive_t *, struct ide_cmd *, void *, unsigned int);
1092 void ide_output_data(ide_drive_t *, struct ide_cmd *, void *, unsigned int);
1094 void SELECT_MASK(ide_drive_t *, int);
1096 u8 ide_read_error(ide_drive_t *);
1097 void ide_read_bcount_and_ireason(ide_drive_t *, u16 *, u8 *);
1099 int ide_check_ireason(ide_drive_t *, struct request *, int, int, int);
1101 int ide_check_atapi_device(ide_drive_t *, const char *);
1125 int ide_queue_pc_tail(ide_drive_t *, struct gendisk *, struct ide_atapi_pc *,
1128 int ide_do_test_unit_ready(ide_drive_t *, struct gendisk *);
1129 int ide_do_start_stop(ide_drive_t *, struct gendisk *, int);
1130 int ide_set_media_lock(ide_drive_t *, struct gendisk *, int);
1131 void ide_create_request_sense_cmd(ide_drive_t *, struct ide_atapi_pc *);
1132 void ide_retry_pc(ide_drive_t *drive);
1134 void ide_prep_sense(ide_drive_t *drive, struct request *rq);
1135 int ide_queue_sense_rq(ide_drive_t *drive, void *special);
1137 int ide_cd_expiry(ide_drive_t *);
1141 ide_startstop_t ide_issue_pc(ide_drive_t *, struct ide_cmd *);
1143 ide_startstop_t do_rw_taskfile(ide_drive_t *, struct ide_cmd *);
1145 void ide_pio_bytes(ide_drive_t *, struct ide_cmd *, unsigned int, unsigned int);
1147 void ide_finish_cmd(ide_drive_t *, struct ide_cmd *, u8);
1149 int ide_raw_taskfile(ide_drive_t *, struct ide_cmd *, u8 *, u16);
1150 int ide_no_data_taskfile(ide_drive_t *, struct ide_cmd *);
1152 int ide_taskfile_ioctl(ide_drive_t *, unsigned long);
1154 int ide_dev_read_id(ide_drive_t *, u8, u16 *, int);
1156 extern int ide_driveid_update(ide_drive_t *);
1157 extern int ide_config_drive_speed(ide_drive_t *, u8);
1158 extern u8 eighty_ninty_three (ide_drive_t *);
1159 extern int taskfile_lib_get_identify(ide_drive_t *drive, u8 *);
1163 extern void ide_stall_queue(ide_drive_t *drive, unsigned long timeout);
1168 extern void ide_requeue_and_plug(ide_drive_t *drive, struct request *rq);
1170 void ide_init_disk(struct gendisk *, ide_drive_t *);
1330 void ide_map_sg(ide_drive_t *, struct ide_cmd *);
1344 int ide_dma_good_drive(ide_drive_t *);
1345 int __ide_dma_bad_drive(ide_drive_t *);
1347 u8 ide_find_dma_mode(ide_drive_t *, u8);
1349 static inline u8 ide_max_dma_mode(ide_drive_t *drive) in ide_max_dma_mode()
1354 void ide_dma_off_quietly(ide_drive_t *);
1355 void ide_dma_off(ide_drive_t *);
1356 void ide_dma_on(ide_drive_t *);
1357 int ide_set_dma(ide_drive_t *);
1358 void ide_check_dma_crc(ide_drive_t *);
1359 ide_startstop_t ide_dma_intr(ide_drive_t *);
1364 int ide_dma_prepare(ide_drive_t *, struct ide_cmd *);
1365 void ide_dma_unmap_sg(ide_drive_t *, struct ide_cmd *);
1368 int config_drive_for_dma(ide_drive_t *);
1369 int ide_build_dmatable(ide_drive_t *, struct ide_cmd *);
1370 void ide_dma_host_set(ide_drive_t *, int);
1371 int ide_dma_setup(ide_drive_t *, struct ide_cmd *);
1372 extern void ide_dma_start(ide_drive_t *);
1373 int ide_dma_end(ide_drive_t *);
1374 int ide_dma_test_irq(ide_drive_t *);
1375 int ide_dma_sff_timer_expiry(ide_drive_t *);
1379 static inline int config_drive_for_dma(ide_drive_t *drive) { return 0; } in config_drive_for_dma()
1382 void ide_dma_lost_irq(ide_drive_t *);
1383 ide_startstop_t ide_dma_timeout_retry(ide_drive_t *, int);
1386 static inline u8 ide_find_dma_mode(ide_drive_t *drive, u8 speed) { return 0; } in ide_find_dma_mode()
1387 static inline u8 ide_max_dma_mode(ide_drive_t *drive) { return 0; } in ide_max_dma_mode()
1388 static inline void ide_dma_off_quietly(ide_drive_t *drive) { ; } in ide_dma_off_quietly()
1389 static inline void ide_dma_off(ide_drive_t *drive) { ; } in ide_dma_off()
1390 static inline void ide_dma_on(ide_drive_t *drive) { ; } in ide_dma_on()
1391 static inline void ide_dma_verbose(ide_drive_t *drive) { ; } in ide_dma_verbose()
1392 static inline int ide_set_dma(ide_drive_t *drive) { return 1; } in ide_set_dma()
1393 static inline void ide_check_dma_crc(ide_drive_t *drive) { ; } in ide_check_dma_crc()
1394 static inline ide_startstop_t ide_dma_intr(ide_drive_t *drive) { return ide_stopped; } in ide_dma_intr()
1395 static inline ide_startstop_t ide_dma_timeout_retry(ide_drive_t *drive, int error) { return ide_sto… in ide_dma_timeout_retry()
1397 static inline int ide_dma_prepare(ide_drive_t *drive, in ide_dma_prepare()
1399 static inline void ide_dma_unmap_sg(ide_drive_t *drive, in ide_dma_unmap_sg()
1406 extern int ide_acpi_exec_tfs(ide_drive_t *drive);
1415 static inline int ide_acpi_exec_tfs(ide_drive_t *drive) { return 0; } in ide_acpi_exec_tfs()
1426 void ide_check_nien_quirk_list(ide_drive_t *);
1427 void ide_undecoded_slave(ide_drive_t *);
1454 extern void ide_toggle_bounce(ide_drive_t *drive, int on);
1457 u8 ide_dump_status(ide_drive_t *, const char *, u8);
1488 u16 ide_pio_cycle_time(ide_drive_t *, u8);
1491 int ide_timing_compute(ide_drive_t *, u8, struct ide_timing *, int, int);
1496 int ide_pio_need_iordy(ide_drive_t *, const u8);
1497 int ide_set_pio_mode(ide_drive_t *, u8);
1498 int ide_set_dma_mode(ide_drive_t *, u8);
1499 void ide_set_pio(ide_drive_t *, u8);
1500 int ide_set_xfer_rate(ide_drive_t *, u8);
1502 static inline void ide_set_pio(ide_drive_t *drive, u8 pio) { ; } in ide_set_pio()
1503 static inline int ide_set_xfer_rate(ide_drive_t *drive, u8 rate) { return -1; } in ide_set_xfer_rate()
1506 static inline void ide_set_max_pio(ide_drive_t *drive) in ide_set_max_pio()
1511 char *ide_media_string(ide_drive_t *);
1527 static inline ide_drive_t *ide_get_pair_dev(ide_drive_t *drive) in ide_get_pair_dev()
1529 ide_drive_t *peer = drive->hwif->devices[(drive->dn ^ 1) & 1]; in ide_get_pair_dev()
1534 static inline void *ide_get_drivedata(ide_drive_t *drive) in ide_get_drivedata()
1539 static inline void ide_set_drivedata(ide_drive_t *drive, void *data) in ide_set_drivedata()