linux/arch/parisc/kernel/parisc_ksyms.c
<<
>>
Prefs
   1/*
   2 *    Architecture-specific kernel symbols
   3 *
   4 *    Copyright (C) 2000-2001 Richard Hirst <rhirst with parisc-linux.org>
   5 *    Copyright (C) 2001 Dave Kennedy
   6 *    Copyright (C) 2001 Paul Bame <bame at parisc-linux.org>
   7 *    Copyright (C) 2001-2003 Grant Grundler <grundler with parisc-linux.org>
   8 *    Copyright (C) 2002-2003 Matthew Wilcox <willy at parisc-linux.org>
   9 *    Copyright (C) 2002 Randolph Chung <tausq at parisc-linux.org>
  10 *    Copyright (C) 2002-2007 Helge Deller <deller with parisc-linux.org>
  11 * 
  12 *    This program is free software; you can redistribute it and/or modify
  13 *    it under the terms of the GNU General Public License as published by
  14 *    the Free Software Foundation; either version 2 of the License, or
  15 *    (at your option) any later version.
  16 *
  17 *    This program is distributed in the hope that it will be useful,
  18 *    but WITHOUT ANY WARRANTY; without even the implied warranty of
  19 *    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
  20 *    GNU General Public License for more details.
  21 *
  22 *    You should have received a copy of the GNU General Public License
  23 *    along with this program; if not, write to the Free Software
  24 *    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA  02111-1307  USA
  25 */
  26
  27#include <linux/module.h>
  28#include <linux/kernel.h>
  29#include <linux/syscalls.h>
  30
  31#include <linux/string.h>
  32EXPORT_SYMBOL(memset);
  33
  34#include <linux/atomic.h>
  35EXPORT_SYMBOL(__xchg8);
  36EXPORT_SYMBOL(__xchg32);
  37EXPORT_SYMBOL(__cmpxchg_u32);
  38#ifdef CONFIG_SMP
  39EXPORT_SYMBOL(__atomic_hash);
  40#endif
  41#ifdef CONFIG_64BIT
  42EXPORT_SYMBOL(__xchg64);
  43EXPORT_SYMBOL(__cmpxchg_u64);
  44#endif
  45
  46#include <asm/uaccess.h>
  47EXPORT_SYMBOL(lclear_user);
  48EXPORT_SYMBOL(lstrnlen_user);
  49
  50/* Global fixups - defined as int to avoid creation of function pointers */
  51extern int fixup_get_user_skip_1;
  52extern int fixup_get_user_skip_2;
  53extern int fixup_put_user_skip_1;
  54extern int fixup_put_user_skip_2;
  55EXPORT_SYMBOL(fixup_get_user_skip_1);
  56EXPORT_SYMBOL(fixup_get_user_skip_2);
  57EXPORT_SYMBOL(fixup_put_user_skip_1);
  58EXPORT_SYMBOL(fixup_put_user_skip_2);
  59
  60#ifndef CONFIG_64BIT
  61/* Needed so insmod can set dp value */
  62extern int $global$;
  63EXPORT_SYMBOL($global$);
  64#endif
  65
  66#include <asm/io.h>
  67EXPORT_SYMBOL(memcpy_toio);
  68EXPORT_SYMBOL(memcpy_fromio);
  69EXPORT_SYMBOL(memset_io);
  70
  71extern void $$divI(void);
  72extern void $$divU(void);
  73extern void $$remI(void);
  74extern void $$remU(void);
  75extern void $$mulI(void);
  76extern void $$divU_3(void);
  77extern void $$divU_5(void);
  78extern void $$divU_6(void);
  79extern void $$divU_9(void);
  80extern void $$divU_10(void);
  81extern void $$divU_12(void);
  82extern void $$divU_7(void);
  83extern void $$divU_14(void);
  84extern void $$divU_15(void);
  85extern void $$divI_3(void);
  86extern void $$divI_5(void);
  87extern void $$divI_6(void);
  88extern void $$divI_7(void);
  89extern void $$divI_9(void);
  90extern void $$divI_10(void);
  91extern void $$divI_12(void);
  92extern void $$divI_14(void);
  93extern void $$divI_15(void);
  94
  95EXPORT_SYMBOL($$divI);
  96EXPORT_SYMBOL($$divU);
  97EXPORT_SYMBOL($$remI);
  98EXPORT_SYMBOL($$remU);
  99EXPORT_SYMBOL($$mulI);
 100EXPORT_SYMBOL($$divU_3);
 101EXPORT_SYMBOL($$divU_5);
 102EXPORT_SYMBOL($$divU_6);
 103EXPORT_SYMBOL($$divU_9);
 104EXPORT_SYMBOL($$divU_10);
 105EXPORT_SYMBOL($$divU_12);
 106EXPORT_SYMBOL($$divU_7);
 107EXPORT_SYMBOL($$divU_14);
 108EXPORT_SYMBOL($$divU_15);
 109EXPORT_SYMBOL($$divI_3);
 110EXPORT_SYMBOL($$divI_5);
 111EXPORT_SYMBOL($$divI_6);
 112EXPORT_SYMBOL($$divI_7);
 113EXPORT_SYMBOL($$divI_9);
 114EXPORT_SYMBOL($$divI_10);
 115EXPORT_SYMBOL($$divI_12);
 116EXPORT_SYMBOL($$divI_14);
 117EXPORT_SYMBOL($$divI_15);
 118
 119extern void __ashrdi3(void);
 120extern void __ashldi3(void);
 121extern void __lshrdi3(void);
 122extern void __muldi3(void);
 123extern void __ucmpdi2(void);
 124
 125EXPORT_SYMBOL(__ashrdi3);
 126EXPORT_SYMBOL(__ashldi3);
 127EXPORT_SYMBOL(__lshrdi3);
 128EXPORT_SYMBOL(__muldi3);
 129EXPORT_SYMBOL(__ucmpdi2);
 130
 131asmlinkage void * __canonicalize_funcptr_for_compare(void *);
 132EXPORT_SYMBOL(__canonicalize_funcptr_for_compare);
 133
 134#ifdef CONFIG_64BIT
 135extern void __divdi3(void);
 136extern void __udivdi3(void);
 137extern void __umoddi3(void);
 138extern void __moddi3(void);
 139
 140EXPORT_SYMBOL(__divdi3);
 141EXPORT_SYMBOL(__udivdi3);
 142EXPORT_SYMBOL(__umoddi3);
 143EXPORT_SYMBOL(__moddi3);
 144#endif
 145
 146#ifndef CONFIG_64BIT
 147extern void $$dyncall(void);
 148EXPORT_SYMBOL($$dyncall);
 149#endif
 150
 151#ifdef CONFIG_DISCONTIGMEM
 152#include <asm/mmzone.h>
 153EXPORT_SYMBOL(node_data);
 154EXPORT_SYMBOL(pfnnid_map);
 155#endif
 156
 157#ifdef CONFIG_FUNCTION_TRACER
 158extern void _mcount(void);
 159EXPORT_SYMBOL(_mcount);
 160#endif
 161
 162/* from pacache.S -- needed for clear/copy_page */
 163EXPORT_SYMBOL(clear_page_asm);
 164EXPORT_SYMBOL(copy_page_asm);
 165