FUJITA Tomonori wrote:> iommu code merges scatter/gather segments without considering a low> level driver's restrictions. The problem is that iommu code can't> access to the limitations because they are in request_queue.> > This patch adds a new structure, device_dma_parameters, including dma> information. A pointer to device_dma_parameters is added to struct> device.> > - there are only max_segment_size and segment_boundary_mask there but> we'll move more dma stuff in struct device (like dma_mask) to struct> device_dma_parameters later. segment_boundary_mask is not supported> yet.> > - new accessors for the dma parameters are added. So we can easily> change where to place struct device_dma_parameters in the future.> > - dma_get_max_seg_size returns 64K if dma_parms in struct device isn't> set up properly. 64K is the default max_segment_size in the block> layer.> > Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>> ---> include/linux/device.h | 11 +++++++++++> include/linux/dma-mapping.h | 15 +++++++++++++++> 2 files changed, 26 insertions(+), 0 deletions(-)