aboutsummaryrefslogtreecommitdiffstats
path: root/arch/m68k
diff options
context:
space:
mode:
Diffstat (limited to 'arch/m68k')
-rw-r--r--arch/m68k/kernel/m68k_ksyms.c51
-rw-r--r--arch/m68k/kernel/process.c3
-rw-r--r--arch/m68k/kernel/setup.c15
-rw-r--r--arch/m68k/mm/kmap.c4
-rw-r--r--arch/m68k/mm/memory.c8
-rw-r--r--arch/m68k/mm/sun3kmap.c3
-rw-r--r--arch/m68k/sun3/Makefile2
-rw-r--r--arch/m68k/sun3/idprom.c3
-rw-r--r--arch/m68k/sun3/sun3_ksyms.c13
-rw-r--r--arch/m68k/sun3/sun3dvma.c6
10 files changed, 40 insertions, 68 deletions
diff --git a/arch/m68k/kernel/m68k_ksyms.c b/arch/m68k/kernel/m68k_ksyms.c
index f9636e84e6a4..6fc69c74fe2e 100644
--- a/arch/m68k/kernel/m68k_ksyms.c
+++ b/arch/m68k/kernel/m68k_ksyms.c
@@ -1,61 +1,10 @@
1#include <linux/module.h> 1#include <linux/module.h>
2#include <linux/linkage.h>
3#include <linux/sched.h>
4#include <linux/mm.h>
5#include <linux/user.h>
6#include <linux/elfcore.h>
7#include <linux/in6.h>
8#include <linux/interrupt.h>
9
10#include <asm/setup.h>
11#include <asm/machdep.h>
12#include <asm/pgalloc.h>
13#include <asm/irq.h>
14#include <asm/io.h>
15#include <asm/semaphore.h> 2#include <asm/semaphore.h>
16#include <asm/checksum.h>
17 3
18asmlinkage long long __ashldi3 (long long, int); 4asmlinkage long long __ashldi3 (long long, int);
19asmlinkage long long __ashrdi3 (long long, int); 5asmlinkage long long __ashrdi3 (long long, int);
20asmlinkage long long __lshrdi3 (long long, int); 6asmlinkage long long __lshrdi3 (long long, int);
21asmlinkage long long __muldi3 (long long, long long); 7asmlinkage long long __muldi3 (long long, long long);
22extern char m68k_debug_device[];
23
24/* platform dependent support */
25
26EXPORT_SYMBOL(m68k_machtype);
27EXPORT_SYMBOL(m68k_cputype);
28EXPORT_SYMBOL(m68k_is040or060);
29EXPORT_SYMBOL(m68k_realnum_memory);
30EXPORT_SYMBOL(m68k_memory);
31#ifndef CONFIG_SUN3
32EXPORT_SYMBOL(cache_push);
33EXPORT_SYMBOL(cache_clear);
34#ifndef CONFIG_SINGLE_MEMORY_CHUNK
35EXPORT_SYMBOL(mm_vtop);
36EXPORT_SYMBOL(mm_ptov);
37EXPORT_SYMBOL(mm_end_of_chunk);
38#else
39EXPORT_SYMBOL(m68k_memoffset);
40#endif /* !CONFIG_SINGLE_MEMORY_CHUNK */
41EXPORT_SYMBOL(__ioremap);
42EXPORT_SYMBOL(iounmap);
43EXPORT_SYMBOL(kernel_set_cachemode);
44#endif /* !CONFIG_SUN3 */
45EXPORT_SYMBOL(m68k_debug_device);
46EXPORT_SYMBOL(mach_hwclk);
47EXPORT_SYMBOL(mach_get_ss);
48EXPORT_SYMBOL(mach_get_rtc_pll);
49EXPORT_SYMBOL(mach_set_rtc_pll);
50#ifdef CONFIG_INPUT_M68K_BEEP_MODULE
51EXPORT_SYMBOL(mach_beep);
52#endif
53EXPORT_SYMBOL(dump_fpu);
54EXPORT_SYMBOL(dump_thread);
55EXPORT_SYMBOL(kernel_thread);
56#ifdef CONFIG_VME
57EXPORT_SYMBOL(vme_brdtype);
58#endif
59 8
60/* The following are special because they're not called 9/* The following are special because they're not called
61 explicitly (the C compiler generates them). Fortunately, 10 explicitly (the C compiler generates them). Fortunately,
diff --git a/arch/m68k/kernel/process.c b/arch/m68k/kernel/process.c
index 24e83d54dcee..99fc1226f7f8 100644
--- a/arch/m68k/kernel/process.c
+++ b/arch/m68k/kernel/process.c
@@ -187,6 +187,7 @@ int kernel_thread(int (*fn)(void *), void * arg, unsigned long flags)
187 set_fs (fs); 187 set_fs (fs);
188 return pid; 188 return pid;
189} 189}
190EXPORT_SYMBOL(kernel_thread);
190 191
191void flush_thread(void) 192void flush_thread(void)
192{ 193{
@@ -311,6 +312,7 @@ int dump_fpu (struct pt_regs *regs, struct user_m68kfp_struct *fpu)
311 : "memory"); 312 : "memory");
312 return 1; 313 return 1;
313} 314}
315EXPORT_SYMBOL(dump_fpu);
314 316
315/* 317/*
316 * fill in the user structure for a core dump.. 318 * fill in the user structure for a core dump..
@@ -357,6 +359,7 @@ void dump_thread(struct pt_regs * regs, struct user * dump)
357 /* dump floating point stuff */ 359 /* dump floating point stuff */
358 dump->u_fpvalid = dump_fpu (regs, &dump->m68kfp); 360 dump->u_fpvalid = dump_fpu (regs, &dump->m68kfp);
359} 361}
362EXPORT_SYMBOL(dump_thread);
360 363
361/* 364/*
362 * sys_execve() executes a new program. 365 * sys_execve() executes a new program.
diff --git a/arch/m68k/kernel/setup.c b/arch/m68k/kernel/setup.c
index 42d5b85f3350..9af3ee0e555d 100644
--- a/arch/m68k/kernel/setup.c
+++ b/arch/m68k/kernel/setup.c
@@ -42,27 +42,37 @@
42 42
43unsigned long m68k_machtype; 43unsigned long m68k_machtype;
44unsigned long m68k_cputype; 44unsigned long m68k_cputype;
45EXPORT_SYMBOL(m68k_machtype);
46EXPORT_SYMBOL(m68k_cputype);
45unsigned long m68k_fputype; 47unsigned long m68k_fputype;
46unsigned long m68k_mmutype; 48unsigned long m68k_mmutype;
47#ifdef CONFIG_VME 49#ifdef CONFIG_VME
48unsigned long vme_brdtype; 50unsigned long vme_brdtype;
51EXPORT_SYMBOL(vme_brdtype);
49#endif 52#endif
50 53
51int m68k_is040or060; 54int m68k_is040or060;
55EXPORT_SYMBOL(m68k_is040or060);
52 56
53extern int end; 57extern int end;
54extern unsigned long availmem; 58extern unsigned long availmem;
55 59
56int m68k_num_memory; 60int m68k_num_memory;
57int m68k_realnum_memory; 61int m68k_realnum_memory;
62EXPORT_SYMBOL(m68k_realnum_memory);
63#ifdef CONFIG_SINGLE_MEMORY_CHUNK
58unsigned long m68k_memoffset; 64unsigned long m68k_memoffset;
65EXPORT_SYMBOL(m68k_memoffset);
66#endif
59struct mem_info m68k_memory[NUM_MEMINFO]; 67struct mem_info m68k_memory[NUM_MEMINFO];
68EXPORT_SYMBOL(m68k_memory);
60 69
61static struct mem_info m68k_ramdisk; 70static struct mem_info m68k_ramdisk;
62 71
63static char m68k_command_line[CL_SIZE]; 72static char m68k_command_line[CL_SIZE];
64 73
65char m68k_debug_device[6] = ""; 74char m68k_debug_device[6] = "";
75EXPORT_SYMBOL(m68k_debug_device);
66 76
67void (*mach_sched_init) (irq_handler_t handler) __initdata = NULL; 77void (*mach_sched_init) (irq_handler_t handler) __initdata = NULL;
68/* machine dependent irq functions */ 78/* machine dependent irq functions */
@@ -72,10 +82,14 @@ int (*mach_get_hardware_list) (char *buffer);
72/* machine dependent timer functions */ 82/* machine dependent timer functions */
73unsigned long (*mach_gettimeoffset) (void); 83unsigned long (*mach_gettimeoffset) (void);
74int (*mach_hwclk) (int, struct rtc_time*); 84int (*mach_hwclk) (int, struct rtc_time*);
85EXPORT_SYMBOL(mach_hwclk);
75int (*mach_set_clock_mmss) (unsigned long); 86int (*mach_set_clock_mmss) (unsigned long);
76unsigned int (*mach_get_ss)(void); 87unsigned int (*mach_get_ss)(void);
77int (*mach_get_rtc_pll)(struct rtc_pll_info *); 88int (*mach_get_rtc_pll)(struct rtc_pll_info *);
78int (*mach_set_rtc_pll)(struct rtc_pll_info *); 89int (*mach_set_rtc_pll)(struct rtc_pll_info *);
90EXPORT_SYMBOL(mach_get_ss);
91EXPORT_SYMBOL(mach_get_rtc_pll);
92EXPORT_SYMBOL(mach_set_rtc_pll);
79void (*mach_reset)( void ); 93void (*mach_reset)( void );
80void (*mach_halt)( void ); 94void (*mach_halt)( void );
81void (*mach_power_off)( void ); 95void (*mach_power_off)( void );
@@ -89,6 +103,7 @@ void (*mach_l2_flush) (int);
89#endif 103#endif
90#if defined(CONFIG_INPUT_M68K_BEEP) || defined(CONFIG_INPUT_M68K_BEEP_MODULE) 104#if defined(CONFIG_INPUT_M68K_BEEP) || defined(CONFIG_INPUT_M68K_BEEP_MODULE)
91void (*mach_beep)(unsigned int, unsigned int); 105void (*mach_beep)(unsigned int, unsigned int);
106EXPORT_SYMBOL(mach_beep);
92#endif 107#endif
93#if defined(CONFIG_ISA) && defined(MULTI_ISA) 108#if defined(CONFIG_ISA) && defined(MULTI_ISA)
94int isa_type; 109int isa_type;
diff --git a/arch/m68k/mm/kmap.c b/arch/m68k/mm/kmap.c
index f46f049d29ff..b54ef1726c55 100644
--- a/arch/m68k/mm/kmap.c
+++ b/arch/m68k/mm/kmap.c
@@ -7,6 +7,7 @@
7 * used by other architectures /Roman Zippel 7 * used by other architectures /Roman Zippel
8 */ 8 */
9 9
10#include <linux/module.h>
10#include <linux/mm.h> 11#include <linux/mm.h>
11#include <linux/kernel.h> 12#include <linux/kernel.h>
12#include <linux/string.h> 13#include <linux/string.h>
@@ -219,6 +220,7 @@ void __iomem *__ioremap(unsigned long physaddr, unsigned long size, int cachefla
219 220
220 return (void __iomem *)retaddr; 221 return (void __iomem *)retaddr;
221} 222}
223EXPORT_SYMBOL(__ioremap);
222 224
223/* 225/*
224 * Unmap a ioremap()ed region again 226 * Unmap a ioremap()ed region again
@@ -234,6 +236,7 @@ void iounmap(void __iomem *addr)
234 free_io_area((__force void *)addr); 236 free_io_area((__force void *)addr);
235#endif 237#endif
236} 238}
239EXPORT_SYMBOL(iounmap);
237 240
238/* 241/*
239 * __iounmap unmaps nearly everything, so be careful 242 * __iounmap unmaps nearly everything, so be careful
@@ -360,3 +363,4 @@ void kernel_set_cachemode(void *addr, unsigned long size, int cmode)
360 363
361 flush_tlb_all(); 364 flush_tlb_all();
362} 365}
366EXPORT_SYMBOL(kernel_set_cachemode);
diff --git a/arch/m68k/mm/memory.c b/arch/m68k/mm/memory.c
index a0c095e17222..0f88812822b1 100644
--- a/arch/m68k/mm/memory.c
+++ b/arch/m68k/mm/memory.c
@@ -4,6 +4,7 @@
4 * Copyright (C) 1995 Hamish Macdonald 4 * Copyright (C) 1995 Hamish Macdonald
5 */ 5 */
6 6
7#include <linux/module.h>
7#include <linux/mm.h> 8#include <linux/mm.h>
8#include <linux/kernel.h> 9#include <linux/kernel.h>
9#include <linux/string.h> 10#include <linux/string.h>
@@ -157,9 +158,8 @@ unsigned long mm_vtop(unsigned long vaddr)
157 158
158 return -1; 159 return -1;
159} 160}
160#endif 161EXPORT_SYMBOL(mm_vtop);
161 162
162#ifndef CONFIG_SINGLE_MEMORY_CHUNK
163unsigned long mm_ptov (unsigned long paddr) 163unsigned long mm_ptov (unsigned long paddr)
164{ 164{
165 int i = 0; 165 int i = 0;
@@ -185,6 +185,7 @@ unsigned long mm_ptov (unsigned long paddr)
185#endif 185#endif
186 return -1; 186 return -1;
187} 187}
188EXPORT_SYMBOL(mm_ptov);
188#endif 189#endif
189 190
190/* invalidate page in both caches */ 191/* invalidate page in both caches */
@@ -298,6 +299,7 @@ void cache_clear (unsigned long paddr, int len)
298 mach_l2_flush(0); 299 mach_l2_flush(0);
299#endif 300#endif
300} 301}
302EXPORT_SYMBOL(cache_clear); /* probably can be unexported */
301 303
302 304
303/* 305/*
@@ -350,6 +352,7 @@ void cache_push (unsigned long paddr, int len)
350 mach_l2_flush(1); 352 mach_l2_flush(1);
351#endif 353#endif
352} 354}
355EXPORT_SYMBOL(cache_push); /* probably can be unexported */
353 356
354#ifndef CONFIG_SINGLE_MEMORY_CHUNK 357#ifndef CONFIG_SINGLE_MEMORY_CHUNK
355int mm_end_of_chunk (unsigned long addr, int len) 358int mm_end_of_chunk (unsigned long addr, int len)
@@ -361,4 +364,5 @@ int mm_end_of_chunk (unsigned long addr, int len)
361 return 1; 364 return 1;
362 return 0; 365 return 0;
363} 366}
367EXPORT_SYMBOL(mm_end_of_chunk);
364#endif 368#endif
diff --git a/arch/m68k/mm/sun3kmap.c b/arch/m68k/mm/sun3kmap.c
index 8caa45908cb1..1af24cb5bfe1 100644
--- a/arch/m68k/mm/sun3kmap.c
+++ b/arch/m68k/mm/sun3kmap.c
@@ -8,6 +8,7 @@
8 * for more details. 8 * for more details.
9 */ 9 */
10 10
11#include <linux/module.h>
11#include <linux/types.h> 12#include <linux/types.h>
12#include <linux/kernel.h> 13#include <linux/kernel.h>
13#include <linux/mm.h> 14#include <linux/mm.h>
@@ -112,11 +113,13 @@ void __iomem *__ioremap(unsigned long phys, unsigned long size, int cache)
112 return sun3_ioremap(phys, size, SUN3_PAGE_TYPE_IO); 113 return sun3_ioremap(phys, size, SUN3_PAGE_TYPE_IO);
113 114
114} 115}
116EXPORT_SYMBOL(__ioremap);
115 117
116void iounmap(void __iomem *addr) 118void iounmap(void __iomem *addr)
117{ 119{
118 vfree((void *)(PAGE_MASK & (unsigned long)addr)); 120 vfree((void *)(PAGE_MASK & (unsigned long)addr));
119} 121}
122EXPORT_SYMBOL(iounmap);
120 123
121/* sun3_map_test(addr, val) -- Reads a byte from addr, storing to val, 124/* sun3_map_test(addr, val) -- Reads a byte from addr, storing to val,
122 * trapping the potential read fault. Returns 0 if the access faulted, 125 * trapping the potential read fault. Returns 0 if the access faulted,
diff --git a/arch/m68k/sun3/Makefile b/arch/m68k/sun3/Makefile
index 4d4f0695d985..be1a8470d636 100644
--- a/arch/m68k/sun3/Makefile
+++ b/arch/m68k/sun3/Makefile
@@ -2,6 +2,6 @@
2# Makefile for Linux arch/m68k/sun3 source directory 2# Makefile for Linux arch/m68k/sun3 source directory
3# 3#
4 4
5obj-y := sun3_ksyms.o sun3ints.o sun3dvma.o sbus.o idprom.o 5obj-y := sun3ints.o sun3dvma.o sbus.o idprom.o
6 6
7obj-$(CONFIG_SUN3) += config.o mmu_emu.o leds.o dvma.o intersil.o 7obj-$(CONFIG_SUN3) += config.o mmu_emu.o leds.o dvma.o intersil.o
diff --git a/arch/m68k/sun3/idprom.c b/arch/m68k/sun3/idprom.c
index 02c1fee6fe74..dca6ab6a4ede 100644
--- a/arch/m68k/sun3/idprom.c
+++ b/arch/m68k/sun3/idprom.c
@@ -6,6 +6,7 @@
6 * Sun3/3x models added by David Monro (davidm@psrg.cs.usyd.edu.au) 6 * Sun3/3x models added by David Monro (davidm@psrg.cs.usyd.edu.au)
7 */ 7 */
8 8
9#include <linux/module.h>
9#include <linux/kernel.h> 10#include <linux/kernel.h>
10#include <linux/types.h> 11#include <linux/types.h>
11#include <linux/init.h> 12#include <linux/init.h>
@@ -16,6 +17,8 @@
16#include <asm/machines.h> /* Fun with Sun released architectures. */ 17#include <asm/machines.h> /* Fun with Sun released architectures. */
17 18
18struct idprom *idprom; 19struct idprom *idprom;
20EXPORT_SYMBOL(idprom);
21
19static struct idprom idprom_buffer; 22static struct idprom idprom_buffer;
20 23
21/* Here is the master table of Sun machines which use some implementation 24/* Here is the master table of Sun machines which use some implementation
diff --git a/arch/m68k/sun3/sun3_ksyms.c b/arch/m68k/sun3/sun3_ksyms.c
deleted file mode 100644
index 43e5a9af8abd..000000000000
--- a/arch/m68k/sun3/sun3_ksyms.c
+++ /dev/null
@@ -1,13 +0,0 @@
1#include <linux/module.h>
2#include <linux/types.h>
3#include <asm/dvma.h>
4#include <asm/idprom.h>
5
6/*
7 * Add things here when you find the need for it.
8 */
9EXPORT_SYMBOL(dvma_map_align);
10EXPORT_SYMBOL(dvma_unmap);
11EXPORT_SYMBOL(dvma_malloc_align);
12EXPORT_SYMBOL(dvma_free);
13EXPORT_SYMBOL(idprom);
diff --git a/arch/m68k/sun3/sun3dvma.c b/arch/m68k/sun3/sun3dvma.c
index a2bc2da7f8f0..8709677fa025 100644
--- a/arch/m68k/sun3/sun3dvma.c
+++ b/arch/m68k/sun3/sun3dvma.c
@@ -6,6 +6,7 @@
6 * Contains common routines for sun3/sun3x DVMA management. 6 * Contains common routines for sun3/sun3x DVMA management.
7 */ 7 */
8 8
9#include <linux/module.h>
9#include <linux/kernel.h> 10#include <linux/kernel.h>
10#include <linux/mm.h> 11#include <linux/mm.h>
11#include <linux/list.h> 12#include <linux/list.h>
@@ -312,6 +313,7 @@ inline unsigned long dvma_map_align(unsigned long kaddr, int len, int align)
312 BUG(); 313 BUG();
313 return 0; 314 return 0;
314} 315}
316EXPORT_SYMBOL(dvma_map_align);
315 317
316void dvma_unmap(void *baddr) 318void dvma_unmap(void *baddr)
317{ 319{
@@ -327,7 +329,7 @@ void dvma_unmap(void *baddr)
327 return; 329 return;
328 330
329} 331}
330 332EXPORT_SYMBOL(dvma_unmap);
331 333
332void *dvma_malloc_align(unsigned long len, unsigned long align) 334void *dvma_malloc_align(unsigned long len, unsigned long align)
333{ 335{
@@ -367,6 +369,7 @@ void *dvma_malloc_align(unsigned long len, unsigned long align)
367 return (void *)vaddr; 369 return (void *)vaddr;
368 370
369} 371}
372EXPORT_SYMBOL(dvma_malloc_align);
370 373
371void dvma_free(void *vaddr) 374void dvma_free(void *vaddr)
372{ 375{
@@ -374,3 +377,4 @@ void dvma_free(void *vaddr)
374 return; 377 return;
375 378
376} 379}
380EXPORT_SYMBOL(dvma_free);