1// SPDX-License-Identifier: GPL-2.0 2#include <linux/module.h> 3#include <linux/linkage.h> 4#include <linux/sched.h> 5#include <linux/string.h> 6#include <linux/mm.h> 7#include <linux/user.h> 8#include <linux/elfcore.h> 9#include <linux/in6.h> 10#include <linux/interrupt.h> 11 12#include <asm/setup.h> 13#include <asm/pgalloc.h> 14#include <asm/irq.h> 15#include <asm/io.h> 16#include <asm/checksum.h> 17#include <asm/hardirq.h> 18#include <asm/cacheflush.h> 19 20extern long __memcpy_user(void *dst, const void *src, size_t count); 21extern long __memset_user(void *dst, const void *src, size_t count); 22 23/* platform dependent support */ 24 25EXPORT_SYMBOL(__ioremap); 26EXPORT_SYMBOL(iounmap); 27 28EXPORT_SYMBOL(ip_fast_csum); 29 30#if 0 31EXPORT_SYMBOL(local_irq_count); 32EXPORT_SYMBOL(local_bh_count); 33#endif 34 35EXPORT_SYMBOL(__res_bus_clock_speed_HZ); 36EXPORT_SYMBOL(__page_offset); 37EXPORT_SYMBOL(__memcpy_user); 38EXPORT_SYMBOL(__memset_user); 39EXPORT_SYMBOL(frv_dcache_writeback); 40EXPORT_SYMBOL(frv_cache_invalidate); 41EXPORT_SYMBOL(frv_icache_invalidate); 42EXPORT_SYMBOL(frv_cache_wback_inv); 43 44#ifndef CONFIG_MMU 45EXPORT_SYMBOL(memory_start); 46EXPORT_SYMBOL(memory_end); 47#endif 48 49EXPORT_SYMBOL(__debug_bug_trap); 50 51/* The following are special because they're not called 52 explicitly (the C compiler generates them). Fortunately, 53 their interface isn't gonna change any time soon now, so 54 it's OK to leave it out of version control. */ 55EXPORT_SYMBOL(memcpy); 56EXPORT_SYMBOL(memset); 57 58EXPORT_SYMBOL(__outsl_ns); 59EXPORT_SYMBOL(__insl_ns); 60 61#ifdef CONFIG_FRV_OUTOFLINE_ATOMIC_OPS 62EXPORT_SYMBOL(__xchg_32); 63EXPORT_SYMBOL(__cmpxchg_32); 64#endif 65EXPORT_SYMBOL(atomic64_add_return); 66EXPORT_SYMBOL(atomic64_sub_return); 67EXPORT_SYMBOL(__xchg_64); 68EXPORT_SYMBOL(__cmpxchg_64); 69 70EXPORT_SYMBOL(__debug_bug_printk); 71EXPORT_SYMBOL(__delay_loops_MHz); 72 73/* 74 * libgcc functions - functions that are used internally by the 75 * compiler... (prototypes are not correct though, but that 76 * doesn't really matter since they're not versioned). 77 */ 78extern void __gcc_bcmp(void); 79extern void __ashldi3(void); 80extern void __ashrdi3(void); 81extern void __cmpdi2(void); 82extern void __divdi3(void); 83extern void __lshrdi3(void); 84extern void __moddi3(void); 85extern void __muldi3(void); 86extern void __mulll(void); 87extern void __umulll(void); 88extern void __negdi2(void); 89extern void __ucmpdi2(void); 90extern void __udivdi3(void); 91extern void __udivmoddi4(void); 92extern void __umoddi3(void); 93 94 /* gcc lib functions */ 95//EXPORT_SYMBOL(__gcc_bcmp); 96EXPORT_SYMBOL(__ashldi3); 97EXPORT_SYMBOL(__ashrdi3); 98//EXPORT_SYMBOL(__cmpdi2); 99//EXPORT_SYMBOL(__divdi3); 100EXPORT_SYMBOL(__lshrdi3); 101//EXPORT_SYMBOL(__moddi3); 102EXPORT_SYMBOL(__muldi3); 103EXPORT_SYMBOL(__mulll); 104EXPORT_SYMBOL(__umulll); 105EXPORT_SYMBOL(__negdi2); 106EXPORT_SYMBOL(__ucmpdi2); 107//EXPORT_SYMBOL(__udivdi3); 108//EXPORT_SYMBOL(__udivmoddi4); 109//EXPORT_SYMBOL(__umoddi3); 110