Lines Matching refs:tf

142 static void vsc_sata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf)  in vsc_sata_tf_load()  argument
145 unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR; in vsc_sata_tf_load()
153 if ((tf->ctl & ATA_NIEN) != (ap->last_ctl & ATA_NIEN)) { in vsc_sata_tf_load()
154 ap->last_ctl = tf->ctl; in vsc_sata_tf_load()
155 vsc_intr_mask_update(ap, tf->ctl & ATA_NIEN); in vsc_sata_tf_load()
157 if (is_addr && (tf->flags & ATA_TFLAG_LBA48)) { in vsc_sata_tf_load()
158 writew(tf->feature | (((u16)tf->hob_feature) << 8), in vsc_sata_tf_load()
160 writew(tf->nsect | (((u16)tf->hob_nsect) << 8), in vsc_sata_tf_load()
162 writew(tf->lbal | (((u16)tf->hob_lbal) << 8), in vsc_sata_tf_load()
164 writew(tf->lbam | (((u16)tf->hob_lbam) << 8), in vsc_sata_tf_load()
166 writew(tf->lbah | (((u16)tf->hob_lbah) << 8), in vsc_sata_tf_load()
169 writew(tf->feature, ioaddr->feature_addr); in vsc_sata_tf_load()
170 writew(tf->nsect, ioaddr->nsect_addr); in vsc_sata_tf_load()
171 writew(tf->lbal, ioaddr->lbal_addr); in vsc_sata_tf_load()
172 writew(tf->lbam, ioaddr->lbam_addr); in vsc_sata_tf_load()
173 writew(tf->lbah, ioaddr->lbah_addr); in vsc_sata_tf_load()
176 if (tf->flags & ATA_TFLAG_DEVICE) in vsc_sata_tf_load()
177 writeb(tf->device, ioaddr->device_addr); in vsc_sata_tf_load()
183 static void vsc_sata_tf_read(struct ata_port *ap, struct ata_taskfile *tf) in vsc_sata_tf_read() argument
188 tf->command = ata_sff_check_status(ap); in vsc_sata_tf_read()
189 tf->device = readw(ioaddr->device_addr); in vsc_sata_tf_read()
196 tf->feature = feature; in vsc_sata_tf_read()
197 tf->nsect = nsect; in vsc_sata_tf_read()
198 tf->lbal = lbal; in vsc_sata_tf_read()
199 tf->lbam = lbam; in vsc_sata_tf_read()
200 tf->lbah = lbah; in vsc_sata_tf_read()
202 if (tf->flags & ATA_TFLAG_LBA48) { in vsc_sata_tf_read()
203 tf->hob_feature = feature >> 8; in vsc_sata_tf_read()
204 tf->hob_nsect = nsect >> 8; in vsc_sata_tf_read()
205 tf->hob_lbal = lbal >> 8; in vsc_sata_tf_read()
206 tf->hob_lbam = lbam >> 8; in vsc_sata_tf_read()
207 tf->hob_lbah = lbah >> 8; in vsc_sata_tf_read()
230 if (qc && likely(!(qc->tf.flags & ATA_TFLAG_POLLING))) in vsc_port_intr()