Lines Matching refs:ide_drive_t
627 typedef struct ide_drive_s ide_drive_t; typedef
629 #define to_ide_device(dev) container_of(dev, ide_drive_t, gendev)
645 void (*dev_select)(ide_drive_t *);
646 void (*tf_load)(ide_drive_t *, struct ide_taskfile *, u8);
647 void (*tf_read)(ide_drive_t *, struct ide_taskfile *, u8);
649 void (*input_data)(ide_drive_t *, struct ide_cmd *,
651 void (*output_data)(ide_drive_t *, struct ide_cmd *,
676 void (*init_dev)(ide_drive_t *);
677 void (*set_pio_mode)(struct hwif_s *, ide_drive_t *);
678 void (*set_dma_mode)(struct hwif_s *, ide_drive_t *);
679 blk_status_t (*reset_poll)(ide_drive_t *);
680 void (*pre_reset)(ide_drive_t *);
681 void (*resetproc)(ide_drive_t *);
682 void (*maskproc)(ide_drive_t *, int);
683 void (*quirkproc)(ide_drive_t *);
684 void (*clear_irq)(ide_drive_t *);
687 u8 (*mdma_filter)(ide_drive_t *);
688 u8 (*udma_filter)(ide_drive_t *);
729 ide_drive_t *devices[MAX_DRIVES + 1];
751 void (*rw_disk)(ide_drive_t *, struct request *);
799 ide_startstop_t (*handler)(ide_drive_t *);
805 ide_drive_t *cur_dev;
815 int (*expiry)(ide_drive_t *);
853 typedef ide_startstop_t (ide_handler_t)(ide_drive_t *);
854 typedef int (ide_expiry_t)(ide_drive_t *);
857 typedef void (xfer_func_t)(ide_drive_t *, struct ide_cmd *, void *, unsigned);
868 int (*get)(ide_drive_t *);
869 int (*set)(ide_drive_t *, int);
880 static int get_##name(ide_drive_t *drive) \
886 static int set_##name(ide_drive_t *drive, int arg) \
893 static int get_##name(ide_drive_t *drive) \
899 static int set_##name(ide_drive_t *drive, int arg) \
959 int (*mulf)(ide_drive_t *);
960 int (*divf)(ide_drive_t *);
985 void ide_proc_unregister_device(ide_drive_t *);
987 void ide_proc_register_driver(ide_drive_t *, struct ide_driver *);
988 void ide_proc_unregister_driver(ide_drive_t *, struct ide_driver *);
997 static inline void ide_proc_unregister_device(ide_drive_t *drive) { ; } in ide_proc_unregister_device()
999 static inline void ide_proc_register_driver(ide_drive_t *drive, in ide_proc_register_driver()
1001 static inline void ide_proc_unregister_driver(ide_drive_t *drive, in ide_proc_unregister_driver()
1060 void ide_complete_power_step(ide_drive_t *, struct request *);
1061 ide_startstop_t ide_start_power_step(ide_drive_t *, struct request *);
1062 void ide_complete_pm_rq(ide_drive_t *, struct request *);
1063 void ide_check_pm_state(ide_drive_t *, struct request *);
1073 ide_startstop_t (*do_request)(ide_drive_t *, struct request *, sector_t);
1075 int (*probe)(ide_drive_t *);
1076 void (*remove)(ide_drive_t *);
1077 void (*resume)(ide_drive_t *);
1078 void (*shutdown)(ide_drive_t *);
1080 ide_proc_entry_t * (*proc_entries)(ide_drive_t *);
1081 const struct ide_proc_devset * (*proc_devsets)(ide_drive_t *);
1087 int ide_device_get(ide_drive_t *);
1088 void ide_device_put(ide_drive_t *);
1096 int ide_setting_ioctl(ide_drive_t *, struct block_device *, unsigned int,
1099 int generic_ide_ioctl(ide_drive_t *, struct block_device *, unsigned, unsigned long);
1104 int ide_end_rq(ide_drive_t *, struct request *, blk_status_t, unsigned int);
1105 void ide_kill_rq(ide_drive_t *, struct request *);
1106 void ide_insert_request_head(ide_drive_t *, struct request *);
1108 void __ide_set_handler(ide_drive_t *, ide_handler_t *, unsigned int);
1109 void ide_set_handler(ide_drive_t *, ide_handler_t *, unsigned int);
1111 void ide_execute_command(ide_drive_t *, struct ide_cmd *, ide_handler_t *,
1114 void ide_pad_transfer(ide_drive_t *, int, int);
1116 ide_startstop_t ide_error(ide_drive_t *, const char *, u8);
1122 int ide_busy_sleep(ide_drive_t *, unsigned long, int);
1124 int __ide_wait_stat(ide_drive_t *, u8, u8, unsigned long, u8 *);
1125 int ide_wait_stat(ide_startstop_t *, ide_drive_t *, u8, u8, unsigned long);
1127 ide_startstop_t ide_do_park_unpark(ide_drive_t *, struct request *);
1128 ide_startstop_t ide_do_devset(ide_drive_t *, struct request *);
1130 extern ide_startstop_t ide_do_reset (ide_drive_t *);
1132 extern int ide_devset_execute(ide_drive_t *drive,
1135 void ide_complete_cmd(ide_drive_t *, struct ide_cmd *, u8, u8);
1136 int ide_complete_rq(ide_drive_t *, blk_status_t, unsigned int);
1138 void ide_tf_readback(ide_drive_t *drive, struct ide_cmd *cmd);
1146 void ide_dev_select(ide_drive_t *);
1147 void ide_tf_load(ide_drive_t *, struct ide_taskfile *, u8);
1148 void ide_tf_read(ide_drive_t *, struct ide_taskfile *, u8);
1150 void ide_input_data(ide_drive_t *, struct ide_cmd *, void *, unsigned int);
1151 void ide_output_data(ide_drive_t *, struct ide_cmd *, void *, unsigned int);
1153 void SELECT_MASK(ide_drive_t *, int);
1155 u8 ide_read_error(ide_drive_t *);
1156 void ide_read_bcount_and_ireason(ide_drive_t *, u16 *, u8 *);
1158 int ide_check_ireason(ide_drive_t *, struct request *, int, int, int);
1160 int ide_check_atapi_device(ide_drive_t *, const char *);
1184 int ide_queue_pc_tail(ide_drive_t *, struct gendisk *, struct ide_atapi_pc *,
1187 int ide_do_test_unit_ready(ide_drive_t *, struct gendisk *);
1188 int ide_do_start_stop(ide_drive_t *, struct gendisk *, int);
1189 int ide_set_media_lock(ide_drive_t *, struct gendisk *, int);
1190 void ide_create_request_sense_cmd(ide_drive_t *, struct ide_atapi_pc *);
1191 void ide_retry_pc(ide_drive_t *drive);
1193 void ide_prep_sense(ide_drive_t *drive, struct request *rq);
1194 int ide_queue_sense_rq(ide_drive_t *drive, void *special);
1196 int ide_cd_expiry(ide_drive_t *);
1200 ide_startstop_t ide_issue_pc(ide_drive_t *, struct ide_cmd *);
1202 ide_startstop_t do_rw_taskfile(ide_drive_t *, struct ide_cmd *);
1204 void ide_pio_bytes(ide_drive_t *, struct ide_cmd *, unsigned int, unsigned int);
1206 void ide_finish_cmd(ide_drive_t *, struct ide_cmd *, u8);
1208 int ide_raw_taskfile(ide_drive_t *, struct ide_cmd *, u8 *, u16);
1209 int ide_no_data_taskfile(ide_drive_t *, struct ide_cmd *);
1211 int ide_taskfile_ioctl(ide_drive_t *, unsigned long);
1213 int ide_dev_read_id(ide_drive_t *, u8, u16 *, int);
1215 extern int ide_driveid_update(ide_drive_t *);
1216 extern int ide_config_drive_speed(ide_drive_t *, u8);
1217 extern u8 eighty_ninty_three (ide_drive_t *);
1218 extern int taskfile_lib_get_identify(ide_drive_t *drive, u8 *);
1222 extern void ide_stall_queue(ide_drive_t *drive, unsigned long timeout);
1227 extern blk_status_t ide_issue_rq(ide_drive_t *, struct request *, bool);
1228 extern void ide_requeue_and_plug(ide_drive_t *drive, struct request *rq);
1230 void ide_init_disk(struct gendisk *, ide_drive_t *);
1403 void ide_map_sg(ide_drive_t *, struct ide_cmd *);
1417 int ide_dma_good_drive(ide_drive_t *);
1418 int __ide_dma_bad_drive(ide_drive_t *);
1420 u8 ide_find_dma_mode(ide_drive_t *, u8);
1422 static inline u8 ide_max_dma_mode(ide_drive_t *drive) in ide_max_dma_mode()
1427 void ide_dma_off_quietly(ide_drive_t *);
1428 void ide_dma_off(ide_drive_t *);
1429 void ide_dma_on(ide_drive_t *);
1430 int ide_set_dma(ide_drive_t *);
1431 void ide_check_dma_crc(ide_drive_t *);
1432 ide_startstop_t ide_dma_intr(ide_drive_t *);
1437 int ide_dma_prepare(ide_drive_t *, struct ide_cmd *);
1438 void ide_dma_unmap_sg(ide_drive_t *, struct ide_cmd *);
1441 int config_drive_for_dma(ide_drive_t *);
1442 int ide_build_dmatable(ide_drive_t *, struct ide_cmd *);
1443 void ide_dma_host_set(ide_drive_t *, int);
1444 int ide_dma_setup(ide_drive_t *, struct ide_cmd *);
1445 extern void ide_dma_start(ide_drive_t *);
1446 int ide_dma_end(ide_drive_t *);
1447 int ide_dma_test_irq(ide_drive_t *);
1448 int ide_dma_sff_timer_expiry(ide_drive_t *);
1452 static inline int config_drive_for_dma(ide_drive_t *drive) { return 0; } in config_drive_for_dma()
1455 void ide_dma_lost_irq(ide_drive_t *);
1456 ide_startstop_t ide_dma_timeout_retry(ide_drive_t *, int);
1459 static inline u8 ide_find_dma_mode(ide_drive_t *drive, u8 speed) { return 0; } in ide_find_dma_mode()
1460 static inline u8 ide_max_dma_mode(ide_drive_t *drive) { return 0; } in ide_max_dma_mode()
1461 static inline void ide_dma_off_quietly(ide_drive_t *drive) { ; } in ide_dma_off_quietly()
1462 static inline void ide_dma_off(ide_drive_t *drive) { ; } in ide_dma_off()
1463 static inline void ide_dma_on(ide_drive_t *drive) { ; } in ide_dma_on()
1464 static inline void ide_dma_verbose(ide_drive_t *drive) { ; } in ide_dma_verbose()
1465 static inline int ide_set_dma(ide_drive_t *drive) { return 1; } in ide_set_dma()
1466 static inline void ide_check_dma_crc(ide_drive_t *drive) { ; } in ide_check_dma_crc()
1467 static inline ide_startstop_t ide_dma_intr(ide_drive_t *drive) { return ide_stopped; } in ide_dma_intr()
1468 static inline ide_startstop_t ide_dma_timeout_retry(ide_drive_t *drive, int error) { return ide_sto… in ide_dma_timeout_retry()
1470 static inline int ide_dma_prepare(ide_drive_t *drive, in ide_dma_prepare()
1472 static inline void ide_dma_unmap_sg(ide_drive_t *drive, in ide_dma_unmap_sg()
1479 extern int ide_acpi_exec_tfs(ide_drive_t *drive);
1488 static inline int ide_acpi_exec_tfs(ide_drive_t *drive) { return 0; } in ide_acpi_exec_tfs()
1499 void ide_check_nien_quirk_list(ide_drive_t *);
1500 void ide_undecoded_slave(ide_drive_t *);
1528 u8 ide_dump_status(ide_drive_t *, const char *, u8);
1559 u16 ide_pio_cycle_time(ide_drive_t *, u8);
1562 int ide_timing_compute(ide_drive_t *, u8, struct ide_timing *, int, int);
1567 int ide_pio_need_iordy(ide_drive_t *, const u8);
1568 int ide_set_pio_mode(ide_drive_t *, u8);
1569 int ide_set_dma_mode(ide_drive_t *, u8);
1570 void ide_set_pio(ide_drive_t *, u8);
1571 int ide_set_xfer_rate(ide_drive_t *, u8);
1573 static inline void ide_set_pio(ide_drive_t *drive, u8 pio) { ; } in ide_set_pio()
1574 static inline int ide_set_xfer_rate(ide_drive_t *drive, u8 rate) { return -1; } in ide_set_xfer_rate()
1577 static inline void ide_set_max_pio(ide_drive_t *drive) in ide_set_max_pio()
1582 char *ide_media_string(ide_drive_t *);
1598 static inline ide_drive_t *ide_get_pair_dev(ide_drive_t *drive) in ide_get_pair_dev()
1600 ide_drive_t *peer = drive->hwif->devices[(drive->dn ^ 1) & 1]; in ide_get_pair_dev()
1605 static inline void *ide_get_drivedata(ide_drive_t *drive) in ide_get_drivedata()
1610 static inline void ide_set_drivedata(ide_drive_t *drive, void *data) in ide_set_drivedata()