swiotlb: remove __weak hooks in favour of architecture-specific functions

From: Ian Campbell
Date: Thu May 21 2009 - 12:15:46 EST


At the end of this series there are no more __weak functions in
lib/swiotlb.c

The series adds several hook functions to the x86 architecture. Would
they be preferred as a struct x86_swiotlb_ops or as individual hooks?

I was unsure what to do about powerpc in most places since the
existing support seems to in-progress so it wasn't always clear where
to put the implementation. If there is a tree somewhere with more
complete support I'll be happy to provide additional patches.

Boot tested on x86 under xen but not even compiled for ia64 or
powerpc. If someone can point me to a decent source of cross compilers
I can sort that out. (http://www.kernel.org/pub/tools/crosstool/ seems
to be out-of-date and only has ia64 in any case)

Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Cc: FUJITA Tomonori <fujita.tomonori@xxxxxxxxxxxxx>
Cc: Jeremy Fitzhardinge <jeremy@xxxxxxxx>
Cc: Becky Bruce <beckyb@xxxxxxxxxxxxxxxxxxx>
Cc: Olaf Kirch <okir@xxxxxxx>
Cc: Ingo Molnar <mingo@xxxxxxx>
Cc: Greg KH <gregkh@xxxxxxx>
Cc: xen-devel <xendevel@xxxxxxxxxxxxxxxxxxx>
Cc: x86 maintainers <x86@xxxxxxxxxx>
Cc: lkml <linux-kernel@xxxxxxxxxxxxxxx>

---
arch/ia64/include/asm/dma-mapping.h | 29 ++++++++++++++
arch/ia64/kernel/pci-swiotlb.c | 11 +++++
arch/powerpc/include/asm/dma-mapping.h | 5 ++
arch/x86/include/asm/agp.h | 4 +-
arch/x86/include/asm/dma-mapping.h | 34 +++++++++++++++++
arch/x86/include/asm/xen/iommu.h | 4 ++
arch/x86/kernel/pci-dma.c | 6 ++-
arch/x86/kernel/pci-gart_64.c | 4 +-
arch/x86/kernel/pci-nommu.c | 3 +-
arch/x86/kernel/pci-swiotlb.c | 32 ++++++++++++++++
arch/x86/xen/Makefile | 3 +-
arch/x86/xen/pci-swiotlb.c | 53 --------------------------
drivers/pci/xen-iommu.c | 20 ++++++++--
include/linux/dma-mapping.h | 5 --
include/linux/swiotlb.h | 10 -----
include/xen/swiotlb.h | 5 --
lib/swiotlb.c | 64 +++++++-------------------------
17 files changed, 156 insertions(+), 136 deletions(-)
--
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/