Path: blob/master/arch/parisc/kernel/parisc_ksyms.c
10819 views
/*1* Architecture-specific kernel symbols2*3* Copyright (C) 2000-2001 Richard Hirst <rhirst with parisc-linux.org>4* Copyright (C) 2001 Dave Kennedy5* Copyright (C) 2001 Paul Bame <bame at parisc-linux.org>6* Copyright (C) 2001-2003 Grant Grundler <grundler with parisc-linux.org>7* Copyright (C) 2002-2003 Matthew Wilcox <willy at parisc-linux.org>8* Copyright (C) 2002 Randolph Chung <tausq at parisc-linux.org>9* Copyright (C) 2002-2007 Helge Deller <deller with parisc-linux.org>10*11* This program is free software; you can redistribute it and/or modify12* it under the terms of the GNU General Public License as published by13* the Free Software Foundation; either version 2 of the License, or14* (at your option) any later version.15*16* This program is distributed in the hope that it will be useful,17* but WITHOUT ANY WARRANTY; without even the implied warranty of18* MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the19* GNU General Public License for more details.20*21* You should have received a copy of the GNU General Public License22* along with this program; if not, write to the Free Software23* Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA24*/2526#include <linux/module.h>27#include <linux/kernel.h>28#include <linux/syscalls.h>2930#include <linux/string.h>31EXPORT_SYMBOL(memset);3233#include <asm/atomic.h>34EXPORT_SYMBOL(__xchg8);35EXPORT_SYMBOL(__xchg32);36EXPORT_SYMBOL(__cmpxchg_u32);37#ifdef CONFIG_SMP38EXPORT_SYMBOL(__atomic_hash);39#endif40#ifdef CONFIG_64BIT41EXPORT_SYMBOL(__xchg64);42EXPORT_SYMBOL(__cmpxchg_u64);43#endif4445#include <asm/uaccess.h>46EXPORT_SYMBOL(lstrncpy_from_user);47EXPORT_SYMBOL(lclear_user);48EXPORT_SYMBOL(lstrnlen_user);4950/* Global fixups */51extern void fixup_get_user_skip_1(void);52extern void fixup_get_user_skip_2(void);53extern void fixup_put_user_skip_1(void);54extern void fixup_put_user_skip_2(void);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);5960#ifndef CONFIG_64BIT61/* Needed so insmod can set dp value */62extern int $global$;63EXPORT_SYMBOL($global$);64#endif6566#include <asm/io.h>67EXPORT_SYMBOL(memcpy_toio);68EXPORT_SYMBOL(memcpy_fromio);69EXPORT_SYMBOL(memset_io);7071extern 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);9495EXPORT_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);118119extern void __ashrdi3(void);120extern void __ashldi3(void);121extern void __lshrdi3(void);122extern void __muldi3(void);123124EXPORT_SYMBOL(__ashrdi3);125EXPORT_SYMBOL(__ashldi3);126EXPORT_SYMBOL(__lshrdi3);127EXPORT_SYMBOL(__muldi3);128129asmlinkage void * __canonicalize_funcptr_for_compare(void *);130EXPORT_SYMBOL(__canonicalize_funcptr_for_compare);131132#ifdef CONFIG_64BIT133extern void __divdi3(void);134extern void __udivdi3(void);135extern void __umoddi3(void);136extern void __moddi3(void);137138EXPORT_SYMBOL(__divdi3);139EXPORT_SYMBOL(__udivdi3);140EXPORT_SYMBOL(__umoddi3);141EXPORT_SYMBOL(__moddi3);142#endif143144#ifndef CONFIG_64BIT145extern void $$dyncall(void);146EXPORT_SYMBOL($$dyncall);147#endif148149#ifdef CONFIG_DISCONTIGMEM150#include <asm/mmzone.h>151EXPORT_SYMBOL(node_data);152EXPORT_SYMBOL(pfnnid_map);153#endif154155#ifdef CONFIG_FUNCTION_TRACER156extern void _mcount(void);157EXPORT_SYMBOL(_mcount);158#endif159160/* from pacache.S -- needed for copy_page */161EXPORT_SYMBOL(copy_user_page_asm);162163164