ata: libata-sff: tracepoints for HSM state machine
[linux-2.6-microblaze.git] / drivers / ata / libata-sff.c
index 76bd876..b544bdc 100644 (file)
@@ -668,7 +668,7 @@ static void ata_pio_sector(struct ata_queued_cmd *qc)
        page = nth_page(page, (offset >> PAGE_SHIFT));
        offset %= PAGE_SIZE;
 
-       DPRINTK("data %s\n", qc->tf.flags & ATA_TFLAG_WRITE ? "write" : "read");
+       trace_ata_sff_pio_transfer_data(qc, offset, qc->sect_size);
 
        /*
         * Split the transfer when it splits a page boundary.  Note that the
@@ -738,7 +738,7 @@ static void ata_pio_sectors(struct ata_queued_cmd *qc)
 static void atapi_send_cdb(struct ata_port *ap, struct ata_queued_cmd *qc)
 {
        /* send SCSI cdb */
-       DPRINTK("send cdb\n");
+       trace_atapi_send_cdb(qc, 0, qc->dev->cdb_len);
        WARN_ON_ONCE(qc->dev->cdb_len < 12);
 
        ap->ops->sff_data_xfer(qc, qc->cdb, qc->dev->cdb_len, 1);
@@ -809,7 +809,7 @@ next_sg:
        /* don't cross page boundaries */
        count = min(count, (unsigned int)PAGE_SIZE - offset);
 
-       DPRINTK("data %s\n", qc->tf.flags & ATA_TFLAG_WRITE ? "write" : "read");
+       trace_atapi_pio_transfer_data(qc, offset, count);
 
        /* do the actual data transfer */
        buf = kmap_atomic(page);
@@ -991,8 +991,7 @@ int ata_sff_hsm_move(struct ata_port *ap, struct ata_queued_cmd *qc,
        WARN_ON_ONCE(in_wq != ata_hsm_ok_in_wq(ap, qc));
 
 fsm_start:
-       DPRINTK("ata%u: protocol %d task_state %d (dev_stat 0x%X)\n",
-               ap->print_id, qc->tf.protocol, ap->hsm_task_state, status);
+       trace_ata_sff_hsm_state(qc, status);
 
        switch (ap->hsm_task_state) {
        case HSM_ST_FIRST:
@@ -1193,8 +1192,7 @@ fsm_start:
                }
 
                /* no more data to transfer */
-               DPRINTK("ata%u: dev %u command complete, drv_stat 0x%x\n",
-                       ap->print_id, qc->dev->devno, status);
+               trace_ata_sff_hsm_command_complete(qc, status);
 
                WARN_ON_ONCE(qc->err_mask & (AC_ERR_DEV | AC_ERR_HSM));
 
@@ -1251,7 +1249,7 @@ EXPORT_SYMBOL_GPL(ata_sff_queue_pio_task);
 
 void ata_sff_flush_pio_task(struct ata_port *ap)
 {
-       DPRINTK("ENTER\n");
+       trace_ata_sff_flush_pio_task(ap);
 
        cancel_delayed_work_sync(&ap->sff_pio_task);
 
@@ -1268,9 +1266,6 @@ void ata_sff_flush_pio_task(struct ata_port *ap)
        spin_unlock_irq(ap->lock);
 
        ap->sff_pio_task_link = NULL;
-
-       if (ata_msg_ctl(ap))
-               ata_port_dbg(ap, "%s: EXIT\n", __func__);
 }
 
 static void ata_sff_pio_task(struct work_struct *work)
@@ -1467,8 +1462,7 @@ static unsigned int __ata_sff_port_intr(struct ata_port *ap,
 {
        u8 status;
 
-       VPRINTK("ata%u: protocol %d task_state %d\n",
-               ap->print_id, qc->tf.protocol, ap->hsm_task_state);
+       trace_ata_sff_port_intr(qc, hsmv_on_idle);
 
        /* Check whether we are expecting interrupt in this state */
        switch (ap->hsm_task_state) {