diff options
Diffstat (limited to 'drivers/block/xsysace.c')
-rw-r--r-- | drivers/block/xsysace.c | 17 |
1 files changed, 9 insertions, 8 deletions
diff --git a/drivers/block/xsysace.c b/drivers/block/xsysace.c index 5722931d14c5..97c99b43f881 100644 --- a/drivers/block/xsysace.c +++ b/drivers/block/xsysace.c | |||
@@ -646,13 +646,14 @@ static void ace_fsm_dostate(struct ace_device *ace) | |||
646 | /* Okay, it's a data request, set it up for transfer */ | 646 | /* Okay, it's a data request, set it up for transfer */ |
647 | dev_dbg(ace->dev, | 647 | dev_dbg(ace->dev, |
648 | "request: sec=%llx hcnt=%x, ccnt=%x, dir=%i\n", | 648 | "request: sec=%llx hcnt=%x, ccnt=%x, dir=%i\n", |
649 | (unsigned long long) req->sector, blk_rq_sectors(req), | 649 | (unsigned long long)blk_rq_pos(req), |
650 | req->current_nr_sectors, rq_data_dir(req)); | 650 | blk_rq_sectors(req), blk_rq_cur_sectors(req), |
651 | rq_data_dir(req)); | ||
651 | 652 | ||
652 | ace->req = req; | 653 | ace->req = req; |
653 | ace->data_ptr = req->buffer; | 654 | ace->data_ptr = req->buffer; |
654 | ace->data_count = req->current_nr_sectors * ACE_BUF_PER_SECTOR; | 655 | ace->data_count = blk_rq_cur_sectors(req) * ACE_BUF_PER_SECTOR; |
655 | ace_out32(ace, ACE_MPULBA, req->sector & 0x0FFFFFFF); | 656 | ace_out32(ace, ACE_MPULBA, blk_rq_pos(req) & 0x0FFFFFFF); |
656 | 657 | ||
657 | count = blk_rq_sectors(req); | 658 | count = blk_rq_sectors(req); |
658 | if (rq_data_dir(req)) { | 659 | if (rq_data_dir(req)) { |
@@ -688,7 +689,7 @@ static void ace_fsm_dostate(struct ace_device *ace) | |||
688 | dev_dbg(ace->dev, | 689 | dev_dbg(ace->dev, |
689 | "CFBSY set; t=%i iter=%i c=%i dc=%i irq=%i\n", | 690 | "CFBSY set; t=%i iter=%i c=%i dc=%i irq=%i\n", |
690 | ace->fsm_task, ace->fsm_iter_num, | 691 | ace->fsm_task, ace->fsm_iter_num, |
691 | ace->req->current_nr_sectors * 16, | 692 | blk_rq_cur_sectors(ace->req) * 16, |
692 | ace->data_count, ace->in_irq); | 693 | ace->data_count, ace->in_irq); |
693 | ace_fsm_yield(ace); /* need to poll CFBSY bit */ | 694 | ace_fsm_yield(ace); /* need to poll CFBSY bit */ |
694 | break; | 695 | break; |
@@ -697,7 +698,7 @@ static void ace_fsm_dostate(struct ace_device *ace) | |||
697 | dev_dbg(ace->dev, | 698 | dev_dbg(ace->dev, |
698 | "DATABUF not set; t=%i iter=%i c=%i dc=%i irq=%i\n", | 699 | "DATABUF not set; t=%i iter=%i c=%i dc=%i irq=%i\n", |
699 | ace->fsm_task, ace->fsm_iter_num, | 700 | ace->fsm_task, ace->fsm_iter_num, |
700 | ace->req->current_nr_sectors * 16, | 701 | blk_rq_cur_sectors(ace->req) * 16, |
701 | ace->data_count, ace->in_irq); | 702 | ace->data_count, ace->in_irq); |
702 | ace_fsm_yieldirq(ace); | 703 | ace_fsm_yieldirq(ace); |
703 | break; | 704 | break; |
@@ -721,10 +722,10 @@ static void ace_fsm_dostate(struct ace_device *ace) | |||
721 | blk_rq_cur_bytes(ace->req))) { | 722 | blk_rq_cur_bytes(ace->req))) { |
722 | /* dev_dbg(ace->dev, "next block; h=%u c=%u\n", | 723 | /* dev_dbg(ace->dev, "next block; h=%u c=%u\n", |
723 | * blk_rq_sectors(ace->req), | 724 | * blk_rq_sectors(ace->req), |
724 | * ace->req->current_nr_sectors); | 725 | * blk_rq_cur_sectors(ace->req)); |
725 | */ | 726 | */ |
726 | ace->data_ptr = ace->req->buffer; | 727 | ace->data_ptr = ace->req->buffer; |
727 | ace->data_count = ace->req->current_nr_sectors * 16; | 728 | ace->data_count = blk_rq_cur_sectors(ace->req) * 16; |
728 | ace_fsm_yieldirq(ace); | 729 | ace_fsm_yieldirq(ace); |
729 | break; | 730 | break; |
730 | } | 731 | } |