Lines Matching refs:tf

159 static void k2_sata_tf_load(struct ata_port *ap, const struct ata_taskfile *tf)
162 unsigned int is_addr = tf->flags & ATA_TFLAG_ISADDR;
164 if (tf->ctl != ap->last_ctl) {
165 writeb(tf->ctl, ioaddr->ctl_addr);
166 ap->last_ctl = tf->ctl;
169 if (is_addr && (tf->flags & ATA_TFLAG_LBA48)) {
170 writew(tf->feature | (((u16)tf->hob_feature) << 8),
172 writew(tf->nsect | (((u16)tf->hob_nsect) << 8),
174 writew(tf->lbal | (((u16)tf->hob_lbal) << 8),
176 writew(tf->lbam | (((u16)tf->hob_lbam) << 8),
178 writew(tf->lbah | (((u16)tf->hob_lbah) << 8),
181 writew(tf->feature, ioaddr->feature_addr);
182 writew(tf->nsect, ioaddr->nsect_addr);
183 writew(tf->lbal, ioaddr->lbal_addr);
184 writew(tf->lbam, ioaddr->lbam_addr);
185 writew(tf->lbah, ioaddr->lbah_addr);
188 if (tf->flags & ATA_TFLAG_DEVICE)
189 writeb(tf->device, ioaddr->device_addr);
195 static void k2_sata_tf_read(struct ata_port *ap, struct ata_taskfile *tf)
200 tf->status = k2_stat_check_status(ap);
201 tf->device = readw(ioaddr->device_addr);
208 tf->error = error;
209 tf->nsect = nsect;
210 tf->lbal = lbal;
211 tf->lbam = lbam;
212 tf->lbah = lbah;
214 if (tf->flags & ATA_TFLAG_LBA48) {
215 tf->hob_feature = error >> 8;
216 tf->hob_nsect = nsect >> 8;
217 tf->hob_lbal = lbal >> 8;
218 tf->hob_lbam = lbam >> 8;
219 tf->hob_lbah = lbah >> 8;
234 unsigned int rw = (qc->tf.flags & ATA_TFLAG_WRITE);
250 if (qc->tf.protocol != ATA_PROT_DMA)
251 ap->ops->sff_exec_command(ap, &qc->tf);
294 if (qc->tf.protocol == ATA_PROT_DMA)
295 ap->ops->sff_exec_command(ap, &qc->tf);