aboutsummaryrefslogtreecommitdiffstats
path: root/include/linux/libata.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/libata.h')
-rw-r--r--include/linux/libata.h8
1 files changed, 6 insertions, 2 deletions
diff --git a/include/linux/libata.h b/include/linux/libata.h
index ab275483032..22aa69e2090 100644
--- a/include/linux/libata.h
+++ b/include/linux/libata.h
@@ -177,6 +177,7 @@ enum {
177 * Register FIS clearing BSY */ 177 * Register FIS clearing BSY */
178 ATA_FLAG_DEBUGMSG = (1 << 13), 178 ATA_FLAG_DEBUGMSG = (1 << 13),
179 ATA_FLAG_SETXFER_POLLING= (1 << 14), /* use polling for SETXFER */ 179 ATA_FLAG_SETXFER_POLLING= (1 << 14), /* use polling for SETXFER */
180 ATA_FLAG_IGN_SIMPLEX = (1 << 15), /* ignore SIMPLEX */
180 181
181 /* The following flag belongs to ap->pflags but is kept in 182 /* The following flag belongs to ap->pflags but is kept in
182 * ap->flags because it's referenced in many LLDs and will be 183 * ap->flags because it's referenced in many LLDs and will be
@@ -612,11 +613,11 @@ struct ata_port_operations {
612 void (*dev_select)(struct ata_port *ap, unsigned int device); 613 void (*dev_select)(struct ata_port *ap, unsigned int device);
613 614
614 void (*phy_reset) (struct ata_port *ap); /* obsolete */ 615 void (*phy_reset) (struct ata_port *ap); /* obsolete */
615 void (*set_mode) (struct ata_port *ap); 616 int (*set_mode) (struct ata_port *ap, struct ata_device **r_failed_dev);
616 617
617 void (*post_set_mode) (struct ata_port *ap); 618 void (*post_set_mode) (struct ata_port *ap);
618 619
619 int (*check_atapi_dma) (struct ata_queued_cmd *qc); 620 int (*check_atapi_dma) (struct ata_queued_cmd *qc);
620 621
621 void (*bmdma_setup) (struct ata_queued_cmd *qc); 622 void (*bmdma_setup) (struct ata_queued_cmd *qc);
622 void (*bmdma_start) (struct ata_queued_cmd *qc); 623 void (*bmdma_start) (struct ata_queued_cmd *qc);
@@ -1143,12 +1144,15 @@ static inline void ata_tf_init(struct ata_device *dev, struct ata_taskfile *tf)
1143 1144
1144static inline void ata_qc_reinit(struct ata_queued_cmd *qc) 1145static inline void ata_qc_reinit(struct ata_queued_cmd *qc)
1145{ 1146{
1147 qc->dma_dir = DMA_NONE;
1146 qc->__sg = NULL; 1148 qc->__sg = NULL;
1147 qc->flags = 0; 1149 qc->flags = 0;
1148 qc->cursect = qc->cursg = qc->cursg_ofs = 0; 1150 qc->cursect = qc->cursg = qc->cursg_ofs = 0;
1149 qc->nsect = 0; 1151 qc->nsect = 0;
1150 qc->nbytes = qc->curbytes = 0; 1152 qc->nbytes = qc->curbytes = 0;
1153 qc->n_elem = 0;
1151 qc->err_mask = 0; 1154 qc->err_mask = 0;
1155 qc->pad_len = 0;
1152 1156
1153 ata_tf_init(qc->dev, &qc->tf); 1157 ata_tf_init(qc->dev, &qc->tf);
1154 1158