2019-05-27 09:55:05 +03:00
// SPDX-License-Identifier: GPL-2.0-or-later
2005-04-17 02:20:36 +04:00
/*
* Architecture - specific kernel symbols
*
* Copyright ( C ) 2000 - 2001 Richard Hirst < rhirst with parisc - linux . org >
* Copyright ( C ) 2001 Dave Kennedy
* Copyright ( C ) 2001 Paul Bame < bame at parisc - linux . org >
* Copyright ( C ) 2001 - 2003 Grant Grundler < grundler with parisc - linux . org >
* Copyright ( C ) 2002 - 2003 Matthew Wilcox < willy at parisc - linux . org >
* Copyright ( C ) 2002 Randolph Chung < tausq at parisc - linux . org >
2007-01-28 16:58:52 +03:00
* Copyright ( C ) 2002 - 2007 Helge Deller < deller with parisc - linux . org >
2005-04-17 02:20:36 +04:00
*/
# include <linux/module.h>
# include <linux/kernel.h>
# include <linux/syscalls.h>
# include <linux/string.h>
EXPORT_SYMBOL ( memset ) ;
2019-02-07 01:21:10 +03:00
EXPORT_SYMBOL ( strlen ) ;
EXPORT_SYMBOL ( strcpy ) ;
EXPORT_SYMBOL ( strncpy ) ;
EXPORT_SYMBOL ( strcat ) ;
2005-04-17 02:20:36 +04:00
2011-07-27 03:09:06 +04:00
# include <linux/atomic.h>
2005-04-17 02:20:36 +04:00
EXPORT_SYMBOL ( __xchg8 ) ;
EXPORT_SYMBOL ( __xchg32 ) ;
EXPORT_SYMBOL ( __cmpxchg_u32 ) ;
2017-09-24 20:28:09 +03:00
EXPORT_SYMBOL ( __cmpxchg_u64 ) ;
2005-04-17 02:20:36 +04:00
# ifdef CONFIG_SMP
EXPORT_SYMBOL ( __atomic_hash ) ;
# endif
2007-01-28 16:58:52 +03:00
# ifdef CONFIG_64BIT
2005-04-17 02:20:36 +04:00
EXPORT_SYMBOL ( __xchg64 ) ;
# endif
2016-12-24 22:46:01 +03:00
# include <linux/uaccess.h>
2005-04-17 02:20:36 +04:00
EXPORT_SYMBOL ( lclear_user ) ;
EXPORT_SYMBOL ( lstrnlen_user ) ;
2007-01-28 16:58:52 +03:00
# ifndef CONFIG_64BIT
2005-04-17 02:20:36 +04:00
/* Needed so insmod can set dp value */
extern int $ global $ ;
EXPORT_SYMBOL ( $ global $ ) ;
# endif
# include <asm/io.h>
EXPORT_SYMBOL ( memcpy_toio ) ;
EXPORT_SYMBOL ( memcpy_fromio ) ;
EXPORT_SYMBOL ( memset_io ) ;
extern void $ $ divI ( void ) ;
extern void $ $ divU ( void ) ;
extern void $ $ remI ( void ) ;
extern void $ $ remU ( void ) ;
extern void $ $ mulI ( void ) ;
extern void $ $ divU_3 ( void ) ;
extern void $ $ divU_5 ( void ) ;
extern void $ $ divU_6 ( void ) ;
extern void $ $ divU_9 ( void ) ;
extern void $ $ divU_10 ( void ) ;
extern void $ $ divU_12 ( void ) ;
extern void $ $ divU_7 ( void ) ;
extern void $ $ divU_14 ( void ) ;
extern void $ $ divU_15 ( void ) ;
extern void $ $ divI_3 ( void ) ;
extern void $ $ divI_5 ( void ) ;
extern void $ $ divI_6 ( void ) ;
extern void $ $ divI_7 ( void ) ;
extern void $ $ divI_9 ( void ) ;
extern void $ $ divI_10 ( void ) ;
extern void $ $ divI_12 ( void ) ;
extern void $ $ divI_14 ( void ) ;
extern void $ $ divI_15 ( void ) ;
EXPORT_SYMBOL ( $ $ divI ) ;
EXPORT_SYMBOL ( $ $ divU ) ;
EXPORT_SYMBOL ( $ $ remI ) ;
EXPORT_SYMBOL ( $ $ remU ) ;
EXPORT_SYMBOL ( $ $ mulI ) ;
EXPORT_SYMBOL ( $ $ divU_3 ) ;
EXPORT_SYMBOL ( $ $ divU_5 ) ;
EXPORT_SYMBOL ( $ $ divU_6 ) ;
EXPORT_SYMBOL ( $ $ divU_9 ) ;
EXPORT_SYMBOL ( $ $ divU_10 ) ;
EXPORT_SYMBOL ( $ $ divU_12 ) ;
EXPORT_SYMBOL ( $ $ divU_7 ) ;
EXPORT_SYMBOL ( $ $ divU_14 ) ;
EXPORT_SYMBOL ( $ $ divU_15 ) ;
EXPORT_SYMBOL ( $ $ divI_3 ) ;
EXPORT_SYMBOL ( $ $ divI_5 ) ;
EXPORT_SYMBOL ( $ $ divI_6 ) ;
EXPORT_SYMBOL ( $ $ divI_7 ) ;
EXPORT_SYMBOL ( $ $ divI_9 ) ;
EXPORT_SYMBOL ( $ $ divI_10 ) ;
EXPORT_SYMBOL ( $ $ divI_12 ) ;
EXPORT_SYMBOL ( $ $ divI_14 ) ;
EXPORT_SYMBOL ( $ $ divI_15 ) ;
2007-11-28 10:07:35 +03:00
extern void __ashrdi3 ( void ) ;
extern void __ashldi3 ( void ) ;
extern void __lshrdi3 ( void ) ;
extern void __muldi3 ( void ) ;
2013-04-20 23:41:06 +04:00
extern void __ucmpdi2 ( void ) ;
2007-11-28 10:07:35 +03:00
EXPORT_SYMBOL ( __ashrdi3 ) ;
EXPORT_SYMBOL ( __ashldi3 ) ;
EXPORT_SYMBOL ( __lshrdi3 ) ;
EXPORT_SYMBOL ( __muldi3 ) ;
2013-04-20 23:41:06 +04:00
EXPORT_SYMBOL ( __ucmpdi2 ) ;
2007-11-28 10:07:35 +03:00
2005-04-17 02:20:36 +04:00
asmlinkage void * __canonicalize_funcptr_for_compare ( void * ) ;
EXPORT_SYMBOL ( __canonicalize_funcptr_for_compare ) ;
2007-11-28 10:07:35 +03:00
# ifdef CONFIG_64BIT
extern void __divdi3 ( void ) ;
extern void __udivdi3 ( void ) ;
extern void __umoddi3 ( void ) ;
extern void __moddi3 ( void ) ;
EXPORT_SYMBOL ( __divdi3 ) ;
EXPORT_SYMBOL ( __udivdi3 ) ;
EXPORT_SYMBOL ( __umoddi3 ) ;
EXPORT_SYMBOL ( __moddi3 ) ;
# endif
2007-01-28 16:58:52 +03:00
# ifndef CONFIG_64BIT
2005-04-17 02:20:36 +04:00
extern void $ $ dyncall ( void ) ;
EXPORT_SYMBOL ( $ $ dyncall ) ;
# endif
2009-02-09 02:43:36 +03:00
# ifdef CONFIG_FUNCTION_TRACER
extern void _mcount ( void ) ;
EXPORT_SYMBOL ( _mcount ) ;
# endif
2013-02-04 02:59:09 +04:00
/* from pacache.S -- needed for clear/copy_page */
EXPORT_SYMBOL ( clear_page_asm ) ;
EXPORT_SYMBOL ( copy_page_asm ) ;