diff options
author | Paul Mundt <lethal@linux-sh.org> | 2007-10-01 17:36:47 +0900 |
---|---|---|
committer | Paul Mundt <lethal@linux-sh.org> | 2007-10-01 17:36:47 +0900 |
commit | 749c84966c990092da20203a80e0749b614c79a6 (patch) | |
tree | 372b967a397d636f3cf6937a644d56660ffbfbe2 | |
parent | 6b3d7f02a180af0d711d259adb4eccde1c3f10cd (diff) | |
download | op-kernel-dev-749c84966c990092da20203a80e0749b614c79a6.zip op-kernel-dev-749c84966c990092da20203a80e0749b614c79a6.tar.gz |
sh64: Some symbol exports and build fixes.
This fixes up misc build issues that were hit on the non-cayman
boards. Additionally, quite a few symbols needed to be exported
to fix the module build.
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
-rw-r--r-- | arch/sh64/kernel/alphanum.c | 1 | ||||
-rw-r--r-- | arch/sh64/kernel/pci-dma.c | 4 | ||||
-rw-r--r-- | arch/sh64/kernel/sh_ksyms.c | 26 | ||||
-rw-r--r-- | arch/sh64/lib/c-checksum.c | 3 | ||||
-rw-r--r-- | arch/sh64/lib/iomap.c | 10 | ||||
-rw-r--r-- | arch/sh64/mm/ioremap.c | 7 |
6 files changed, 23 insertions, 28 deletions
diff --git a/arch/sh64/kernel/alphanum.c b/arch/sh64/kernel/alphanum.c index 91707c1..d1619d9 100644 --- a/arch/sh64/kernel/alphanum.c +++ b/arch/sh64/kernel/alphanum.c @@ -13,7 +13,6 @@ #include <linux/sched.h> void mach_alphanum(int pos, unsigned char val); -void mach_led(int pos, int val); void print_seg(char *file, int line) { diff --git a/arch/sh64/kernel/pci-dma.c b/arch/sh64/kernel/pci-dma.c index a9328f8..8875a2a 100644 --- a/arch/sh64/kernel/pci-dma.c +++ b/arch/sh64/kernel/pci-dma.c @@ -11,6 +11,7 @@ #include <linux/mm.h> #include <linux/string.h> #include <linux/pci.h> +#include <linux/module.h> #include <asm/io.h> void *consistent_alloc(struct pci_dev *hwdev, size_t size, @@ -36,6 +37,7 @@ void *consistent_alloc(struct pci_dev *hwdev, size_t size, return vp; } +EXPORT_SYMBOL(consistent_alloc); void consistent_free(struct pci_dev *hwdev, size_t size, void *vaddr, dma_addr_t dma_handle) @@ -47,4 +49,4 @@ void consistent_free(struct pci_dev *hwdev, size_t size, iounmap(vaddr); } - +EXPORT_SYMBOL(consistent_free); diff --git a/arch/sh64/kernel/sh_ksyms.c b/arch/sh64/kernel/sh_ksyms.c index 461ea3d..962c732 100644 --- a/arch/sh64/kernel/sh_ksyms.c +++ b/arch/sh64/kernel/sh_ksyms.c @@ -31,16 +31,11 @@ extern int dump_fpu(struct pt_regs *, elf_fpregset_t *); /* platform dependent support */ EXPORT_SYMBOL(dump_fpu); -EXPORT_SYMBOL(iounmap); -EXPORT_SYMBOL(enable_irq); -EXPORT_SYMBOL(disable_irq); EXPORT_SYMBOL(kernel_thread); /* Networking helper routines. */ EXPORT_SYMBOL(csum_partial_copy_nocheck); -EXPORT_SYMBOL(strstr); - #ifdef CONFIG_VT EXPORT_SYMBOL(screen_info); #endif @@ -50,27 +45,22 @@ EXPORT_SYMBOL(__down_trylock); EXPORT_SYMBOL(__up); EXPORT_SYMBOL(__put_user_asm_l); EXPORT_SYMBOL(__get_user_asm_l); -EXPORT_SYMBOL(memcmp); EXPORT_SYMBOL(memcpy); -EXPORT_SYMBOL(memset); -EXPORT_SYMBOL(memscan); -EXPORT_SYMBOL(strchr); -EXPORT_SYMBOL(strlen); +EXPORT_SYMBOL(udelay); +EXPORT_SYMBOL(__udelay); +EXPORT_SYMBOL(ndelay); +EXPORT_SYMBOL(__ndelay); EXPORT_SYMBOL(flush_dcache_page); /* For ext3 */ EXPORT_SYMBOL(sh64_page_clear); /* Ugh. These come in from libgcc.a at link time. */ - -extern void __sdivsi3(void); -extern void __muldi3(void); -extern void __udivsi3(void); +#define DECLARE_EXPORT(name) extern void name(void);EXPORT_SYMBOL(name) extern char __div_table; -EXPORT_SYMBOL(__sdivsi3); -EXPORT_SYMBOL(__muldi3); -EXPORT_SYMBOL(__udivsi3); EXPORT_SYMBOL(__div_table); - +DECLARE_EXPORT(__sdivsi3); +DECLARE_EXPORT(__muldi3); +DECLARE_EXPORT(__udivsi3); diff --git a/arch/sh64/lib/c-checksum.c b/arch/sh64/lib/c-checksum.c index bd55017..053137a 100644 --- a/arch/sh64/lib/c-checksum.c +++ b/arch/sh64/lib/c-checksum.c @@ -10,6 +10,7 @@ #include <linux/string.h> #include <linux/errno.h> #include <linux/kernel.h> +#include <linux/module.h> #include <asm/byteorder.h> #include <asm/uaccess.h> @@ -110,7 +111,7 @@ static unsigned long do_csum(const unsigned char *buff, int len) if (odd) result = ((result >> 8) & 0xff) | ((result & 0xff) << 8); - pr_debug("\nCHECKSUM is 0x%x\n", result); + pr_debug("\nCHECKSUM is 0x%lx\n", result); out: return result; diff --git a/arch/sh64/lib/iomap.c b/arch/sh64/lib/iomap.c index 5cd3d5e..253d1e3 100644 --- a/arch/sh64/lib/iomap.c +++ b/arch/sh64/lib/iomap.c @@ -17,12 +17,15 @@ ioport_map(unsigned long port, unsigned int len) { return (void __iomem *)port; } +EXPORT_SYMBOL(ioport_map); void ioport_unmap(void __iomem *addr) { /* Nothing .. */ } +EXPORT_SYMBOL(ioport_unmap); +#ifdef CONFIG_PCI void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long max) { unsigned long start = pci_resource_start(dev, bar); @@ -41,14 +44,11 @@ void __iomem *pci_iomap(struct pci_dev *dev, int bar, unsigned long max) /* What? */ return NULL; } +EXPORT_SYMBOL(pci_iomap); void pci_iounmap(struct pci_dev *dev, void __iomem *addr) { /* Nothing .. */ } - -EXPORT_SYMBOL(ioport_map); -EXPORT_SYMBOL(ioport_unmap); -EXPORT_SYMBOL(pci_iomap); EXPORT_SYMBOL(pci_iounmap); - +#endif diff --git a/arch/sh64/mm/ioremap.c b/arch/sh64/mm/ioremap.c index 9908577..535304e 100644 --- a/arch/sh64/mm/ioremap.c +++ b/arch/sh64/mm/ioremap.c @@ -19,11 +19,12 @@ #include <linux/sched.h> #include <linux/string.h> #include <linux/io.h> -#include <asm/pgalloc.h> -#include <asm/tlbflush.h> #include <linux/ioport.h> #include <linux/bootmem.h> #include <linux/proc_fs.h> +#include <linux/module.h> +#include <asm/pgalloc.h> +#include <asm/tlbflush.h> static void shmedia_mapioaddr(unsigned long, unsigned long); static unsigned long shmedia_ioremap(struct resource *, u32, int); @@ -80,6 +81,7 @@ void * __ioremap(unsigned long phys_addr, unsigned long size, unsigned long flag } return (void *) (offset + (char *)addr); } +EXPORT_SYMBOL(__ioremap); void iounmap(void *addr) { @@ -94,6 +96,7 @@ void iounmap(void *addr) kfree(area); } +EXPORT_SYMBOL(iounmap); static struct resource shmedia_iomap = { .name = "shmedia_iomap", |