diff options
author | Jens Axboe <jens.axboe@oracle.com> | 2007-07-25 08:13:56 +0200 |
---|---|---|
committer | Jens Axboe <jens.axboe@oracle.com> | 2007-10-16 11:21:00 +0200 |
commit | 55c16a70041ba55e235c5944dccb9c1de0dd3ca6 (patch) | |
tree | e48c1d9943fc52329cae1656ca59d24751dd9b98 /drivers/ide/cris/ide-cris.c | |
parent | ba2da2f8d61a9d2e24754c6311a4ab6a5e70060a (diff) | |
download | blackbird-obmc-linux-55c16a70041ba55e235c5944dccb9c1de0dd3ca6.tar.gz blackbird-obmc-linux-55c16a70041ba55e235c5944dccb9c1de0dd3ca6.zip |
IDE: sg chaining support
Acked-by: Bartlomiej Zolnierkiewicz <bzolnier@gmail.com>
Signed-off-by: Jens Axboe <jens.axboe@oracle.com>
Diffstat (limited to 'drivers/ide/cris/ide-cris.c')
-rw-r--r-- | drivers/ide/cris/ide-cris.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/drivers/ide/cris/ide-cris.c b/drivers/ide/cris/ide-cris.c index 2b4d2a0ae5c2..c306c9f534ab 100644 --- a/drivers/ide/cris/ide-cris.c +++ b/drivers/ide/cris/ide-cris.c @@ -939,7 +939,8 @@ static int cris_ide_build_dmatable (ide_drive_t *drive) /* group sequential buffers into one large buffer */ addr = page_to_phys(sg->page) + sg->offset; size = sg_dma_len(sg); - while (sg++, --i) { + while (--i) { + sg = sg_next(sg); if ((addr + size) != page_to_phys(sg->page) + sg->offset) break; size += sg_dma_len(sg); |