summaryrefslogtreecommitdiffstats
path: root/arch/unicore32/mm
diff options
context:
space:
mode:
authorGuanXuetao <gxt@mprc.pku.edu.cn>2011-02-27 12:46:06 +0800
committerGuanXuetao <gxt@mprc.pku.edu.cn>2011-03-17 09:19:21 +0800
commit4fde87cb13a29c06e0b4c2cba86445492098fbc2 (patch)
treecbd99cd229d7258e846f91c3b7efe00897c5eab6 /arch/unicore32/mm
parentce443ab5fd536941da1d529ba3963324f941fc29 (diff)
downloadop-kernel-dev-4fde87cb13a29c06e0b4c2cba86445492098fbc2.zip
op-kernel-dev-4fde87cb13a29c06e0b4c2cba86445492098fbc2.tar.gz
unicore32: replace unicore32-specific iomap functions with generic lib implementation
1. define and enable CONFIG_GENERIC_IOMAP 2. define unicore32-specific PCI_IOBASE for asm-generic/io.h 3. define HAVE_ARCH_PIO_SIZE and unicore32-specific PIO_* macros 4. remove all unicore32-specific iomap functions Signed-off-by: Guan Xuetao <gxt@mprc.pku.edu.cn> Reviewed-and-Acked-by: Arnd Bergmann <arnd@arndb.de>
Diffstat (limited to 'arch/unicore32/mm')
-rw-r--r--arch/unicore32/mm/Makefile2
-rw-r--r--arch/unicore32/mm/iomap.c56
2 files changed, 1 insertions, 57 deletions
diff --git a/arch/unicore32/mm/Makefile b/arch/unicore32/mm/Makefile
index f3ff410..46c1666 100644
--- a/arch/unicore32/mm/Makefile
+++ b/arch/unicore32/mm/Makefile
@@ -3,7 +3,7 @@
#
obj-y := extable.o fault.o init.o pgd.o mmu.o
-obj-y += iomap.o flush.o ioremap.o
+obj-y += flush.o ioremap.o
obj-$(CONFIG_SWIOTLB) += dma-swiotlb.o
diff --git a/arch/unicore32/mm/iomap.c b/arch/unicore32/mm/iomap.c
deleted file mode 100644
index a7e1a3d..0000000
--- a/arch/unicore32/mm/iomap.c
+++ /dev/null
@@ -1,56 +0,0 @@
-/*
- * linux/arch/unicore32/mm/iomap.c
- *
- * Code specific to PKUnity SoC and UniCore ISA
- *
- * Copyright (C) 2001-2010 GUAN Xue-tao
- *
- * This program is free software; you can redistribute it and/or modify
- * it under the terms of the GNU General Public License version 2 as
- * published by the Free Software Foundation.
- *
- * Map IO port and PCI memory spaces so that {read,write}[bwl] can
- * be used to access this memory.
- */
-#include <linux/module.h>
-#include <linux/pci.h>
-#include <linux/ioport.h>
-#include <linux/io.h>
-
-#ifdef __io
-void __iomem *ioport_map(unsigned long port, unsigned int nr)
-{
- /* we map PC lagcy 64K IO port to PCI IO space 0x80030000 */
- return (void __iomem *) (unsigned long)
- io_p2v((port & 0xffff) + PKUNITY_PCILIO_BASE);
-}
-EXPORT_SYMBOL(ioport_map);
-
-void ioport_unmap(void __iomem *addr)
-{
-}
-EXPORT_SYMBOL(ioport_unmap);
-#endif
-
-#ifdef CONFIG_PCI
-void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long maxlen)
-{
- resource_size_t start = pci_resource_start(dev, bar);
- resource_size_t len = pci_resource_len(dev, bar);
- unsigned long flags = pci_resource_flags(dev, bar);
-
- if (!len || !start)
- return NULL;
- if (maxlen && len > maxlen)
- len = maxlen;
- if (flags & IORESOURCE_IO)
- return ioport_map(start, len);
- if (flags & IORESOURCE_MEM) {
- if (flags & IORESOURCE_CACHEABLE)
- return ioremap(start, len);
- return ioremap_nocache(start, len);
- }
- return NULL;
-}
-EXPORT_SYMBOL(pci_iomap);
-#endif
OpenPOWER on IntegriCloud