On Wed, 8 Apr 2009 23:59:18 -0500
Kumar Gala <galak@xxxxxxxxxxxxxxxxxxx> wrote:
On Apr 8, 2009, at 6:01 PM, FUJITA Tomonori wrote:
Becky's patches of last week also added __weak annotations to
swiotlb_bus_to_virt, virt_to_bus and bus_to_phys; added the hwdev
parameter to swiotlb_bus_to_phys; and added a weak
swiotlb_arch_address_needs_mapping. I assume that was needed because
powerpc needs non-trivial implementations for those functions.
Hmm, what she added are wrappers of virt_to_bus and bus_to_virt. We
can remove these and directly use virt_to_bus and bus_to_virt.
About __weak address_needs_mapping function, as I said, removing it
and using dma_map_ops is a proper solution.
Is this something you are looking at doing in the .31 timeframe?
I'm looking at the fact that we need to switch over to using struct
dma_map_ops on ppc. (I'm guessing this might be the patches you
mentioned the other day). If so did you add set_dma_mask() to the
generic dma_map_ops?
Yeah, I'll send patches to convert ppc to use dma_map_ops. In .31
timeframe, I plan to:
- add a generic dma-mapping.h and convert ia64, x86, and ppc to use it
- clean up swiotlb.
- try to convert archs supporting multiple dma ops to use dma_map_ops
- rewrite ia64 and x86 dma ops initialization
BTW, the ppc specific swiotlb patchset is available?