Lines Matching defs:ata_port_operations
873 struct ata_port_operations { struct
877 int (*qc_defer)(struct ata_queued_cmd *qc);
878 int (*check_atapi_dma)(struct ata_queued_cmd *qc);
879 enum ata_completion_errors (*qc_prep)(struct ata_queued_cmd *qc);
880 unsigned int (*qc_issue)(struct ata_queued_cmd *qc);
881 void (*qc_fill_rtf)(struct ata_queued_cmd *qc);
882 void (*qc_ncq_fill_rtf)(struct ata_port *ap, u64 done_mask);
887 int (*cable_detect)(struct ata_port *ap);
888 unsigned int (*mode_filter)(struct ata_device *dev, unsigned int xfer_mask);
889 void (*set_piomode)(struct ata_port *ap, struct ata_device *dev);
890 void (*set_dmamode)(struct ata_port *ap, struct ata_device *dev);
891 int (*set_mode)(struct ata_link *link, struct ata_device **r_failed_dev);
892 unsigned int (*read_id)(struct ata_device *dev, struct ata_taskfile *tf,
895 void (*dev_config)(struct ata_device *dev);
897 void (*freeze)(struct ata_port *ap);
898 void (*thaw)(struct ata_port *ap);
899 ata_prereset_fn_t prereset;
900 ata_reset_fn_t softreset;
901 ata_reset_fn_t hardreset;
902 ata_postreset_fn_t postreset;
903 ata_prereset_fn_t pmp_prereset;
904 ata_reset_fn_t pmp_softreset;
905 ata_reset_fn_t pmp_hardreset;
906 ata_postreset_fn_t pmp_postreset;
907 void (*error_handler)(struct ata_port *ap);
908 void (*lost_interrupt)(struct ata_port *ap);
909 void (*post_internal_cmd)(struct ata_queued_cmd *qc);
910 void (*sched_eh)(struct ata_port *ap);
911 void (*end_eh)(struct ata_port *ap);
916 int (*scr_read)(struct ata_link *link, unsigned int sc_reg, u32 *val);
917 int (*scr_write)(struct ata_link *link, unsigned int sc_reg, u32 val);
918 void (*pmp_attach)(struct ata_port *ap);
919 void (*pmp_detach)(struct ata_port *ap);
920 int (*set_lpm)(struct ata_link *link, enum ata_lpm_policy policy,
926 int (*port_suspend)(struct ata_port *ap, pm_message_t mesg);
927 int (*port_resume)(struct ata_port *ap);
928 int (*port_start)(struct ata_port *ap);
929 void (*port_stop)(struct ata_port *ap);
930 void (*host_stop)(struct ata_host *host);
936 void (*sff_dev_select)(struct ata_port *ap, unsigned int device);
937 void (*sff_set_devctl)(struct ata_port *ap, u8 ctl);
938 u8 (*sff_check_status)(struct ata_port *ap);
939 u8 (*sff_check_altstatus)(struct ata_port *ap);
940 void (*sff_tf_load)(struct ata_port *ap, const struct ata_taskfile *tf);
941 void (*sff_tf_read)(struct ata_port *ap, struct ata_taskfile *tf);
942 void (*sff_exec_command)(struct ata_port *ap,
944 unsigned int (*sff_data_xfer)(struct ata_queued_cmd *qc,
946 void (*sff_irq_on)(struct ata_port *);
947 bool (*sff_irq_check)(struct ata_port *);
948 void (*sff_irq_clear)(struct ata_port *);
949 void (*sff_drain_fifo)(struct ata_queued_cmd *qc);
952 void (*bmdma_setup)(struct ata_queued_cmd *qc);
953 void (*bmdma_start)(struct ata_queued_cmd *qc);
954 void (*bmdma_stop)(struct ata_queued_cmd *qc);
978 const struct ata_port_operations *inherits; argument