Jens Axboe writes:
> Doesn't look like it's needed at all, at least you never turn on highmem
> I/O with ide_toggle_bounce() :-)
Foo, neither I do. :(
> BTW, it would be ok to export that from ide-dma.c instead of duplicating
> it in ide-pmac.
Looking at it again, both ide_build_sglist and ide_raw_build_sglist do
*almost* what we want. If ide-pmac used hwif->sg_table instead of
pmif->sg_table, and if ide_[raw_]build_sglist were exported and took
the maximum number of entries as a parameter instead of using the
PRD_ENTRIES constant, then ide-pmac wouldn't need to have its own
versions of those routines. Would those changes be OK?
Ben, any reason why we have to use pmif->sg_table rather than
hwif->sg_table?
> Also, can you grow sg segments indefinitely?
Each DBDMA (descriptor-based DMA) command has a 16-byte length field,
so is limited to 65535 bytes. There is code in pmac_ide_build_dmatable
to create multiple DBDMA commands from a single scatterlist element if
necessary. We should limit the lengths of the segments instead, then
we could have a 1-1 correspondence of scatterlist elements to DBDMA
command blocks.
Paul.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
This archive was generated by hypermail 2b29 : Sun Sep 15 2002 - 22:00:28 EST