• Home
  • History
  • Annotate
  • Raw
  • Download
  • only in /netgear-WNDR4500v2-V1.0.0.60_1.0.38/src/linux/linux-2.6/drivers/ata/

Lines Matching refs:qc

135 static void adma_qc_prep(struct ata_queued_cmd *qc);
136 static unsigned int adma_qc_issue(struct ata_queued_cmd *qc);
137 static int adma_check_atapi_dma(struct ata_queued_cmd *qc);
138 static void adma_bmdma_stop(struct ata_queued_cmd *qc);
209 static int adma_check_atapi_dma(struct ata_queued_cmd *qc)
214 static void adma_bmdma_stop(struct ata_queued_cmd *qc)
296 static int adma_fill_sg(struct ata_queued_cmd *qc)
299 struct ata_port *ap = qc->ap;
303 u8 pFLAGS = pORD | ((qc->tf.flags & ATA_TFLAG_WRITE) ? pDIRO : 0);
305 ata_for_each_sg(sg, qc) {
317 if (ata_sg_is_last(sg, qc))
320 buf[i++] = qc->dev->dma_mode & 0xf;
334 static void adma_qc_prep(struct ata_queued_cmd *qc)
336 struct adma_port_priv *pp = qc->ap->private_data;
343 adma_enter_reg_mode(qc->ap);
344 if (qc->tf.protocol != ATA_PROT_DMA) {
345 ata_qc_prep(qc);
364 buf[i++] = qc->tf.device;
366 if ((qc->tf.flags & ATA_TFLAG_LBA48)) {
367 buf[i++] = qc->tf.hob_nsect;
369 buf[i++] = qc->tf.hob_lbal;
371 buf[i++] = qc->tf.hob_lbam;
373 buf[i++] = qc->tf.hob_lbah;
376 buf[i++] = qc->tf.nsect;
378 buf[i++] = qc->tf.lbal;
380 buf[i++] = qc->tf.lbam;
382 buf[i++] = qc->tf.lbah;
388 buf[i++] = qc->tf.command;
394 i = adma_fill_sg(qc);
398 static inline void adma_packet_start(struct ata_queued_cmd *qc)
400 struct ata_port *ap = qc->ap;
409 static unsigned int adma_qc_issue(struct ata_queued_cmd *qc)
411 struct adma_port_priv *pp = qc->ap->private_data;
413 switch (qc->tf.protocol) {
416 adma_packet_start(qc);
428 return ata_qc_issue_prot(qc);
438 struct ata_queued_cmd *qc;
451 qc = ata_qc_from_tag(ap, ap->active_tag);
452 if (qc && (!(qc->tf.flags & ATA_TFLAG_POLLING))) {
454 qc->err_mask |= AC_ERR_OTHER;
456 qc->err_mask |= AC_ERR_OTHER;
458 ata_qc_complete(qc);
472 struct ata_queued_cmd *qc;
476 qc = ata_qc_from_tag(ap, ap->active_tag);
477 if (qc && (!(qc->tf.flags & ATA_TFLAG_POLLING))) {
484 ap->print_id, qc->tf.protocol, status);
488 qc->err_mask |= ac_err_mask(status);
489 ata_qc_complete(qc);