Rather than using the global variable, have celleb use its own variable to store the direct DMA offset.
Signed-off-by: Michael Ellerman <[EMAIL PROTECTED]> Signed-off-by: Arnd Bergmann <[EMAIL PROTECTED]> --- arch/powerpc/platforms/celleb/iommu.c | 6 ++++-- 1 files changed, 4 insertions(+), 2 deletions(-) Index: linux-2.6-new/arch/powerpc/platforms/celleb/iommu.c =================================================================== --- linux-2.6-new.orig/arch/powerpc/platforms/celleb/iommu.c +++ linux-2.6-new/arch/powerpc/platforms/celleb/iommu.c @@ -52,6 +52,8 @@ static int __init find_dma_window(u64 *i return 0; } +static unsigned long celleb_dma_direct_offset; + static void __init celleb_init_direct_mapping(void) { u64 lpar_addr, io_addr; @@ -69,13 +71,13 @@ static void __init celleb_init_direct_ma ioid, DMA_FLAGS); } - dma_direct_offset = dma_base; + celleb_dma_direct_offset = dma_base; } static void celleb_dma_dev_setup(struct device *dev) { dev->archdata.dma_ops = get_pci_dma_ops(); - dev->archdata.dma_data = &dma_direct_offset; + dev->archdata.dma_data = &celleb_dma_direct_offset; } static void celleb_pci_dma_dev_setup(struct pci_dev *pdev) -- _______________________________________________ Linuxppc-dev mailing list Linuxppc-dev@ozlabs.org https://ozlabs.org/mailman/listinfo/linuxppc-dev