1 #include <linux/config.h>
2 #include <linux/module.h>
3 #include <linux/threads.h>
5 #include <linux/sched.h>
6 #include <linux/elfcore.h>
7 #include <linux/string.h>
8 #include <linux/interrupt.h>
10 #include <linux/vt_kern.h>
11 #include <linux/nvram.h>
12 #include <linux/console.h>
13 #include <linux/irq.h>
14 #include <linux/pci.h>
15 #include <linux/delay.h>
16 #include <linux/ide.h>
18 #include <linux/bitops.h>
21 #include <asm/semaphore.h>
22 #include <asm/processor.h>
23 #include <asm/uaccess.h>
26 #include <asm/atomic.h>
27 #include <asm/checksum.h>
28 #include <asm/pgtable.h>
29 #include <asm/tlbflush.h>
30 #include <linux/adb.h>
31 #include <linux/cuda.h>
32 #include <linux/pmu.h>
34 #include <asm/system.h>
35 #include <asm/pci-bridge.h>
37 #include <asm/pmac_feature.h>
39 #include <asm/machdep.h>
40 #include <asm/hw_irq.h>
41 #include <asm/nvram.h>
42 #include <asm/mmu_context.h>
43 #include <asm/backlight.h>
45 #include <asm/cputable.h>
46 #include <asm/btext.h>
47 #include <asm/div64.h>
51 #include <asm/commproc.h>
54 /* Tell string.h we don't want memcpy etc. as cpp defines */
55 #define EXPORT_SYMTAB_STROPS
57 extern void transfer_to_handler(void);
58 extern void do_syscall_trace(void);
59 extern void do_IRQ(struct pt_regs
*regs
);
60 extern void MachineCheckException(struct pt_regs
*regs
);
61 extern void AlignmentException(struct pt_regs
*regs
);
62 extern void ProgramCheckException(struct pt_regs
*regs
);
63 extern void SingleStepException(struct pt_regs
*regs
);
64 extern int do_signal(sigset_t
*, struct pt_regs
*);
65 extern int pmac_newworld
;
66 extern int sys_sigreturn(struct pt_regs
*regs
);
68 long long __ashrdi3(long long, int);
69 long long __ashldi3(long long, int);
70 long long __lshrdi3(long long, int);
72 extern unsigned long mm_ptov (unsigned long paddr
);
74 EXPORT_SYMBOL(clear_pages
);
75 EXPORT_SYMBOL(clear_user_page
);
76 EXPORT_SYMBOL(do_signal
);
77 EXPORT_SYMBOL(do_syscall_trace
);
78 EXPORT_SYMBOL(transfer_to_handler
);
79 EXPORT_SYMBOL(do_IRQ
);
80 EXPORT_SYMBOL(MachineCheckException
);
81 EXPORT_SYMBOL(AlignmentException
);
82 EXPORT_SYMBOL(ProgramCheckException
);
83 EXPORT_SYMBOL(SingleStepException
);
84 EXPORT_SYMBOL(sys_sigreturn
);
85 EXPORT_SYMBOL(ppc_n_lost_interrupts
);
86 EXPORT_SYMBOL(ppc_lost_interrupts
);
88 EXPORT_SYMBOL(ISA_DMA_THRESHOLD
);
89 EXPORT_SYMBOL(DMA_MODE_READ
);
90 EXPORT_SYMBOL(DMA_MODE_WRITE
);
91 #if defined(CONFIG_PPC_PREP)
92 EXPORT_SYMBOL(_prep_type
);
93 EXPORT_SYMBOL(ucSystemType
);
96 #if !defined(__INLINE_BITOPS)
97 EXPORT_SYMBOL(set_bit
);
98 EXPORT_SYMBOL(clear_bit
);
99 EXPORT_SYMBOL(change_bit
);
100 EXPORT_SYMBOL(test_and_set_bit
);
101 EXPORT_SYMBOL(test_and_clear_bit
);
102 EXPORT_SYMBOL(test_and_change_bit
);
103 #endif /* __INLINE_BITOPS */
105 EXPORT_SYMBOL(strcpy
);
106 EXPORT_SYMBOL(strncpy
);
107 EXPORT_SYMBOL(strcat
);
108 EXPORT_SYMBOL(strncat
);
109 EXPORT_SYMBOL(strchr
);
110 EXPORT_SYMBOL(strrchr
);
111 EXPORT_SYMBOL(strpbrk
);
112 EXPORT_SYMBOL(strstr
);
113 EXPORT_SYMBOL(strlen
);
114 EXPORT_SYMBOL(strnlen
);
115 EXPORT_SYMBOL(strcmp
);
116 EXPORT_SYMBOL(strncmp
);
117 EXPORT_SYMBOL(strcasecmp
);
118 EXPORT_SYMBOL(__div64_32
);
120 EXPORT_SYMBOL(csum_partial
);
121 EXPORT_SYMBOL(csum_partial_copy_generic
);
122 EXPORT_SYMBOL(ip_fast_csum
);
123 EXPORT_SYMBOL(csum_tcpudp_magic
);
125 EXPORT_SYMBOL(__copy_tofrom_user
);
126 EXPORT_SYMBOL(__clear_user
);
127 EXPORT_SYMBOL(__strncpy_from_user
);
128 EXPORT_SYMBOL(__strnlen_user
);
137 EXPORT_SYMBOL(outsl);*/
139 EXPORT_SYMBOL(_insb
);
140 EXPORT_SYMBOL(_outsb
);
141 EXPORT_SYMBOL(_insw
);
142 EXPORT_SYMBOL(_outsw
);
143 EXPORT_SYMBOL(_insl
);
144 EXPORT_SYMBOL(_outsl
);
145 EXPORT_SYMBOL(_insw_ns
);
146 EXPORT_SYMBOL(_outsw_ns
);
147 EXPORT_SYMBOL(_insl_ns
);
148 EXPORT_SYMBOL(_outsl_ns
);
150 EXPORT_SYMBOL(mm_ptov
);
151 EXPORT_SYMBOL(ioremap
);
153 EXPORT_SYMBOL(ioremap64
);
155 EXPORT_SYMBOL(__ioremap
);
156 EXPORT_SYMBOL(iounmap
);
157 EXPORT_SYMBOL(ioremap_bot
); /* aka VMALLOC_END */
159 #if defined(CONFIG_BLK_DEV_IDE) || defined(CONFIG_BLK_DEV_IDE_MODULE)
160 EXPORT_SYMBOL(ppc_ide_md
);
164 EXPORT_SYMBOL(isa_io_base
);
165 EXPORT_SYMBOL(isa_mem_base
);
166 EXPORT_SYMBOL(pci_dram_offset
);
167 EXPORT_SYMBOL(pci_alloc_consistent
);
168 EXPORT_SYMBOL(pci_free_consistent
);
169 EXPORT_SYMBOL(pci_bus_io_base
);
170 EXPORT_SYMBOL(pci_bus_io_base_phys
);
171 EXPORT_SYMBOL(pci_bus_mem_base_phys
);
172 EXPORT_SYMBOL(pci_bus_to_hose
);
173 EXPORT_SYMBOL(pci_resource_to_bus
);
174 EXPORT_SYMBOL(pci_phys_to_bus
);
175 EXPORT_SYMBOL(pci_bus_to_phys
);
176 #endif /* CONFIG_PCI */
178 #ifdef CONFIG_NOT_COHERENT_CACHE
179 EXPORT_SYMBOL(flush_dcache_all
);
182 EXPORT_SYMBOL(start_thread
);
183 EXPORT_SYMBOL(kernel_thread
);
185 EXPORT_SYMBOL(flush_instruction_cache
);
186 EXPORT_SYMBOL(giveup_fpu
);
187 EXPORT_SYMBOL(flush_icache_range
);
188 EXPORT_SYMBOL(flush_dcache_range
);
189 EXPORT_SYMBOL(flush_icache_user_range
);
190 EXPORT_SYMBOL(flush_dcache_page
);
191 EXPORT_SYMBOL(flush_tlb_kernel_range
);
192 EXPORT_SYMBOL(flush_tlb_page
);
193 EXPORT_SYMBOL(_tlbie
);
194 #ifdef CONFIG_ALTIVEC
195 EXPORT_SYMBOL(last_task_used_altivec
);
196 EXPORT_SYMBOL(giveup_altivec
);
197 #endif /* CONFIG_ALTIVEC */
199 EXPORT_SYMBOL(last_task_used_spe
);
200 EXPORT_SYMBOL(giveup_spe
);
201 #endif /* CONFIG_SPE */
203 EXPORT_SYMBOL(smp_call_function
);
204 EXPORT_SYMBOL(smp_hw_index
);
207 EXPORT_SYMBOL(ppc_md
);
210 EXPORT_SYMBOL(adb_request
);
211 EXPORT_SYMBOL(adb_register
);
212 EXPORT_SYMBOL(adb_unregister
);
213 EXPORT_SYMBOL(adb_poll
);
214 EXPORT_SYMBOL(adb_try_handler_change
);
215 #endif /* CONFIG_ADB */
216 #ifdef CONFIG_ADB_CUDA
217 EXPORT_SYMBOL(cuda_request
);
218 EXPORT_SYMBOL(cuda_poll
);
219 #endif /* CONFIG_ADB_CUDA */
220 #ifdef CONFIG_PPC_MULTIPLATFORM
221 EXPORT_SYMBOL(_machine
);
223 #ifdef CONFIG_PPC_PMAC
224 EXPORT_SYMBOL(sys_ctrler
);
225 EXPORT_SYMBOL(pmac_newworld
);
228 EXPORT_SYMBOL(find_devices
);
229 EXPORT_SYMBOL(find_type_devices
);
230 EXPORT_SYMBOL(find_compatible_devices
);
231 EXPORT_SYMBOL(find_path_device
);
232 EXPORT_SYMBOL(device_is_compatible
);
233 EXPORT_SYMBOL(machine_is_compatible
);
234 EXPORT_SYMBOL(find_all_nodes
);
235 EXPORT_SYMBOL(get_property
);
236 EXPORT_SYMBOL(request_OF_resource
);
237 EXPORT_SYMBOL(release_OF_resource
);
238 EXPORT_SYMBOL(pci_busdev_to_OF_node
);
239 EXPORT_SYMBOL(pci_device_to_OF_node
);
240 EXPORT_SYMBOL(pci_device_from_OF_node
);
241 EXPORT_SYMBOL(of_find_node_by_name
);
242 EXPORT_SYMBOL(of_find_node_by_type
);
243 EXPORT_SYMBOL(of_find_compatible_node
);
244 EXPORT_SYMBOL(of_find_node_by_path
);
245 EXPORT_SYMBOL(of_find_all_nodes
);
246 EXPORT_SYMBOL(of_get_parent
);
247 EXPORT_SYMBOL(of_get_next_child
);
248 EXPORT_SYMBOL(of_node_get
);
249 EXPORT_SYMBOL(of_node_put
);
250 #endif /* CONFIG_PPC_OF */
251 #if defined(CONFIG_BOOTX_TEXT)
252 EXPORT_SYMBOL(btext_update_display
);
254 #if defined(CONFIG_SCSI) && defined(CONFIG_PPC_PMAC)
255 EXPORT_SYMBOL(note_scsi_host
);
258 EXPORT_SYMBOL(kd_mksound
);
260 EXPORT_SYMBOL(to_tm
);
262 EXPORT_SYMBOL(pm_power_off
);
264 EXPORT_SYMBOL(__ashrdi3
);
265 EXPORT_SYMBOL(__ashldi3
);
266 EXPORT_SYMBOL(__lshrdi3
);
267 EXPORT_SYMBOL(memcpy
);
268 EXPORT_SYMBOL(memset
);
269 EXPORT_SYMBOL(memmove
);
270 EXPORT_SYMBOL(memscan
);
271 EXPORT_SYMBOL(memcmp
);
272 EXPORT_SYMBOL(memchr
);
274 #if defined(CONFIG_FB_VGA16_MODULE)
275 EXPORT_SYMBOL(screen_info
);
278 EXPORT_SYMBOL(__delay
);
280 EXPORT_SYMBOL(local_irq_enable
);
281 EXPORT_SYMBOL(local_irq_enable_end
);
282 EXPORT_SYMBOL(local_irq_disable
);
283 EXPORT_SYMBOL(local_irq_disable_end
);
284 EXPORT_SYMBOL(local_save_flags_ptr
);
285 EXPORT_SYMBOL(local_save_flags_ptr_end
);
286 EXPORT_SYMBOL(local_irq_restore
);
287 EXPORT_SYMBOL(local_irq_restore_end
);
289 EXPORT_SYMBOL(timer_interrupt
);
290 EXPORT_SYMBOL(irq_desc
);
291 EXPORT_SYMBOL(tb_ticks_per_jiffy
);
292 EXPORT_SYMBOL(get_wchan
);
293 EXPORT_SYMBOL(console_drivers
);
296 EXPORT_SYMBOL(xmon_printf
);
299 EXPORT_SYMBOL(__down
);
300 EXPORT_SYMBOL(__down_interruptible
);
302 #if defined(CONFIG_KGDB) || defined(CONFIG_XMON)
303 extern void (*debugger
)(struct pt_regs
*regs
);
304 extern int (*debugger_bpt
)(struct pt_regs
*regs
);
305 extern int (*debugger_sstep
)(struct pt_regs
*regs
);
306 extern int (*debugger_iabr_match
)(struct pt_regs
*regs
);
307 extern int (*debugger_dabr_match
)(struct pt_regs
*regs
);
308 extern void (*debugger_fault_handler
)(struct pt_regs
*regs
);
310 EXPORT_SYMBOL(debugger
);
311 EXPORT_SYMBOL(debugger_bpt
);
312 EXPORT_SYMBOL(debugger_sstep
);
313 EXPORT_SYMBOL(debugger_iabr_match
);
314 EXPORT_SYMBOL(debugger_dabr_match
);
315 EXPORT_SYMBOL(debugger_fault_handler
);
319 EXPORT_SYMBOL(cpm_install_handler
);
320 EXPORT_SYMBOL(cpm_free_handler
);
321 #endif /* CONFIG_8xx */
322 #if defined(CONFIG_8xx) || defined(CONFIG_40x) || defined(CONFIG_85xx) ||\
324 EXPORT_SYMBOL(__res
);
327 EXPORT_SYMBOL(next_mmu_context
);
328 EXPORT_SYMBOL(set_context
);
329 EXPORT_SYMBOL(handle_mm_fault
); /* For MOL */
330 EXPORT_SYMBOL(disarm_decr
);
331 #ifdef CONFIG_PPC_STD_MMU
332 extern long mol_trampoline
;
333 EXPORT_SYMBOL(mol_trampoline
); /* For MOL */
334 EXPORT_SYMBOL(flush_hash_pages
); /* For MOL */
336 extern int mmu_hash_lock
;
337 EXPORT_SYMBOL(mmu_hash_lock
); /* For MOL */
338 #endif /* CONFIG_SMP */
339 extern long *intercept_table
;
340 EXPORT_SYMBOL(intercept_table
);
341 #endif /* CONFIG_PPC_STD_MMU */
342 EXPORT_SYMBOL(cur_cpu_spec
);
343 #ifdef CONFIG_PPC_PMAC
344 extern unsigned long agp_special_page
;
345 EXPORT_SYMBOL(agp_special_page
);
347 #if defined(CONFIG_40x) || defined(CONFIG_BOOKE)
348 EXPORT_SYMBOL(__mtdcr
);
349 EXPORT_SYMBOL(__mfdcr
);