--- zzzz-none-000/linux-2.4.17/include/asm-ppc/scatterlist.h 2001-10-21 17:13:07.000000000 +0000 +++ sangam-fb-322/linux-2.4.17/include/asm-ppc/scatterlist.h 2004-11-24 13:21:50.000000000 +0000 @@ -1,5 +1,5 @@ /* - * BK Id: SCCS/s.scatterlist.h 1.9 10/15/01 22:51:33 paulus + * BK Id: SCCS/s.scatterlist.h 1.14 10/22/01 10:27:38 paulus */ #ifdef __KERNEL__ #ifndef _PPC_SCATTERLIST_H @@ -12,9 +12,12 @@ * or NULL for highmem page */ struct page * page; /* Location for highmem page, if any */ unsigned int offset; /* for highmem, page offset */ + unsigned int length; /* length at address or page+offset */ - dma_addr_t dma_address; /* phys/bus dma address */ - unsigned int length; /* length */ + dma_addr_t dma_address; /* phys/bus dma address */ + unsigned int dma_length; /* number of bytes mapped at dma_address */ + /* Note that if we coalesce multiple scatterlist elements, + dma_length can be different from length */ }; /* @@ -25,7 +28,7 @@ * is 0. */ #define sg_dma_address(sg) ((sg)->dma_address) -#define sg_dma_len(sg) ((sg)->length) +#define sg_dma_len(sg) ((sg)->dma_length) #endif /* !(_PPC_SCATTERLIST_H) */ #endif /* __KERNEL__ */