| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 1 | /* | 
| Uwe Zeisberger | f30c226 | 2006-10-03 23:01:26 +0200 | [diff] [blame] | 2 |  * linux/arch/alpha/kernel/alpha_ksyms.c | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 3 |  * | 
 | 4 |  * Export the alpha-specific functions that are needed for loadable | 
 | 5 |  * modules. | 
 | 6 |  */ | 
 | 7 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 8 | #include <linux/module.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 9 | #include <asm/console.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 10 | #include <asm/uaccess.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 11 | #include <asm/checksum.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 12 | #include <asm/fpu.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 13 | #include <asm/machvec.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 14 |  | 
| Al Viro | 78b93f2 | 2006-10-12 19:00:35 +0100 | [diff] [blame] | 15 | #include <linux/syscalls.h> | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 16 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 17 | /* these are C runtime functions with special calling conventions: */ | 
 | 18 | extern void __divl (void); | 
 | 19 | extern void __reml (void); | 
 | 20 | extern void __divq (void); | 
 | 21 | extern void __remq (void); | 
 | 22 | extern void __divlu (void); | 
 | 23 | extern void __remlu (void); | 
 | 24 | extern void __divqu (void); | 
 | 25 | extern void __remqu (void); | 
 | 26 |  | 
 | 27 | EXPORT_SYMBOL(alpha_mv); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 28 | EXPORT_SYMBOL(callback_getenv); | 
 | 29 | EXPORT_SYMBOL(callback_setenv); | 
 | 30 | EXPORT_SYMBOL(callback_save_env); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 31 |  | 
 | 32 | /* platform dependent support */ | 
 | 33 | EXPORT_SYMBOL(strcat); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 34 | EXPORT_SYMBOL(strcpy); | 
 | 35 | EXPORT_SYMBOL(strlen); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 36 | EXPORT_SYMBOL(strncpy); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 37 | EXPORT_SYMBOL(strncat); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 38 | EXPORT_SYMBOL(strchr); | 
 | 39 | EXPORT_SYMBOL(strrchr); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 40 | EXPORT_SYMBOL(memmove); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 41 | EXPORT_SYMBOL(__memcpy); | 
 | 42 | EXPORT_SYMBOL(__memset); | 
 | 43 | EXPORT_SYMBOL(__memsetw); | 
 | 44 | EXPORT_SYMBOL(__constant_c_memset); | 
 | 45 | EXPORT_SYMBOL(copy_page); | 
 | 46 | EXPORT_SYMBOL(clear_page); | 
 | 47 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 48 | EXPORT_SYMBOL(alpha_read_fp_reg); | 
 | 49 | EXPORT_SYMBOL(alpha_read_fp_reg_s); | 
 | 50 | EXPORT_SYMBOL(alpha_write_fp_reg); | 
 | 51 | EXPORT_SYMBOL(alpha_write_fp_reg_s); | 
 | 52 |  | 
| Al Viro | cff52da | 2006-10-11 17:40:22 +0100 | [diff] [blame] | 53 | /* entry.S */ | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 54 | EXPORT_SYMBOL(kernel_thread); | 
| Arnd Bergmann | 3db03b4 | 2006-10-02 02:18:31 -0700 | [diff] [blame] | 55 | EXPORT_SYMBOL(kernel_execve); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 56 |  | 
 | 57 | /* Networking helper routines. */ | 
 | 58 | EXPORT_SYMBOL(csum_tcpudp_magic); | 
 | 59 | EXPORT_SYMBOL(ip_compute_csum); | 
 | 60 | EXPORT_SYMBOL(ip_fast_csum); | 
 | 61 | EXPORT_SYMBOL(csum_partial_copy_nocheck); | 
 | 62 | EXPORT_SYMBOL(csum_partial_copy_from_user); | 
 | 63 | EXPORT_SYMBOL(csum_ipv6_magic); | 
 | 64 |  | 
 | 65 | #ifdef CONFIG_MATHEMU_MODULE | 
 | 66 | extern long (*alpha_fp_emul_imprecise)(struct pt_regs *, unsigned long); | 
 | 67 | extern long (*alpha_fp_emul) (unsigned long pc); | 
 | 68 | EXPORT_SYMBOL(alpha_fp_emul_imprecise); | 
 | 69 | EXPORT_SYMBOL(alpha_fp_emul); | 
 | 70 | #endif | 
 | 71 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 72 | /* | 
 | 73 |  * The following are specially called from the uaccess assembly stubs. | 
 | 74 |  */ | 
 | 75 | EXPORT_SYMBOL(__copy_user); | 
 | 76 | EXPORT_SYMBOL(__do_clear_user); | 
 | 77 | EXPORT_SYMBOL(__strncpy_from_user); | 
 | 78 | EXPORT_SYMBOL(__strnlen_user); | 
 | 79 |  | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 80 | /*  | 
 | 81 |  * SMP-specific symbols. | 
 | 82 |  */ | 
 | 83 |  | 
 | 84 | #ifdef CONFIG_SMP | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 85 | EXPORT_SYMBOL(_atomic_dec_and_lock); | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 86 | #endif /* CONFIG_SMP */ | 
 | 87 |  | 
 | 88 | /* | 
| Linus Torvalds | 1da177e | 2005-04-16 15:20:36 -0700 | [diff] [blame] | 89 |  * The following are special because they're not called | 
 | 90 |  * explicitly (the C compiler or assembler generates them in | 
 | 91 |  * response to division operations).  Fortunately, their | 
 | 92 |  * interface isn't gonna change any time soon now, so it's OK | 
 | 93 |  * to leave it out of version control. | 
 | 94 |  */ | 
 | 95 | # undef memcpy | 
 | 96 | # undef memset | 
 | 97 | EXPORT_SYMBOL(__divl); | 
 | 98 | EXPORT_SYMBOL(__divlu); | 
 | 99 | EXPORT_SYMBOL(__divq); | 
 | 100 | EXPORT_SYMBOL(__divqu); | 
 | 101 | EXPORT_SYMBOL(__reml); | 
 | 102 | EXPORT_SYMBOL(__remlu); | 
 | 103 | EXPORT_SYMBOL(__remq); | 
 | 104 | EXPORT_SYMBOL(__remqu); | 
 | 105 | EXPORT_SYMBOL(memcpy); | 
 | 106 | EXPORT_SYMBOL(memset); | 
 | 107 | EXPORT_SYMBOL(memchr); |