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