X-Git-Url: https://err.no/cgi-bin/gitweb.cgi?a=blobdiff_plain;f=drivers%2Fblock%2Fxsysace.c;h=4a7a059ebaf70b83f564430883ad517966c635de;hb=28afe961a18f77b2249062499bdbf70fd2ec6bba;hp=2c81465fd60c9c10c6b6b0ee689cc58b01e458a1;hpb=e189f3495c4e30fc84fc9241096edf3932e23439;p=linux-2.6 diff --git a/drivers/block/xsysace.c b/drivers/block/xsysace.c index 2c81465fd6..4a7a059eba 100644 --- a/drivers/block/xsysace.c +++ b/drivers/block/xsysace.c @@ -483,7 +483,6 @@ static void ace_fsm_dostate(struct ace_device *ace) u32 status; u16 val; int count; - int i; #if defined(DEBUG) dev_dbg(ace->dev, "fsm_state=%i, id_req_count=%i\n", @@ -688,7 +687,6 @@ static void ace_fsm_dostate(struct ace_device *ace) } /* Transfer the next buffer */ - i = 16; if (ace->fsm_task == ACE_TASK_WRITE) ace->reg_ops->dataout(ace); else @@ -702,8 +700,8 @@ static void ace_fsm_dostate(struct ace_device *ace) } /* bio finished; is there another one? */ - i = ace->req->current_nr_sectors; - if (__blk_end_request(ace->req, 0, i)) { + if (__blk_end_request(ace->req, 0, + blk_rq_cur_bytes(ace->req))) { /* dev_dbg(ace->dev, "next block; h=%li c=%i\n", * ace->req->hard_nr_sectors, * ace->req->current_nr_sectors); @@ -1204,8 +1202,10 @@ static int __devexit ace_of_remove(struct of_device *op) } /* Match table for of_platform binding */ -static struct of_device_id __devinit ace_of_match[] = { - { .compatible = "xilinx,xsysace", }, +static struct of_device_id ace_of_match[] __devinitdata = { + { .compatible = "xlnx,opb-sysace-1.00.b", }, + { .compatible = "xlnx,opb-sysace-1.00.c", }, + { .compatible = "xlnx,xps-sysace-1.00.a", }, {}, }; MODULE_DEVICE_TABLE(of, ace_of_match);