blob: e6106239a0fec627120ee62c116fa830fb82322e [file] [log] [blame]
Linus Torvalds1da177e2005-04-16 15:20:36 -07001#include <linux/module.h>
2#include <linux/smp.h>
3#include <linux/user.h>
4#include <linux/elfcore.h>
5#include <linux/sched.h>
6#include <linux/in6.h>
7#include <linux/interrupt.h>
8#include <linux/smp_lock.h>
9#include <linux/vmalloc.h>
10#include <linux/pci.h>
11#include <linux/irq.h>
12
13#include <asm/semaphore.h>
14#include <asm/processor.h>
15#include <asm/uaccess.h>
16#include <asm/checksum.h>
17#include <asm/io.h>
18#include <asm/delay.h>
19#include <asm/tlbflush.h>
20#include <asm/cacheflush.h>
Linus Torvalds1da177e2005-04-16 15:20:36 -070021
Linus Torvalds1da177e2005-04-16 15:20:36 -070022extern int dump_fpu(struct pt_regs *, elf_fpregset_t *);
23extern struct hw_interrupt_type no_irq_type;
24
25EXPORT_SYMBOL(sh_mv);
26
27/* platform dependent support */
Linus Torvalds1da177e2005-04-16 15:20:36 -070028EXPORT_SYMBOL(dump_fpu);
Linus Torvalds1da177e2005-04-16 15:20:36 -070029EXPORT_SYMBOL(kernel_thread);
Linus Torvalds1da177e2005-04-16 15:20:36 -070030EXPORT_SYMBOL(irq_desc);
31EXPORT_SYMBOL(no_irq_type);
32
Linus Torvalds1da177e2005-04-16 15:20:36 -070033EXPORT_SYMBOL(strlen);
Linus Torvalds1da177e2005-04-16 15:20:36 -070034
35/* PCI exports */
36#ifdef CONFIG_PCI
37EXPORT_SYMBOL(pci_alloc_consistent);
38EXPORT_SYMBOL(pci_free_consistent);
39#endif
40
41/* mem exports */
42EXPORT_SYMBOL(memchr);
43EXPORT_SYMBOL(memcpy);
Linus Torvalds1da177e2005-04-16 15:20:36 -070044EXPORT_SYMBOL(memset);
Linus Torvalds1da177e2005-04-16 15:20:36 -070045EXPORT_SYMBOL(memmove);
Linus Torvalds1da177e2005-04-16 15:20:36 -070046EXPORT_SYMBOL(__copy_user);
47EXPORT_SYMBOL(boot_cpu_data);
48
49#ifdef CONFIG_MMU
50EXPORT_SYMBOL(get_vm_area);
51#endif
52
53/* semaphore exports */
54EXPORT_SYMBOL(__up);
55EXPORT_SYMBOL(__down);
56EXPORT_SYMBOL(__down_interruptible);
57
58EXPORT_SYMBOL(__udelay);
59EXPORT_SYMBOL(__ndelay);
60EXPORT_SYMBOL(__const_udelay);
61
62EXPORT_SYMBOL(__div64_32);
63
64#define DECLARE_EXPORT(name) extern void name(void);EXPORT_SYMBOL(name)
65
66/* These symbols are generated by the compiler itself */
67DECLARE_EXPORT(__udivsi3);
68DECLARE_EXPORT(__udivdi3);
69DECLARE_EXPORT(__sdivsi3);
70DECLARE_EXPORT(__ashrdi3);
71DECLARE_EXPORT(__ashldi3);
72DECLARE_EXPORT(__lshrdi3);
Paul Mundt711fa802006-10-03 13:14:04 +090073DECLARE_EXPORT(__movstrSI16);
Stuart Menefyff4e2ca72006-12-07 17:48:52 +090074#if __GNUC__ == 4
75DECLARE_EXPORT(__movmem);
76#else
77DECLARE_EXPORT(__movstr);
78#endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070079
Linus Torvalds1da177e2005-04-16 15:20:36 -070080#ifdef CONFIG_CPU_SH4
Stuart Menefyff4e2ca72006-12-07 17:48:52 +090081#if __GNUC__ == 4
82DECLARE_EXPORT(__movmem_i4_even);
83DECLARE_EXPORT(__movmem_i4_odd);
84DECLARE_EXPORT(__movmemSI12_i4);
85DECLARE_EXPORT(__sdivsi3_i4i);
86DECLARE_EXPORT(__udiv_qrnnd_16);
87DECLARE_EXPORT(__udivsi3_i4i);
88#else /* GCC 3.x */
Linus Torvalds1da177e2005-04-16 15:20:36 -070089DECLARE_EXPORT(__movstr_i4_even);
90DECLARE_EXPORT(__movstr_i4_odd);
91DECLARE_EXPORT(__movstrSI12_i4);
Stuart Menefyff4e2ca72006-12-07 17:48:52 +090092#endif /* __GNUC__ == 4 */
Yoshinori Satoa2d1a5f2006-09-27 17:25:07 +090093#endif
Linus Torvalds1da177e2005-04-16 15:20:36 -070094
Yoshinori Satoa2d1a5f2006-09-27 17:25:07 +090095#if defined(CONFIG_CPU_SH4) || defined(CONFIG_SH7705_CACHE_32KB)
Linus Torvalds1da177e2005-04-16 15:20:36 -070096/* needed by some modules */
97EXPORT_SYMBOL(flush_cache_all);
98EXPORT_SYMBOL(flush_cache_range);
99EXPORT_SYMBOL(flush_dcache_page);
100EXPORT_SYMBOL(__flush_purge_region);
101#endif
102
Paul Mundte5723e02006-09-27 17:38:11 +0900103#if defined(CONFIG_MMU) && (defined(CONFIG_CPU_SH4) || \
104 defined(CONFIG_SH7705_CACHE_32KB))
Yoshinori Satoa2d1a5f2006-09-27 17:25:07 +0900105EXPORT_SYMBOL(clear_user_page);
Linus Torvalds1da177e2005-04-16 15:20:36 -0700106#endif
107
108EXPORT_SYMBOL(flush_tlb_page);
109EXPORT_SYMBOL(__down_trylock);
110
111#ifdef CONFIG_SMP
112EXPORT_SYMBOL(synchronize_irq);
113#endif
114
115EXPORT_SYMBOL(csum_partial);
Paul Mundte4c2cfe2006-09-27 12:31:01 +0900116#ifdef CONFIG_IPV6
Linus Torvalds1da177e2005-04-16 15:20:36 -0700117EXPORT_SYMBOL(csum_ipv6_magic);
Paul Mundte4c2cfe2006-09-27 12:31:01 +0900118#endif
Linus Torvalds1da177e2005-04-16 15:20:36 -0700119EXPORT_SYMBOL(clear_page);