Commit 0a58cf1a authored by Linus Torvalds's avatar Linus Torvalds

Merge bk://kernel.bkbits.net/acme/ksyms-2.6

into home.osdl.org:/home/torvalds/v2.5/linux
parents 047f9b27 ff08f6fe
...@@ -315,8 +315,4 @@ X!Idrivers/video/console/fonts.c ...@@ -315,8 +315,4 @@ X!Idrivers/video/console/fonts.c
--> -->
</sect1> </sect1>
</chapter> </chapter>
<!-- Needs ksyms to list additional exported symbols, but no specific doc.
docproc do not care about sgml commants.
!Dkernel/ksyms.c
-->
</book> </book>
...@@ -139,8 +139,7 @@ collected from files listed in Documentation/DocBook/Makefile. ...@@ -139,8 +139,7 @@ collected from files listed in Documentation/DocBook/Makefile.
_not_ exported using EXPORT_SYMBOL. _not_ exported using EXPORT_SYMBOL.
!D<filename> is used to name additional files to search for functions !D<filename> is used to name additional files to search for functions
exported using EXPORT_SYMBOL. For example many symbols are only exported exported using EXPORT_SYMBOL.
in kernel/ksyms.c, therefore kernel-api.sgml include this file with !D.
!F<filename> <function [functions...]> is replaced by the !F<filename> <function [functions...]> is replaced by the
documentation, in <filename>, for the functions listed. documentation, in <filename>, for the functions listed.
......
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -13,6 +14,9 @@ static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); ...@@ -13,6 +14,9 @@ static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_mm);
EXPORT_SYMBOL(init_task);
union thread_union init_thread_union union thread_union init_thread_union
__attribute__((section(".data.init_thread"))) __attribute__((section(".data.init_thread")))
= { INIT_THREAD_INFO(init_task) }; = { INIT_THREAD_INFO(init_task) };
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/signal.h> #include <linux/signal.h>
...@@ -472,6 +473,8 @@ request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_regs ...@@ -472,6 +473,8 @@ request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_regs
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
void void
free_irq(unsigned int irq, void *dev_id) free_irq(unsigned int irq, void *dev_id)
{ {
...@@ -518,6 +521,8 @@ free_irq(unsigned int irq, void *dev_id) ...@@ -518,6 +521,8 @@ free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
int int
show_interrupts(struct seq_file *p, void *v) show_interrupts(struct seq_file *p, void *v)
{ {
...@@ -752,6 +757,8 @@ probe_irq_on(void) ...@@ -752,6 +757,8 @@ probe_irq_on(void)
return val; return val;
} }
EXPORT_SYMBOL(probe_irq_on);
/* /*
* Return a mask of triggered interrupts (this * Return a mask of triggered interrupts (this
* can handle only legacy ISA interrupts). * can handle only legacy ISA interrupts).
...@@ -823,6 +830,8 @@ probe_irq_off(unsigned long val) ...@@ -823,6 +830,8 @@ probe_irq_off(unsigned long val)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
void synchronize_irq(unsigned int irq) void synchronize_irq(unsigned int irq)
{ {
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
...@@ -164,18 +165,24 @@ machine_restart(char *restart_cmd) ...@@ -164,18 +165,24 @@ machine_restart(char *restart_cmd)
common_shutdown(LINUX_REBOOT_CMD_RESTART, restart_cmd); common_shutdown(LINUX_REBOOT_CMD_RESTART, restart_cmd);
} }
EXPORT_SYMBOL(machine_restart);
void void
machine_halt(void) machine_halt(void)
{ {
common_shutdown(LINUX_REBOOT_CMD_HALT, NULL); common_shutdown(LINUX_REBOOT_CMD_HALT, NULL);
} }
EXPORT_SYMBOL(machine_halt);
void void
machine_power_off(void) machine_power_off(void)
{ {
common_shutdown(LINUX_REBOOT_CMD_POWER_OFF, NULL); common_shutdown(LINUX_REBOOT_CMD_POWER_OFF, NULL);
} }
EXPORT_SYMBOL(machine_power_off);
/* Used by sysrq-p, among others. I don't believe r9-r15 are ever /* Used by sysrq-p, among others. I don't believe r9-r15 are ever
saved in the context it's used. */ saved in the context it's used. */
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/threads.h> #include <linux/threads.h>
...@@ -73,6 +74,8 @@ static int smp_secondary_alive __initdata = 0; ...@@ -73,6 +74,8 @@ static int smp_secondary_alive __initdata = 0;
unsigned long cpu_present_mask; unsigned long cpu_present_mask;
cpumask_t cpu_online_map; cpumask_t cpu_online_map;
EXPORT_SYMBOL(cpu_online_map);
/* cpus reported in the hwrpb */ /* cpus reported in the hwrpb */
static unsigned long hwrpb_cpu_present_mask __initdata = 0; static unsigned long hwrpb_cpu_present_mask __initdata = 0;
......
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -52,6 +53,8 @@ ...@@ -52,6 +53,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
extern unsigned long wall_jiffies; /* kernel/timer.c */ extern unsigned long wall_jiffies; /* kernel/timer.c */
static int set_rtc_mmss(unsigned long); static int set_rtc_mmss(unsigned long);
...@@ -457,6 +460,8 @@ do_gettimeofday(struct timeval *tv) ...@@ -457,6 +460,8 @@ do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int int
do_settimeofday(struct timespec *tv) do_settimeofday(struct timespec *tv)
{ {
...@@ -501,6 +506,8 @@ do_settimeofday(struct timespec *tv) ...@@ -501,6 +506,8 @@ do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* In order to set the CMOS clock precisely, set_rtc_mmss has to be * In order to set the CMOS clock precisely, set_rtc_mmss has to be
......
...@@ -177,6 +177,8 @@ void dump_stack(void) ...@@ -177,6 +177,8 @@ void dump_stack(void)
show_stack(NULL, NULL); show_stack(NULL, NULL);
} }
EXPORT_SYMBOL(dump_stack);
void void
die_if_kernel(char * str, struct pt_regs *regs, long err, unsigned long *r9_15) die_if_kernel(char * str, struct pt_regs *regs, long err, unsigned long *r9_15)
{ {
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
* Rick Gorton <rick.gorton@alpha-processor.com> * Rick Gorton <rick.gorton@alpha-processor.com>
*/ */
#include <linux/module.h>
#include <linux/string.h> #include <linux/string.h>
#include <asm/byteorder.h> #include <asm/byteorder.h>
...@@ -173,6 +174,8 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum) ...@@ -173,6 +174,8 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum)
return result; return result;
} }
EXPORT_SYMBOL(csum_partial);
/* /*
* this routine is used for miscellaneous IP-like checksums, mainly * this routine is used for miscellaneous IP-like checksums, mainly
* in icmp.c * in icmp.c
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
* linux/arch/arm/kernel/init_task.c * linux/arch/arm/kernel/init_task.c
*/ */
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/fs.h> #include <linux/fs.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
...@@ -16,6 +17,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -16,6 +17,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -36,3 +39,5 @@ union thread_union init_thread_union ...@@ -36,3 +39,5 @@ union thread_union init_thread_union
* All other task structs will be allocated on slabs in fork.c * All other task structs will be allocated on slabs in fork.c
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/ioport.h> #include <linux/ioport.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
...@@ -653,6 +654,8 @@ int request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_ ...@@ -653,6 +654,8 @@ int request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
/** /**
* free_irq - free an interrupt * free_irq - free an interrupt
* @irq: Interrupt line to free * @irq: Interrupt line to free
...@@ -696,6 +699,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -696,6 +699,8 @@ void free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
static DECLARE_MUTEX(probe_sem); static DECLARE_MUTEX(probe_sem);
/* Start the interrupt probing. Unlike other architectures, /* Start the interrupt probing. Unlike other architectures,
...@@ -750,6 +755,8 @@ unsigned long probe_irq_on(void) ...@@ -750,6 +755,8 @@ unsigned long probe_irq_on(void)
return irqs; return irqs;
} }
EXPORT_SYMBOL(probe_irq_on);
unsigned int probe_irq_mask(unsigned long irqs) unsigned int probe_irq_mask(unsigned long irqs)
{ {
unsigned int mask = 0, i; unsigned int mask = 0, i;
...@@ -801,6 +808,8 @@ int probe_irq_off(unsigned long irqs) ...@@ -801,6 +808,8 @@ int probe_irq_off(unsigned long irqs)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
void __init init_irq_proc(void) void __init init_irq_proc(void)
{ {
} }
......
...@@ -45,11 +45,15 @@ void disable_hlt(void) ...@@ -45,11 +45,15 @@ void disable_hlt(void)
hlt_counter++; hlt_counter++;
} }
EXPORT_SYMBOL(disable_hlt);
void enable_hlt(void) void enable_hlt(void)
{ {
hlt_counter--; hlt_counter--;
} }
EXPORT_SYMBOL(enable_hlt);
static int __init nohlt_setup(char *__unused) static int __init nohlt_setup(char *__unused)
{ {
hlt_counter = 1; hlt_counter = 1;
...@@ -119,12 +123,16 @@ void machine_halt(void) ...@@ -119,12 +123,16 @@ void machine_halt(void)
{ {
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
if (pm_power_off) if (pm_power_off)
pm_power_off(); pm_power_off();
} }
EXPORT_SYMBOL(machine_power_off);
void machine_restart(char * __unused) void machine_restart(char * __unused)
{ {
/* /*
...@@ -153,6 +161,8 @@ void machine_restart(char * __unused) ...@@ -153,6 +161,8 @@ void machine_restart(char * __unused)
while (1); while (1);
} }
EXPORT_SYMBOL(machine_restart);
void show_regs(struct pt_regs * regs) void show_regs(struct pt_regs * regs)
{ {
unsigned long flags; unsigned long flags;
......
...@@ -35,6 +35,8 @@ ...@@ -35,6 +35,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
extern unsigned long wall_jiffies; extern unsigned long wall_jiffies;
/* this needs a better home */ /* this needs a better home */
...@@ -222,6 +224,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -222,6 +224,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, sec = tv->tv_sec; time_t wtm_sec, sec = tv->tv_sec;
...@@ -255,6 +259,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -255,6 +259,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
static struct irqaction timer_irq = { static struct irqaction timer_irq = {
.name = "timer", .name = "timer",
.flags = SA_INTERRUPT, .flags = SA_INTERRUPT,
......
...@@ -178,6 +178,8 @@ void dump_stack(void) ...@@ -178,6 +178,8 @@ void dump_stack(void)
#endif #endif
} }
EXPORT_SYMBOL(dump_stack);
void show_stack(struct task_struct *tsk, unsigned long *sp) void show_stack(struct task_struct *tsk, unsigned long *sp)
{ {
unsigned long fp; unsigned long fp;
......
...@@ -5,6 +5,7 @@ ...@@ -5,6 +5,7 @@
* *
*/ */
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/fs.h> #include <linux/fs.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
...@@ -19,6 +20,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -19,6 +20,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -39,3 +42,5 @@ union thread_union init_thread_union ...@@ -39,3 +42,5 @@ union thread_union init_thread_union
* All other task structs will be allocated on slabs in fork.c * All other task structs will be allocated on slabs in fork.c
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
* Naturally it's not a 1:1 relation, but there are similarities. * Naturally it's not a 1:1 relation, but there are similarities.
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/ptrace.h> #include <linux/ptrace.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/signal.h> #include <linux/signal.h>
...@@ -560,6 +561,8 @@ int request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_ ...@@ -560,6 +561,8 @@ int request_irq(unsigned int irq, irqreturn_t (*handler)(int, void *, struct pt_
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
/** /**
* free_irq - free an interrupt * free_irq - free an interrupt
* @irq: Interrupt line to free * @irq: Interrupt line to free
...@@ -603,6 +606,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -603,6 +606,8 @@ void free_irq(unsigned int irq, void *dev_id)
spin_unlock_irqrestore(&irq_controller_lock, flags); spin_unlock_irqrestore(&irq_controller_lock, flags);
} }
EXPORT_SYMBOL(free_irq);
/* Start the interrupt probing. Unlike other architectures, /* Start the interrupt probing. Unlike other architectures,
* we don't return a mask of interrupts from probe_irq_on, * we don't return a mask of interrupts from probe_irq_on,
* but return the number of interrupts enabled for the probe. * but return the number of interrupts enabled for the probe.
...@@ -653,6 +658,8 @@ unsigned long probe_irq_on(void) ...@@ -653,6 +658,8 @@ unsigned long probe_irq_on(void)
return irqs; return irqs;
} }
EXPORT_SYMBOL(probe_irq_on);
/* /*
* Possible return values: * Possible return values:
* >= 0 - interrupt number * >= 0 - interrupt number
...@@ -687,6 +694,8 @@ int probe_irq_off(unsigned long irqs) ...@@ -687,6 +694,8 @@ int probe_irq_off(unsigned long irqs)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
void __init init_irq_proc(void) void __init init_irq_proc(void)
{ {
} }
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <stdarg.h> #include <stdarg.h>
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
...@@ -42,11 +43,15 @@ void disable_hlt(void) ...@@ -42,11 +43,15 @@ void disable_hlt(void)
hlt_counter++; hlt_counter++;
} }
EXPORT_SYMBOL(disable_hlt);
void enable_hlt(void) void enable_hlt(void)
{ {
hlt_counter--; hlt_counter--;
} }
EXPORT_SYMBOL(enable_hlt);
static int __init nohlt_setup(char *__unused) static int __init nohlt_setup(char *__unused)
{ {
hlt_counter = 1; hlt_counter = 1;
...@@ -115,6 +120,8 @@ void machine_halt(void) ...@@ -115,6 +120,8 @@ void machine_halt(void)
leds_event(led_halted); leds_event(led_halted);
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
leds_event(led_halted); leds_event(led_halted);
...@@ -122,6 +129,8 @@ void machine_power_off(void) ...@@ -122,6 +129,8 @@ void machine_power_off(void)
pm_power_off(); pm_power_off();
} }
EXPORT_SYMBOL(machine_power_off);
void machine_restart(char * __unused) void machine_restart(char * __unused)
{ {
/* /*
...@@ -152,6 +161,8 @@ void machine_restart(char * __unused) ...@@ -152,6 +161,8 @@ void machine_restart(char * __unused)
while (1); while (1);
} }
EXPORT_SYMBOL(machine_restart);
void show_regs(struct pt_regs * regs) void show_regs(struct pt_regs * regs)
{ {
unsigned long flags; unsigned long flags;
......
...@@ -36,6 +36,8 @@ ...@@ -36,6 +36,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
extern unsigned long wall_jiffies; extern unsigned long wall_jiffies;
/* this needs a better home */ /* this needs a better home */
...@@ -148,6 +150,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -148,6 +150,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC) if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC)
...@@ -178,6 +182,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -178,6 +182,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
static irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs) static irqreturn_t timer_interrupt(int irq, void *dev_id, struct pt_regs *regs)
{ {
do_timer(regs); do_timer(regs);
......
...@@ -134,6 +134,8 @@ static void dump_instr(struct pt_regs *regs) ...@@ -134,6 +134,8 @@ static void dump_instr(struct pt_regs *regs)
dump_mem("Stack: ", sp, 8192+(unsigned long)tsk->thread_info); dump_mem("Stack: ", sp, 8192+(unsigned long)tsk->thread_info);
} }
EXPORT_SYMBOL(dump_stack);
void dump_stack(void) void dump_stack(void)
{ {
#ifdef CONFIG_DEBUG_ERRORS #ifdef CONFIG_DEBUG_ERRORS
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
*/ */
#include <net/checksum.h> #include <net/checksum.h>
#include <net/module.h>
#undef PROFILE_CHECKSUM #undef PROFILE_CHECKSUM
...@@ -80,3 +81,5 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum) ...@@ -80,3 +81,5 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum)
BITOFF; BITOFF;
return(sum); return(sum);
} }
EXPORT_SYMBOL(csum_partial);
...@@ -22,6 +22,7 @@ ...@@ -22,6 +22,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/ptrace.h> #include <linux/ptrace.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
...@@ -70,12 +71,16 @@ probe_irq_on() ...@@ -70,12 +71,16 @@ probe_irq_on()
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int int
probe_irq_off(unsigned long x) probe_irq_off(unsigned long x)
{ {
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
/* /*
* Initial irq handlers. * Initial irq handlers.
*/ */
...@@ -253,6 +258,8 @@ int request_irq(unsigned int irq, ...@@ -253,6 +258,8 @@ int request_irq(unsigned int irq,
kfree(action); kfree(action);
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
...@@ -282,6 +289,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -282,6 +289,8 @@ void free_irq(unsigned int irq, void *dev_id)
printk("Trying to free free IRQ%d\n",irq); printk("Trying to free free IRQ%d\n",irq);
} }
EXPORT_SYMBOL(free_irq);
void weird_irq(void) void weird_irq(void)
{ {
local_irq_disable(); local_irq_disable();
......
...@@ -96,6 +96,7 @@ ...@@ -96,6 +96,7 @@
#include <asm/atomic.h> #include <asm/atomic.h>
#include <asm/pgtable.h> #include <asm/pgtable.h>
#include <asm/uaccess.h> #include <asm/uaccess.h>
#include <linux/module.h>
#include <linux/spinlock.h> #include <linux/spinlock.h>
#include <linux/fs_struct.h> #include <linux/fs_struct.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -119,6 +120,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -119,6 +120,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -137,7 +140,7 @@ union thread_union init_thread_union ...@@ -137,7 +140,7 @@ union thread_union init_thread_union
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
/* /*
* The hlt_counter, disable_hlt and enable_hlt is just here as a hook if * The hlt_counter, disable_hlt and enable_hlt is just here as a hook if
...@@ -155,10 +158,14 @@ void disable_hlt(void) ...@@ -155,10 +158,14 @@ void disable_hlt(void)
hlt_counter++; hlt_counter++;
} }
EXPORT_SYMBOL(disable_hlt);
void enable_hlt(void) void enable_hlt(void)
{ {
hlt_counter--; hlt_counter--;
} }
EXPORT_SYMBOL(enable_hlt);
/* /*
* The following aren't currently used. * The following aren't currently used.
...@@ -193,6 +200,8 @@ void machine_restart(void) ...@@ -193,6 +200,8 @@ void machine_restart(void)
hard_reset_now(); hard_reset_now();
} }
EXPORT_SYMBOL(machine_restart);
/* /*
* Similar to machine_power_off, but don't shut off power. Add code * Similar to machine_power_off, but don't shut off power. Add code
* here to freeze the system for e.g. post-mortem debug purpose when * here to freeze the system for e.g. post-mortem debug purpose when
...@@ -203,12 +212,16 @@ void machine_halt(void) ...@@ -203,12 +212,16 @@ void machine_halt(void)
{ {
} }
EXPORT_SYMBOL(machine_halt);
/* If or when software power-off is implemented, add code here. */ /* If or when software power-off is implemented, add code here. */
void machine_power_off(void) void machine_power_off(void)
{ {
} }
EXPORT_SYMBOL(machine_power_off);
/* /*
* When a process does an "exec", machine state like FPU and debug * When a process does an "exec", machine state like FPU and debug
* registers need to be reset. This is a hook function for that. * registers need to be reset. This is a hook function for that.
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include <asm/rtc.h> #include <asm/rtc.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/param.h> #include <linux/param.h>
#include <linux/jiffies.h> #include <linux/jiffies.h>
#include <linux/bcd.h> #include <linux/bcd.h>
...@@ -31,6 +32,8 @@ ...@@ -31,6 +32,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
int have_rtc; /* used to remember if we have an RTC or not */; int have_rtc; /* used to remember if we have an RTC or not */;
#define TICK_SIZE tick #define TICK_SIZE tick
...@@ -72,6 +75,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -72,6 +75,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
unsigned long flags; unsigned long flags;
...@@ -106,6 +111,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -106,6 +111,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* BUG: This routine does not handle hour overflow properly; it just * BUG: This routine does not handle hour overflow properly; it just
......
...@@ -142,6 +142,8 @@ void dump_stack(void) ...@@ -142,6 +142,8 @@ void dump_stack(void)
show_stack(NULL, NULL); show_stack(NULL, NULL);
} }
EXPORT_SYMBOL(dump_stack);
void __init void __init
trap_init(void) trap_init(void)
{ {
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
* linux/arch/h8300/kernel/init_task.c * linux/arch/h8300/kernel/init_task.c
*/ */
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -16,6 +17,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -16,6 +17,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial task structure. * Initial task structure.
* *
...@@ -24,6 +27,7 @@ struct mm_struct init_mm = INIT_MM(init_mm); ...@@ -24,6 +27,7 @@ struct mm_struct init_mm = INIT_MM(init_mm);
__asm__(".align 4"); __asm__(".align 4");
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
/* /*
* Initial thread structure. * Initial thread structure.
......
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
...@@ -89,6 +90,8 @@ void machine_restart(char * __unused) ...@@ -89,6 +90,8 @@ void machine_restart(char * __unused)
__asm__("jmp @@0"); __asm__("jmp @@0");
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
local_irq_disable(); local_irq_disable();
...@@ -96,6 +99,8 @@ void machine_halt(void) ...@@ -96,6 +99,8 @@ void machine_halt(void)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
local_irq_disable(); local_irq_disable();
...@@ -103,6 +108,8 @@ void machine_power_off(void) ...@@ -103,6 +108,8 @@ void machine_power_off(void)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_power_off);
void show_regs(struct pt_regs * regs) void show_regs(struct pt_regs * regs)
{ {
printk("\n"); printk("\n");
......
...@@ -18,6 +18,7 @@ ...@@ -18,6 +18,7 @@
#include <linux/config.h> /* CONFIG_HEARTBEAT */ #include <linux/config.h> /* CONFIG_HEARTBEAT */
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -33,6 +34,8 @@ ...@@ -33,6 +34,8 @@
u64 jiffies_64; u64 jiffies_64;
EXPORT_SYMBOL(jiffies_64);
static inline void do_profile (unsigned long pc) static inline void do_profile (unsigned long pc)
{ {
if (prof_buffer && current->pid) { if (prof_buffer && current->pid) {
...@@ -110,6 +113,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -110,6 +113,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC) if ((unsigned long)tv->tv_nsec >= NSEC_PER_SEC)
...@@ -136,3 +141,5 @@ int do_settimeofday(struct timespec *tv) ...@@ -136,3 +141,5 @@ int do_settimeofday(struct timespec *tv)
write_sequnlock_irq(&xtime_lock); write_sequnlock_irq(&xtime_lock);
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
of the assembly has to go. */ of the assembly has to go. */
#include <net/checksum.h> #include <net/checksum.h>
#include <net/module.h>
static inline unsigned short from32to16(unsigned long x) static inline unsigned short from32to16(unsigned long x)
{ {
...@@ -123,6 +124,8 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum) ...@@ -123,6 +124,8 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum)
return result; return result;
} }
EXPORT_SYMBOL(csum_partial);
/* /*
* this routine is used for miscellaneous IP-like checksums, mainly * this routine is used for miscellaneous IP-like checksums, mainly
* in icmp.c * in icmp.c
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
* Copyright 1999 D. Jeff Dionne <jeff@rt-control.com> * Copyright 1999 D. Jeff Dionne <jeff@rt-control.com>
*/ */
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/sched.h> #include <linux/sched.h>
...@@ -155,6 +156,8 @@ int request_irq(unsigned int irq, ...@@ -155,6 +156,8 @@ int request_irq(unsigned int irq,
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
if (irq >= NR_IRQS) { if (irq >= NR_IRQS) {
...@@ -171,6 +174,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -171,6 +174,8 @@ void free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
/* /*
* Do we need these probe functions on the m68k? * Do we need these probe functions on the m68k?
*/ */
...@@ -179,11 +184,15 @@ unsigned long probe_irq_on (void) ...@@ -179,11 +184,15 @@ unsigned long probe_irq_on (void)
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off (unsigned long irqs) int probe_irq_off (unsigned long irqs)
{ {
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
void enable_irq(unsigned int irq) void enable_irq(unsigned int irq)
{ {
if (irq >= EXT_IRQ0 && irq <= EXT_IRQ5) { if (irq >= EXT_IRQ0 && irq <= EXT_IRQ5) {
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
* Copyright 1999 D. Jeff Dionne <jeff@rt-control.com> * Copyright 1999 D. Jeff Dionne <jeff@rt-control.com>
*/ */
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/sched.h> #include <linux/sched.h>
...@@ -201,6 +202,8 @@ int request_irq(unsigned int irq, ...@@ -201,6 +202,8 @@ int request_irq(unsigned int irq,
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
if (irq >= NR_IRQS) if (irq >= NR_IRQS)
...@@ -228,16 +231,22 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -228,16 +231,22 @@ void free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
unsigned long probe_irq_on (void) unsigned long probe_irq_on (void)
{ {
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off (unsigned long irqs) int probe_irq_off (unsigned long irqs)
{ {
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
void enable_irq(unsigned int irq) void enable_irq(unsigned int irq)
{ {
if (irq >= EXT_IRQ0 && irq <= EXT_IRQ15) if (irq >= EXT_IRQ0 && irq <= EXT_IRQ15)
......
...@@ -211,3 +211,5 @@ EXPORT_SYMBOL(eddnr); ...@@ -211,3 +211,5 @@ EXPORT_SYMBOL(eddnr);
#if defined(CONFIG_X86_SPEEDSTEP_SMI) || defined(CONFIG_X86_SPEEDSTEP_SMI_MODULE) #if defined(CONFIG_X86_SPEEDSTEP_SMI) || defined(CONFIG_X86_SPEEDSTEP_SMI_MODULE)
EXPORT_SYMBOL(ist_info); EXPORT_SYMBOL(ist_info);
#endif #endif
EXPORT_SYMBOL(csum_partial);
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -14,6 +15,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -14,6 +15,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -32,6 +35,8 @@ union thread_union init_thread_union ...@@ -32,6 +35,8 @@ union thread_union init_thread_union
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
/* /*
* per-CPU TSS segments. Threads are completely 'soft' on Linux, * per-CPU TSS segments. Threads are completely 'soft' on Linux,
* no more per-task TSS's. The TSS size is kept cacheline-aligned * no more per-task TSS's. The TSS size is kept cacheline-aligned
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/ioport.h> #include <linux/ioport.h>
...@@ -579,6 +580,8 @@ int request_irq(unsigned int irq, ...@@ -579,6 +580,8 @@ int request_irq(unsigned int irq,
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
/** /**
* free_irq - free an interrupt * free_irq - free an interrupt
* @irq: Interrupt line to free * @irq: Interrupt line to free
...@@ -633,6 +636,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -633,6 +636,8 @@ void free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
/* /*
* IRQ autodetection code.. * IRQ autodetection code..
* *
...@@ -726,6 +731,8 @@ unsigned long probe_irq_on(void) ...@@ -726,6 +731,8 @@ unsigned long probe_irq_on(void)
return val; return val;
} }
EXPORT_SYMBOL(probe_irq_on);
/* /*
* Return a mask of triggered interrupts (this * Return a mask of triggered interrupts (this
* can handle only legacy ISA interrupts). * can handle only legacy ISA interrupts).
...@@ -824,6 +831,8 @@ int probe_irq_off(unsigned long val) ...@@ -824,6 +831,8 @@ int probe_irq_off(unsigned long val)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
/* this was setup_x86_irq but it seems pretty generic */ /* this was setup_x86_irq but it seems pretty generic */
int setup_irq(unsigned int irq, struct irqaction * new) int setup_irq(unsigned int irq, struct irqaction * new)
{ {
......
...@@ -76,11 +76,15 @@ void disable_hlt(void) ...@@ -76,11 +76,15 @@ void disable_hlt(void)
hlt_counter++; hlt_counter++;
} }
EXPORT_SYMBOL(disable_hlt);
void enable_hlt(void) void enable_hlt(void)
{ {
hlt_counter--; hlt_counter--;
} }
EXPORT_SYMBOL(enable_hlt);
/* /*
* We use this if we don't have any better * We use this if we don't have any better
* idle routine.. * idle routine..
......
...@@ -3,6 +3,7 @@ ...@@ -3,6 +3,7 @@
*/ */
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
...@@ -276,13 +277,19 @@ void machine_restart(char * __unused) ...@@ -276,13 +277,19 @@ void machine_restart(char * __unused)
machine_real_restart(jump_to_bios, sizeof(jump_to_bios)); machine_real_restart(jump_to_bios, sizeof(jump_to_bios));
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
if (pm_power_off) if (pm_power_off)
pm_power_off(); pm_power_off();
} }
EXPORT_SYMBOL(machine_power_off);
...@@ -73,6 +73,8 @@ int pit_latch_buggy; /* extern */ ...@@ -73,6 +73,8 @@ int pit_latch_buggy; /* extern */
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
unsigned long cpu_khz; /* Detected as we calibrate the TSC */ unsigned long cpu_khz; /* Detected as we calibrate the TSC */
extern unsigned long wall_jiffies; extern unsigned long wall_jiffies;
...@@ -115,6 +117,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -115,6 +117,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, sec = tv->tv_sec; time_t wtm_sec, sec = tv->tv_sec;
...@@ -148,6 +152,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -148,6 +152,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
static int set_rtc_mmss(unsigned long nowtime) static int set_rtc_mmss(unsigned long nowtime)
{ {
int retval; int retval;
......
...@@ -158,6 +158,8 @@ void dump_stack(void) ...@@ -158,6 +158,8 @@ void dump_stack(void)
show_trace(current, &stack); show_trace(current, &stack);
} }
EXPORT_SYMBOL(dump_stack);
void show_registers(struct pt_regs *regs) void show_registers(struct pt_regs *regs)
{ {
int i; int i;
......
#include <linux/module.h>
#include <linux/smp.h> #include <linux/smp.h>
#include <linux/delay.h> #include <linux/delay.h>
#include <linux/platform.h> #include <linux/platform.h>
...@@ -24,6 +24,8 @@ void machine_restart(char * __unused) ...@@ -24,6 +24,8 @@ void machine_restart(char * __unused)
outb(PIIX4_RESET_VAL, PIIX4_RESET_PORT); outb(PIIX4_RESET_VAL, PIIX4_RESET_PORT);
} }
EXPORT_SYMBOL(machine_restart);
void machine_power_off(void) void machine_power_off(void)
{ {
unsigned short pm_status; unsigned short pm_status;
...@@ -43,6 +45,10 @@ void machine_power_off(void) ...@@ -43,6 +45,10 @@ void machine_power_off(void)
outl(PIIX_SPECIAL_STOP, 0xCFC); outl(PIIX_SPECIAL_STOP, 0xCFC);
} }
EXPORT_SYMBOL(machine_power_off);
void machine_halt(void) void machine_halt(void)
{ {
} }
EXPORT_SYMBOL(machine_halt);
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/ptrace.h> #include <linux/ptrace.h>
...@@ -279,6 +280,8 @@ machine_restart(char *cmd) ...@@ -279,6 +280,8 @@ machine_restart(char *cmd)
} }
} }
EXPORT_SYMBOL(machine_restart);
void void
mca_nmi_hook(void) mca_nmi_hook(void)
{ {
...@@ -314,8 +317,12 @@ machine_halt(void) ...@@ -314,8 +317,12 @@ machine_halt(void)
machine_power_off(); machine_power_off();
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
if (pm_power_off) if (pm_power_off)
pm_power_off(); pm_power_off();
} }
EXPORT_SYMBOL(machine_power_off);
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
...@@ -190,6 +191,9 @@ static inline int page_is_ram(unsigned long pagenr) ...@@ -190,6 +191,9 @@ static inline int page_is_ram(unsigned long pagenr)
pte_t *kmap_pte; pte_t *kmap_pte;
pgprot_t kmap_prot; pgprot_t kmap_prot;
EXPORT_SYMBOL(kmap_prot);
EXPORT_SYMBOL(kmap_pte);
#define kmap_get_fixmap_pte(vaddr) \ #define kmap_get_fixmap_pte(vaddr) \
pte_offset_kernel(pmd_offset(pgd_offset_k(vaddr), (vaddr)), (vaddr)) pte_offset_kernel(pmd_offset(pgd_offset_k(vaddr), (vaddr)), (vaddr))
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include <linux/init.h> #include <linux/init.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -20,6 +21,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -20,6 +21,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial task structure. * Initial task structure.
* *
...@@ -38,3 +41,5 @@ union { ...@@ -38,3 +41,5 @@ union {
.task = INIT_TASK(init_task_mem.s.task), .task = INIT_TASK(init_task_mem.s.task),
.thread_info = INIT_THREAD_INFO(init_task_mem.s.task) .thread_info = INIT_THREAD_INFO(init_task_mem.s.task)
}}; }};
EXPORT_SYMBOL(init_task);
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/ioport.h> #include <linux/ioport.h>
...@@ -596,6 +597,8 @@ int request_irq(unsigned int irq, ...@@ -596,6 +597,8 @@ int request_irq(unsigned int irq,
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
/** /**
* free_irq - free an interrupt * free_irq - free an interrupt
* @irq: Interrupt line to free * @irq: Interrupt line to free
...@@ -650,6 +653,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -650,6 +653,8 @@ void free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
/* /*
* IRQ autodetection code.. * IRQ autodetection code..
* *
...@@ -743,6 +748,8 @@ unsigned long probe_irq_on(void) ...@@ -743,6 +748,8 @@ unsigned long probe_irq_on(void)
return val; return val;
} }
EXPORT_SYMBOL(probe_irq_on);
/** /**
* probe_irq_mask - scan a bitmap of interrupt lines * probe_irq_mask - scan a bitmap of interrupt lines
* @val: mask of interrupts to consider * @val: mask of interrupts to consider
...@@ -831,6 +838,8 @@ int probe_irq_off(unsigned long val) ...@@ -831,6 +838,8 @@ int probe_irq_off(unsigned long val)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
int setup_irq(unsigned int irq, struct irqaction * new) int setup_irq(unsigned int irq, struct irqaction * new)
{ {
int shared = 0; int shared = 0;
......
...@@ -82,6 +82,8 @@ dump_stack (void) ...@@ -82,6 +82,8 @@ dump_stack (void)
show_stack(NULL, NULL); show_stack(NULL, NULL);
} }
EXPORT_SYMBOL(dump_stack);
void void
show_regs (struct pt_regs *regs) show_regs (struct pt_regs *regs)
{ {
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/init.h> #include <linux/init.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h>
#include <linux/profile.h> #include <linux/profile.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/time.h> #include <linux/time.h>
...@@ -31,6 +32,8 @@ extern unsigned long wall_jiffies; ...@@ -31,6 +32,8 @@ extern unsigned long wall_jiffies;
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
#define TIME_KEEPER_ID 0 /* smp_processor_id() of time-keeper */ #define TIME_KEEPER_ID 0 /* smp_processor_id() of time-keeper */
#ifdef CONFIG_IA64_DEBUG_IRQ #ifdef CONFIG_IA64_DEBUG_IRQ
...@@ -125,6 +128,8 @@ do_settimeofday (struct timespec *tv) ...@@ -125,6 +128,8 @@ do_settimeofday (struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
void void
do_gettimeofday (struct timeval *tv) do_gettimeofday (struct timeval *tv)
{ {
...@@ -185,6 +190,8 @@ do_gettimeofday (struct timeval *tv) ...@@ -185,6 +190,8 @@ do_gettimeofday (struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
/* /*
* The profiling function is SMP safe. (nothing can mess * The profiling function is SMP safe. (nothing can mess
* around with "current", and the profiling counters are * around with "current", and the profiling counters are
......
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
...@@ -127,11 +128,15 @@ int request_irq(unsigned int irq, ...@@ -127,11 +128,15 @@ int request_irq(unsigned int irq,
return mach_request_irq(irq, handler, flags, devname, dev_id); return mach_request_irq(irq, handler, flags, devname, dev_id);
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
mach_free_irq(irq, dev_id); mach_free_irq(irq, dev_id);
} }
EXPORT_SYMBOL(free_irq);
int sys_request_irq(unsigned int irq, int sys_request_irq(unsigned int irq,
irqreturn_t (*handler)(int, void *, struct pt_regs *), irqreturn_t (*handler)(int, void *, struct pt_regs *),
unsigned long flags, const char *devname, void *dev_id) unsigned long flags, const char *devname, void *dev_id)
...@@ -195,6 +200,8 @@ unsigned long probe_irq_on (void) ...@@ -195,6 +200,8 @@ unsigned long probe_irq_on (void)
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off (unsigned long irqs) int probe_irq_off (unsigned long irqs)
{ {
#ifdef CONFIG_Q40 #ifdef CONFIG_Q40
...@@ -204,6 +211,8 @@ int probe_irq_off (unsigned long irqs) ...@@ -204,6 +211,8 @@ int probe_irq_off (unsigned long irqs)
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
static void dummy_enable_irq(unsigned int irq) static void dummy_enable_irq(unsigned int irq)
{ {
printk("calling uninitialized enable_irq()\n"); printk("calling uninitialized enable_irq()\n");
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
...@@ -45,6 +46,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -45,6 +46,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
union thread_union init_thread_union union thread_union init_thread_union
__attribute__((section(".data.init_task"), aligned(THREAD_SIZE))) __attribute__((section(".data.init_task"), aligned(THREAD_SIZE)))
= { INIT_THREAD_INFO(init_task) }; = { INIT_THREAD_INFO(init_task) };
...@@ -52,6 +55,7 @@ __attribute__((section(".data.init_task"), aligned(THREAD_SIZE))) ...@@ -52,6 +55,7 @@ __attribute__((section(".data.init_task"), aligned(THREAD_SIZE)))
/* initial task structure */ /* initial task structure */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
asmlinkage void ret_from_fork(void); asmlinkage void ret_from_fork(void);
...@@ -111,6 +115,8 @@ void machine_restart(char * __unused) ...@@ -111,6 +115,8 @@ void machine_restart(char * __unused)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
if (mach_halt) if (mach_halt)
...@@ -118,6 +124,8 @@ void machine_halt(void) ...@@ -118,6 +124,8 @@ void machine_halt(void)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
if (mach_power_off) if (mach_power_off)
...@@ -125,6 +133,8 @@ void machine_power_off(void) ...@@ -125,6 +133,8 @@ void machine_power_off(void)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_power_off);
void show_regs(struct pt_regs * regs) void show_regs(struct pt_regs * regs)
{ {
printk("\n"); printk("\n");
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/config.h> /* CONFIG_HEARTBEAT */ #include <linux/config.h> /* CONFIG_HEARTBEAT */
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -28,6 +29,8 @@ ...@@ -28,6 +29,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
static inline int set_rtc_mmss(unsigned long nowtime) static inline int set_rtc_mmss(unsigned long nowtime)
{ {
if (mach_set_clock_mmss) if (mach_set_clock_mmss)
...@@ -139,6 +142,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -139,6 +142,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, sec = tv->tv_sec; time_t wtm_sec, sec = tv->tv_sec;
...@@ -172,6 +177,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -172,6 +177,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* Scheduler clock - returns current time in ns units. * Scheduler clock - returns current time in ns units.
*/ */
......
...@@ -953,6 +953,8 @@ void dump_stack(void) ...@@ -953,6 +953,8 @@ void dump_stack(void)
show_trace(&stack); show_trace(&stack);
} }
EXPORT_SYMBOL(dump_stack);
void bad_super_trap (struct frame *fp) void bad_super_trap (struct frame *fp)
{ {
console_verbose(); console_verbose();
......
...@@ -2,6 +2,7 @@ ...@@ -2,6 +2,7 @@
* linux/arch/m68knommu/kernel/init_task.c * linux/arch/m68knommu/kernel/init_task.c
*/ */
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -16,6 +17,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -16,6 +17,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial task structure. * Initial task structure.
* *
...@@ -24,6 +27,7 @@ struct mm_struct init_mm = INIT_MM(init_mm); ...@@ -24,6 +27,7 @@ struct mm_struct init_mm = INIT_MM(init_mm);
__asm__(".align 4"); __asm__(".align 4");
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
/* /*
* Initial thread structure. * Initial thread structure.
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
...@@ -72,6 +73,8 @@ void machine_restart(char * __unused) ...@@ -72,6 +73,8 @@ void machine_restart(char * __unused)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
if (mach_halt) if (mach_halt)
...@@ -79,6 +82,8 @@ void machine_halt(void) ...@@ -79,6 +82,8 @@ void machine_halt(void)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
if (mach_power_off) if (mach_power_off)
...@@ -86,6 +91,8 @@ void machine_power_off(void) ...@@ -86,6 +91,8 @@ void machine_power_off(void)
for (;;); for (;;);
} }
EXPORT_SYMBOL(machine_power_off);
void show_regs(struct pt_regs * regs) void show_regs(struct pt_regs * regs)
{ {
printk("\n"); printk("\n");
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -28,6 +29,8 @@ ...@@ -28,6 +29,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
extern unsigned long wall_jiffies; extern unsigned long wall_jiffies;
...@@ -164,6 +167,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -164,6 +167,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, sec = tv->tv_sec; time_t wtm_sec, sec = tv->tv_sec;
...@@ -196,3 +201,5 @@ int do_settimeofday(struct timespec *tv) ...@@ -196,3 +201,5 @@ int do_settimeofday(struct timespec *tv)
write_sequnlock_irq(&xtime_lock); write_sequnlock_irq(&xtime_lock);
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
...@@ -32,6 +32,7 @@ ...@@ -32,6 +32,7 @@
of the assembly has to go. */ of the assembly has to go. */
#include <net/checksum.h> #include <net/checksum.h>
#include <net/module.h>
static inline unsigned short from32to16(unsigned long x) static inline unsigned short from32to16(unsigned long x)
{ {
...@@ -123,6 +124,8 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum) ...@@ -123,6 +124,8 @@ unsigned int csum_partial(const unsigned char * buff, int len, unsigned int sum)
return result; return result;
} }
EXPORT_SYMBOL(csum_partial);
/* /*
* this routine is used for miscellaneous IP-like checksums, mainly * this routine is used for miscellaneous IP-like checksums, mainly
* in icmp.c * in icmp.c
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
* for more details. * for more details.
*/ */
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/sched.h> #include <linux/sched.h>
...@@ -136,6 +137,8 @@ int request_irq( ...@@ -136,6 +137,8 @@ int request_irq(
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
if (irq >= NR_IRQS) { if (irq >= NR_IRQS) {
...@@ -162,6 +165,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -162,6 +165,8 @@ void free_irq(unsigned int irq, void *dev_id)
irq_list[irq].devname = NULL; irq_list[irq].devname = NULL;
} }
EXPORT_SYMBOL(free_irq);
int sys_request_irq(unsigned int irq, int sys_request_irq(unsigned int irq,
irqreturn_t (*handler)(int, void *, struct pt_regs *), irqreturn_t (*handler)(int, void *, struct pt_regs *),
...@@ -222,11 +227,15 @@ unsigned long probe_irq_on (void) ...@@ -222,11 +227,15 @@ unsigned long probe_irq_on (void)
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off (unsigned long irqs) int probe_irq_off (unsigned long irqs)
{ {
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
asmlinkage void process_int(unsigned long vec, struct pt_regs *fp) asmlinkage void process_int(unsigned long vec, struct pt_regs *fp)
{ {
if (vec >= VEC_INT1 && vec <= VEC_INT7) { if (vec >= VEC_INT1 && vec <= VEC_INT7) {
......
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
* Copyright 1999 D. Jeff Dionne <jeff@rt-control.com> * Copyright 1999 D. Jeff Dionne <jeff@rt-control.com>
*/ */
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/sched.h> #include <linux/sched.h>
...@@ -172,6 +173,8 @@ int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *) ...@@ -172,6 +173,8 @@ int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *)
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
if (irq >= NR_IRQS) { if (irq >= NR_IRQS) {
...@@ -191,6 +194,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -191,6 +194,8 @@ void free_irq(unsigned int irq, void *dev_id)
IMR |= 1<<irq; IMR |= 1<<irq;
} }
EXPORT_SYMBOL(free_irq);
int show_interrupts(struct seq_file *p, void *v) int show_interrupts(struct seq_file *p, void *v)
{ {
int i; int i;
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/sched.h> #include <linux/sched.h>
...@@ -216,6 +217,8 @@ int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *) ...@@ -216,6 +217,8 @@ int request_irq(unsigned int irq, void (*handler)(int, void *, struct pt_regs *)
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
if (irq >= INTERNAL_IRQS) { if (irq >= INTERNAL_IRQS) {
...@@ -234,6 +237,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -234,6 +237,8 @@ void free_irq(unsigned int irq, void *dev_id)
*(volatile unsigned long *)0xfffff304 |= 1<<irq; *(volatile unsigned long *)0xfffff304 |= 1<<irq;
} }
EXPORT_SYMBOL(free_irq);
#if 0 #if 0
/* /*
* Enable/disable a particular machine specific interrupt source. * Enable/disable a particular machine specific interrupt source.
......
...@@ -8,6 +8,7 @@ ...@@ -8,6 +8,7 @@
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/types.h> #include <linux/types.h>
...@@ -337,6 +338,8 @@ int request_irq(unsigned int irq, ...@@ -337,6 +338,8 @@ int request_irq(unsigned int irq,
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
struct irqaction * action, **p; struct irqaction * action, **p;
...@@ -361,18 +364,24 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -361,18 +364,24 @@ void free_irq(unsigned int irq, void *dev_id)
printk("Trying to free free IRQ%d\n",irq); printk("Trying to free free IRQ%d\n",irq);
} }
EXPORT_SYMBOL(free_irq);
unsigned long probe_irq_on (void) unsigned long probe_irq_on (void)
{ {
/* TODO */ /* TODO */
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off (unsigned long irqs) int probe_irq_off (unsigned long irqs)
{ {
/* TODO */ /* TODO */
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
static void write_err_interrupt(int irq, void *dev_id, struct pt_regs * regs) static void write_err_interrupt(int irq, void *dev_id, struct pt_regs * regs)
{ {
......
...@@ -6,6 +6,7 @@ ...@@ -6,6 +6,7 @@
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -87,6 +88,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -87,6 +88,8 @@ void do_gettimeofday(struct timeval *tv)
} while (read_seqretry(&xtime_lock, seq)); } while (read_seqretry(&xtime_lock, seq));
} }
EXPORT_SYMBOL(do_gettimeofday);
void do_settimeofday(struct timeval *tv) void do_settimeofday(struct timeval *tv)
{ {
write_seqlock_irq(&xtime_lock); write_seqlock_irq(&xtime_lock);
...@@ -98,3 +101,5 @@ void do_settimeofday(struct timeval *tv) ...@@ -98,3 +101,5 @@ void do_settimeofday(struct timeval *tv)
time_esterror = NTP_PHASE_LIMIT; time_esterror = NTP_PHASE_LIMIT;
write_sequnlock_irq(&xtime_lock); write_sequnlock_irq(&xtime_lock);
} }
EXPORT_SYMBOL(do_settimeofday);
...@@ -9,6 +9,7 @@ ...@@ -9,6 +9,7 @@
* *
*/ */
#include <linux/bcd.h> #include <linux/bcd.h>
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/init.h> #include <linux/init.h>
...@@ -238,6 +239,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -238,6 +239,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
void do_settimeofday(struct timeval *tv) void do_settimeofday(struct timeval *tv)
{ {
write_seqlock_irq(&xtime_lock); write_seqlock_irq(&xtime_lock);
...@@ -264,6 +267,8 @@ void do_settimeofday(struct timeval *tv) ...@@ -264,6 +267,8 @@ void do_settimeofday(struct timeval *tv)
write_sequnlock_irq(&xtime_lock); write_sequnlock_irq(&xtime_lock);
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* In order to set the CMOS clock precisely, set_rtc_mmss has to be * In order to set the CMOS clock precisely, set_rtc_mmss has to be
* called 500 ms after the second nowtime has started, because when * called 500 ms after the second nowtime has started, because when
......
...@@ -34,6 +34,7 @@ ...@@ -34,6 +34,7 @@
*/ */
#include <linux/init.h> #include <linux/init.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/spinlock.h> #include <linux/spinlock.h>
...@@ -222,6 +223,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -222,6 +223,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
void do_settimeofday(struct timeval *tv) void do_settimeofday(struct timeval *tv)
{ {
write_seqlock_irq(&xtime_lock); write_seqlock_irq(&xtime_lock);
...@@ -248,6 +251,8 @@ void do_settimeofday(struct timeval *tv) ...@@ -248,6 +251,8 @@ void do_settimeofday(struct timeval *tv)
write_sequnlock_irq(&xtime_lock); write_sequnlock_irq(&xtime_lock);
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* There are a lot of conceptually broken versions of the MIPS timer interrupt * There are a lot of conceptually broken versions of the MIPS timer interrupt
* handler floating around. This one is rather different, but the algorithm * handler floating around. This one is rather different, but the algorithm
......
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init_task.h> #include <linux/init_task.h>
#include <linux/fs.h> #include <linux/fs.h>
...@@ -12,6 +13,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -12,6 +13,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -32,3 +35,5 @@ union thread_union init_thread_union ...@@ -32,3 +35,5 @@ union thread_union init_thread_union
* All other task structs will be allocated on slabs in fork.c * All other task structs will be allocated on slabs in fork.c
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
...@@ -494,6 +494,8 @@ int request_irq(unsigned int irq, ...@@ -494,6 +494,8 @@ int request_irq(unsigned int irq,
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
/** /**
* free_irq - free an interrupt * free_irq - free an interrupt
* @irq: Interrupt line to free * @irq: Interrupt line to free
...@@ -548,6 +550,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -548,6 +550,8 @@ void free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
/* /*
* IRQ autodetection code.. * IRQ autodetection code..
* *
...@@ -641,6 +645,8 @@ unsigned long probe_irq_on(void) ...@@ -641,6 +645,8 @@ unsigned long probe_irq_on(void)
return val; return val;
} }
EXPORT_SYMBOL(probe_irq_on);
/* /*
* Return a mask of triggered interrupts (this * Return a mask of triggered interrupts (this
* can handle only legacy ISA interrupts). * can handle only legacy ISA interrupts).
...@@ -739,6 +745,8 @@ int probe_irq_off(unsigned long val) ...@@ -739,6 +745,8 @@ int probe_irq_off(unsigned long val)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
/* this was setup_x86_irq but it seems pretty generic */ /* this was setup_x86_irq but it seems pretty generic */
int setup_irq(unsigned int irq, struct irqaction * new) int setup_irq(unsigned int irq, struct irqaction * new)
{ {
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
* Copyright (C) 2001 MIPS Technologies, Inc. * Copyright (C) 2001 MIPS Technologies, Inc.
*/ */
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/reboot.h> #include <linux/reboot.h>
#include <asm/reboot.h> #include <asm/reboot.h>
...@@ -25,12 +26,18 @@ void machine_restart(char *command) ...@@ -25,12 +26,18 @@ void machine_restart(char *command)
_machine_restart(command); _machine_restart(command);
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
_machine_halt(); _machine_halt();
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
_machine_power_off(); _machine_power_off();
} }
EXPORT_SYMBOL(machine_power_off);
...@@ -48,6 +48,8 @@ cpumask_t cpu_online_map; /* Bitmask of currently online CPUs */ ...@@ -48,6 +48,8 @@ cpumask_t cpu_online_map; /* Bitmask of currently online CPUs */
int __cpu_number_map[NR_CPUS]; int __cpu_number_map[NR_CPUS];
int __cpu_logical_map[NR_CPUS]; int __cpu_logical_map[NR_CPUS];
EXPORT_SYMBOL(cpu_online_map);
/* These are defined by the board-specific code. */ /* These are defined by the board-specific code. */
/* /*
......
...@@ -39,6 +39,8 @@ ...@@ -39,6 +39,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
/* /*
* forward reference * forward reference
*/ */
...@@ -99,6 +101,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -99,6 +101,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, sec = tv->tv_sec; time_t wtm_sec, sec = tv->tv_sec;
...@@ -132,6 +136,7 @@ int do_settimeofday(struct timespec *tv) ...@@ -132,6 +136,7 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* Gettimeoffset routines. These routines returns the time duration * Gettimeoffset routines. These routines returns the time duration
......
...@@ -141,6 +141,8 @@ void dump_stack(void) ...@@ -141,6 +141,8 @@ void dump_stack(void)
show_trace(current, &stack); show_trace(current, &stack);
} }
EXPORT_SYMBOL(dump_stack);
void show_code(unsigned int *pc) void show_code(unsigned int *pc)
{ {
long i; long i;
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
...@@ -81,6 +82,9 @@ unsigned long setup_zero_pages(void) ...@@ -81,6 +82,9 @@ unsigned long setup_zero_pages(void)
pte_t *kmap_pte; pte_t *kmap_pte;
pgprot_t kmap_prot; pgprot_t kmap_prot;
EXPORT_SYMBOL(kmap_prot);
EXPORT_SYMBOL(kmap_pte);
#define kmap_get_fixmap_pte(vaddr) \ #define kmap_get_fixmap_pte(vaddr) \
pte_offset_kernel(pmd_offset(pgd_offset_k(vaddr), (vaddr)), (vaddr)) pte_offset_kernel(pmd_offset(pgd_offset_k(vaddr), (vaddr)), (vaddr))
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
...@@ -81,6 +82,9 @@ unsigned long setup_zero_pages(void) ...@@ -81,6 +82,9 @@ unsigned long setup_zero_pages(void)
pte_t *kmap_pte; pte_t *kmap_pte;
pgprot_t kmap_prot; pgprot_t kmap_prot;
EXPORT_SYMBOL(kmap_prot);
EXPORT_SYMBOL(kmap_pte);
#define kmap_get_fixmap_pte(vaddr) \ #define kmap_get_fixmap_pte(vaddr) \
pte_offset_kernel(pmd_offset(pgd_offset_k(vaddr), (vaddr)), (vaddr)) pte_offset_kernel(pmd_offset(pgd_offset_k(vaddr), (vaddr)), (vaddr))
......
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
#include <linux/init.h> #include <linux/init.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/seq_file.h> #include <linux/seq_file.h>
#include <asm/pdc.h> #include <asm/pdc.h>
...@@ -29,6 +30,7 @@ ...@@ -29,6 +30,7 @@
int split_tlb; int split_tlb;
int dcache_stride; int dcache_stride;
int icache_stride; int icache_stride;
EXPORT_SYMBOL(dcache_stride);
struct pdc_cache_info cache_info; struct pdc_cache_info cache_info;
#ifndef CONFIG_PA20 #ifndef CONFIG_PA20
...@@ -49,6 +51,7 @@ flush_cache_all_local(void) ...@@ -49,6 +51,7 @@ flush_cache_all_local(void)
flush_instruction_cache_local(); flush_instruction_cache_local();
flush_data_cache_local(); flush_data_cache_local();
} }
EXPORT_SYMBOL(flush_cache_all_local);
/* flushes EVERYTHING (tlb & cache) */ /* flushes EVERYTHING (tlb & cache) */
...@@ -58,6 +61,7 @@ flush_all_caches(void) ...@@ -58,6 +61,7 @@ flush_all_caches(void)
flush_cache_all(); flush_cache_all();
flush_tlb_all(); flush_tlb_all();
} }
EXPORT_SYMBOL(flush_all_caches);
void void
update_mmu_cache(struct vm_area_struct *vma, unsigned long address, pte_t pte) update_mmu_cache(struct vm_area_struct *vma, unsigned long address, pte_t pte)
...@@ -289,3 +293,4 @@ void __flush_dcache_page(struct page *page) ...@@ -289,3 +293,4 @@ void __flush_dcache_page(struct page *page)
} }
} }
EXPORT_SYMBOL(__flush_dcache_page);
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -13,6 +14,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -13,6 +14,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial task structure. * Initial task structure.
* *
...@@ -36,5 +39,7 @@ unsigned long pg0[PT_INITIAL * PTRS_PER_PTE] __attribute__ ((aligned(4096))) = { ...@@ -36,5 +39,7 @@ unsigned long pg0[PT_INITIAL * PTRS_PER_PTE] __attribute__ ((aligned(4096))) = {
* *
* All other task structs will be allocated on slabs in fork.c * All other task structs will be allocated on slabs in fork.c
*/ */
EXPORT_SYMBOL(init_task);
__asm__(".data"); __asm__(".data");
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
...@@ -25,6 +25,7 @@ ...@@ -25,6 +25,7 @@
#include <linux/eisa.h> #include <linux/eisa.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/module.h>
#include <linux/signal.h> #include <linux/signal.h>
#include <linux/types.h> #include <linux/types.h>
#include <linux/ioport.h> #include <linux/ioport.h>
...@@ -652,6 +653,8 @@ int request_irq(unsigned int irq, ...@@ -652,6 +653,8 @@ int request_irq(unsigned int irq,
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
struct irqaction *action, **p; struct irqaction *action, **p;
...@@ -694,6 +697,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -694,6 +697,8 @@ void free_irq(unsigned int irq, void *dev_id)
printk(KERN_ERR "Trying to free free IRQ%d\n",irq); printk(KERN_ERR "Trying to free free IRQ%d\n",irq);
} }
EXPORT_SYMBOL(free_irq);
#ifdef CONFIG_SMP #ifdef CONFIG_SMP
void synchronize_irq(unsigned int irqnum) void synchronize_irq(unsigned int irqnum)
...@@ -787,6 +792,8 @@ unsigned long probe_irq_on(void) ...@@ -787,6 +792,8 @@ unsigned long probe_irq_on(void)
return val; return val;
} }
EXPORT_SYMBOL(probe_irq_on);
/* /*
* Return the one interrupt that triggered (this can * Return the one interrupt that triggered (this can
* handle any interrupt source). * handle any interrupt source).
...@@ -846,6 +853,8 @@ int probe_irq_off(unsigned long val) ...@@ -846,6 +853,8 @@ int probe_irq_off(unsigned long val)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
unsigned int probe_irq_mask(unsigned long irqs) unsigned int probe_irq_mask(unsigned long irqs)
{ {
return 0; return 0;
......
...@@ -69,7 +69,6 @@ EXPORT_SYMBOL(flush_kernel_dcache_range_asm); ...@@ -69,7 +69,6 @@ EXPORT_SYMBOL(flush_kernel_dcache_range_asm);
EXPORT_SYMBOL(flush_kernel_dcache_page); EXPORT_SYMBOL(flush_kernel_dcache_page);
EXPORT_SYMBOL(flush_data_cache_local); EXPORT_SYMBOL(flush_data_cache_local);
EXPORT_SYMBOL(flush_kernel_icache_range_asm); EXPORT_SYMBOL(flush_kernel_icache_range_asm);
EXPORT_SYMBOL(__flush_dcache_page);
EXPORT_SYMBOL(flush_all_caches); EXPORT_SYMBOL(flush_all_caches);
EXPORT_SYMBOL(dcache_stride); EXPORT_SYMBOL(dcache_stride);
EXPORT_SYMBOL(flush_cache_all_local); EXPORT_SYMBOL(flush_cache_all_local);
......
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/personality.h> #include <linux/personality.h>
#include <linux/ptrace.h> #include <linux/ptrace.h>
#include <linux/sched.h> #include <linux/sched.h>
...@@ -39,11 +40,15 @@ void disable_hlt(void) ...@@ -39,11 +40,15 @@ void disable_hlt(void)
hlt_counter++; hlt_counter++;
} }
EXPORT_SYMBOL(disable_hlt);
void enable_hlt(void) void enable_hlt(void)
{ {
hlt_counter--; hlt_counter--;
} }
EXPORT_SYMBOL(enable_hlt);
void default_idle(void) void default_idle(void)
{ {
barrier(); barrier();
...@@ -119,6 +124,8 @@ void machine_restart(char *cmd) ...@@ -119,6 +124,8 @@ void machine_restart(char *cmd)
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
/* /*
...@@ -127,6 +134,8 @@ void machine_halt(void) ...@@ -127,6 +134,8 @@ void machine_halt(void)
*/ */
} }
EXPORT_SYMBOL(machine_halt);
/* /*
* This routine is called from sys_reboot to actually turn off the * This routine is called from sys_reboot to actually turn off the
...@@ -152,6 +161,8 @@ void machine_power_off(void) ...@@ -152,6 +161,8 @@ void machine_power_off(void)
KERN_EMERG "Please power this system off now."); KERN_EMERG "Please power this system off now.");
} }
EXPORT_SYMBOL(machine_power_off);
/* /*
* Create a kernel thread * Create a kernel thread
......
...@@ -26,6 +26,7 @@ ...@@ -26,6 +26,7 @@
#include <linux/slab.h> #include <linux/slab.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/interrupt.h> #include <linux/interrupt.h>
...@@ -65,12 +66,16 @@ static volatile int cpu_now_booting = 0; /* track which CPU is booting */ ...@@ -65,12 +66,16 @@ static volatile int cpu_now_booting = 0; /* track which CPU is booting */
cpumask_t cpu_online_map = CPU_MASK_NONE; /* Bitmap of online CPUs */ cpumask_t cpu_online_map = CPU_MASK_NONE; /* Bitmap of online CPUs */
#define IS_LOGGED_IN(cpunum) (cpu_isset(cpunum, cpu_online_map)) #define IS_LOGGED_IN(cpunum) (cpu_isset(cpunum, cpu_online_map))
EXPORT_SYMBOL(cpu_online_map);
int smp_num_cpus = 1; int smp_num_cpus = 1;
int smp_threads_ready = 0; int smp_threads_ready = 0;
unsigned long cache_decay_ticks; unsigned long cache_decay_ticks;
static int max_cpus = -1; /* Command line */ static int max_cpus = -1; /* Command line */
cpumask_t cpu_present_mask; cpumask_t cpu_present_mask;
EXPORT_SYMBOL(cpu_present_mask);
struct smp_call_struct { struct smp_call_struct {
void (*func) (void *info); void (*func) (void *info);
void *info; void *info;
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -34,6 +35,8 @@ ...@@ -34,6 +35,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
/* xtime and wall_jiffies keep wall-clock time */ /* xtime and wall_jiffies keep wall-clock time */
extern unsigned long wall_jiffies; extern unsigned long wall_jiffies;
...@@ -193,6 +196,8 @@ do_gettimeofday (struct timeval *tv) ...@@ -193,6 +196,8 @@ do_gettimeofday (struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int int
do_settimeofday (struct timespec *tv) do_settimeofday (struct timespec *tv)
{ {
...@@ -228,6 +233,8 @@ do_settimeofday (struct timespec *tv) ...@@ -228,6 +233,8 @@ do_settimeofday (struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* XXX: We can do better than this. * XXX: We can do better than this.
* Returns nanoseconds * Returns nanoseconds
......
...@@ -129,6 +129,7 @@ void dump_stack(void) ...@@ -129,6 +129,7 @@ void dump_stack(void)
show_trace(current, &stack); show_trace(current, &stack);
} }
EXPORT_SYMBOL(dump_stack);
#ifndef __LP64__ #ifndef __LP64__
static int kstack_depth_to_print = 64 * 4; static int kstack_depth_to_print = 64 * 4;
......
...@@ -96,6 +96,8 @@ unsigned int csum_partial(const unsigned char *buff, int len, unsigned int sum) ...@@ -96,6 +96,8 @@ unsigned int csum_partial(const unsigned char *buff, int len, unsigned int sum)
return result; return result;
} }
EXPORT_SYMBOL(csum_partial);
/* /*
* copy while checksumming, otherwise like csum_partial * copy while checksumming, otherwise like csum_partial
*/ */
......
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
*/ */
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/threads.h> #include <linux/threads.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/signal.h> #include <linux/signal.h>
...@@ -214,6 +215,8 @@ void free_irq(unsigned int irq, void* dev_id) ...@@ -214,6 +215,8 @@ void free_irq(unsigned int irq, void* dev_id)
return; return;
} }
EXPORT_SYMBOL(free_irq);
int request_irq(unsigned int irq, int request_irq(unsigned int irq,
irqreturn_t (*handler)(int, void *, struct pt_regs *), irqreturn_t (*handler)(int, void *, struct pt_regs *),
unsigned long irqflags, const char * devname, void *dev_id) unsigned long irqflags, const char * devname, void *dev_id)
...@@ -252,6 +255,8 @@ int request_irq(unsigned int irq, ...@@ -252,6 +255,8 @@ int request_irq(unsigned int irq,
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
/* /*
* Generic enable/disable code: this just calls * Generic enable/disable code: this just calls
* down into the PIC-specific version for the actual * down into the PIC-specific version for the actual
...@@ -530,11 +535,15 @@ unsigned long probe_irq_on (void) ...@@ -530,11 +535,15 @@ unsigned long probe_irq_on (void)
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off (unsigned long irqs) int probe_irq_off (unsigned long irqs)
{ {
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
unsigned int probe_irq_mask(unsigned long irqs) unsigned int probe_irq_mask(unsigned long irqs)
{ {
return 0; return 0;
......
...@@ -498,6 +498,8 @@ void dump_stack(void) ...@@ -498,6 +498,8 @@ void dump_stack(void)
show_stack(current, NULL); show_stack(current, NULL);
} }
EXPORT_SYMBOL(dump_stack);
void show_stack(struct task_struct *tsk, unsigned long *stack) void show_stack(struct task_struct *tsk, unsigned long *stack)
{ {
unsigned long sp, stack_top, prev_sp, ret; unsigned long sp, stack_top, prev_sp, ret;
......
...@@ -119,16 +119,22 @@ void machine_restart(char *cmd) ...@@ -119,16 +119,22 @@ void machine_restart(char *cmd)
ppc_md.restart(cmd); ppc_md.restart(cmd);
} }
EXPORT_SYMBOL(machine_restart);
void machine_power_off(void) void machine_power_off(void)
{ {
ppc_md.power_off(); ppc_md.power_off();
} }
EXPORT_SYMBOL(machine_power_off);
void machine_halt(void) void machine_halt(void)
{ {
ppc_md.halt(); ppc_md.halt();
} }
EXPORT_SYMBOL(machine_halt);
void (*pm_power_off)(void) = machine_power_off; void (*pm_power_off)(void) = machine_power_off;
#ifdef CONFIG_TAU #ifdef CONFIG_TAU
......
...@@ -10,6 +10,7 @@ ...@@ -10,6 +10,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/smp.h> #include <linux/smp.h>
#include <linux/smp_lock.h> #include <linux/smp_lock.h>
...@@ -52,6 +53,8 @@ cpumask_t cpu_possible_map; ...@@ -52,6 +53,8 @@ cpumask_t cpu_possible_map;
int smp_hw_index[NR_CPUS]; int smp_hw_index[NR_CPUS];
struct thread_info *secondary_ti; struct thread_info *secondary_ti;
EXPORT_SYMBOL(cpu_online_map);
/* SMP operations for this machine */ /* SMP operations for this machine */
static struct smp_ops_t *smp_ops; static struct smp_ops_t *smp_ops;
......
...@@ -69,6 +69,8 @@ ...@@ -69,6 +69,8 @@
/* XXX false sharing with below? */ /* XXX false sharing with below? */
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
unsigned long disarm_decr[NR_CPUS]; unsigned long disarm_decr[NR_CPUS];
extern struct timezone sys_tz; extern struct timezone sys_tz;
...@@ -239,6 +241,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -239,6 +241,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, new_sec = tv->tv_sec; time_t wtm_sec, new_sec = tv->tv_sec;
...@@ -293,6 +297,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -293,6 +297,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* This function is only called on the boot processor */ /* This function is only called on the boot processor */
void __init time_init(void) void __init time_init(void)
{ {
......
...@@ -19,6 +19,7 @@ ...@@ -19,6 +19,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/errno.h> #include <linux/errno.h>
...@@ -80,6 +81,9 @@ extern char __openfirmware_begin, __openfirmware_end; ...@@ -80,6 +81,9 @@ extern char __openfirmware_begin, __openfirmware_end;
#ifdef CONFIG_HIGHMEM #ifdef CONFIG_HIGHMEM
pte_t *kmap_pte; pte_t *kmap_pte;
pgprot_t kmap_prot; pgprot_t kmap_prot;
EXPORT_SYMBOL(kmap_prot);
EXPORT_SYMBOL(kmap_pte);
#endif #endif
void MMU_init(void); void MMU_init(void);
......
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/stddef.h> #include <linux/stddef.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/sched.h> #include <linux/sched.h>
...@@ -196,3 +197,5 @@ int request_irq(unsigned int irq, ...@@ -196,3 +197,5 @@ int request_irq(unsigned int irq,
} }
#endif #endif
} }
EXPORT_SYMBOL(request_irq);
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init.h> #include <linux/init.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -11,6 +12,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -11,6 +12,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -28,3 +31,5 @@ union thread_union init_thread_union ...@@ -28,3 +31,5 @@ union thread_union init_thread_union
* All other task structs will be allocated on slabs in fork.c * All other task structs will be allocated on slabs in fork.c
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
...@@ -24,6 +24,7 @@ ...@@ -24,6 +24,7 @@
*/ */
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/threads.h> #include <linux/threads.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
#include <linux/signal.h> #include <linux/signal.h>
...@@ -216,11 +217,15 @@ int request_irq(unsigned int irq, ...@@ -216,11 +217,15 @@ int request_irq(unsigned int irq,
return 0; return 0;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
request_irq(irq, NULL, 0, NULL, dev_id); request_irq(irq, NULL, 0, NULL, dev_id);
} }
EXPORT_SYMBOL(free_irq);
/* /*
* Generic enable/disable code: this just calls * Generic enable/disable code: this just calls
* down into the PIC-specific version for the actual * down into the PIC-specific version for the actual
...@@ -603,11 +608,15 @@ unsigned long probe_irq_on (void) ...@@ -603,11 +608,15 @@ unsigned long probe_irq_on (void)
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off (unsigned long irqs) int probe_irq_off (unsigned long irqs)
{ {
return 0; return 0;
} }
EXPORT_SYMBOL(probe_irq_off);
unsigned int probe_irq_mask(unsigned long irqs) unsigned int probe_irq_mask(unsigned long irqs)
{ {
return 0; return 0;
......
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
...@@ -431,6 +432,8 @@ void dump_stack(void) ...@@ -431,6 +432,8 @@ void dump_stack(void)
show_stack(current, (unsigned long *)_get_SP()); show_stack(current, (unsigned long *)_get_SP());
} }
EXPORT_SYMBOL(dump_stack);
void show_trace_task(struct task_struct *tsk) void show_trace_task(struct task_struct *tsk)
{ {
show_stack(tsk, (unsigned long *)tsk->thread.ksp); show_stack(tsk, (unsigned long *)tsk->thread.ksp);
......
...@@ -228,17 +228,23 @@ void machine_restart(char *cmd) ...@@ -228,17 +228,23 @@ void machine_restart(char *cmd)
{ {
ppc_md.restart(cmd); ppc_md.restart(cmd);
} }
EXPORT_SYMBOL(machine_restart);
void machine_power_off(void) void machine_power_off(void)
{ {
ppc_md.power_off(); ppc_md.power_off();
} }
EXPORT_SYMBOL(machine_power_off);
void machine_halt(void) void machine_halt(void)
{ {
ppc_md.halt(); ppc_md.halt();
} }
EXPORT_SYMBOL(machine_halt);
unsigned long ppc_proc_freq; unsigned long ppc_proc_freq;
unsigned long ppc_tb_freq; unsigned long ppc_tb_freq;
......
...@@ -17,6 +17,7 @@ ...@@ -17,6 +17,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/smp.h> #include <linux/smp.h>
#include <linux/smp_lock.h> #include <linux/smp_lock.h>
...@@ -55,6 +56,8 @@ unsigned long cache_decay_ticks; ...@@ -55,6 +56,8 @@ unsigned long cache_decay_ticks;
/* initialised so it doesn't end up in bss */ /* initialised so it doesn't end up in bss */
cpumask_t cpu_online_map = CPU_MASK_NONE; cpumask_t cpu_online_map = CPU_MASK_NONE;
EXPORT_SYMBOL(cpu_online_map);
static struct smp_ops_t *smp_ops; static struct smp_ops_t *smp_ops;
static volatile unsigned int cpu_callin_map[NR_CPUS]; static volatile unsigned int cpu_callin_map[NR_CPUS];
......
...@@ -35,6 +35,7 @@ ...@@ -35,6 +35,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -67,6 +68,8 @@ void smp_local_timer_interrupt(struct pt_regs *); ...@@ -67,6 +68,8 @@ void smp_local_timer_interrupt(struct pt_regs *);
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
/* keep track of when we need to update the rtc */ /* keep track of when we need to update the rtc */
time_t last_rtc_update; time_t last_rtc_update;
extern int piranha_simulator; extern int piranha_simulator;
...@@ -345,6 +348,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -345,6 +348,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, new_sec = tv->tv_sec; time_t wtm_sec, new_sec = tv->tv_sec;
...@@ -411,6 +416,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -411,6 +416,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* /*
* This function is a copy of the architecture independent function * This function is a copy of the architecture independent function
* but which calls do_settimeofday rather than setting the xtime * but which calls do_settimeofday rather than setting the xtime
......
...@@ -7,6 +7,7 @@ ...@@ -7,6 +7,7 @@
*/ */
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -19,6 +20,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -19,6 +20,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -37,3 +40,4 @@ union thread_union init_thread_union ...@@ -37,3 +40,4 @@ union thread_union init_thread_union
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
...@@ -15,6 +15,7 @@ ...@@ -15,6 +15,7 @@
*/ */
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/mm.h> #include <linux/mm.h>
...@@ -289,16 +290,22 @@ void machine_restart(char *command) ...@@ -289,16 +290,22 @@ void machine_restart(char *command)
_machine_restart(command); _machine_restart(command);
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
_machine_halt(); _machine_halt();
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
_machine_power_off(); _machine_power_off();
} }
EXPORT_SYMBOL(machine_power_off);
/* /*
* Setup function called from init/main.c just after the banner * Setup function called from init/main.c just after the banner
* was printed. * was printed.
......
...@@ -55,6 +55,8 @@ cpumask_t cpu_online_map; ...@@ -55,6 +55,8 @@ cpumask_t cpu_online_map;
cpumask_t cpu_possible_map; cpumask_t cpu_possible_map;
unsigned long cache_decay_ticks = 0; unsigned long cache_decay_ticks = 0;
EXPORT_SYMBOL(cpu_online_map);
/* /*
* Reboot, halt and power_off routines for SMP. * Reboot, halt and power_off routines for SMP.
*/ */
......
...@@ -12,6 +12,7 @@ ...@@ -12,6 +12,7 @@
*/ */
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -48,6 +49,8 @@ ...@@ -48,6 +49,8 @@
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
static ext_int_info_t ext_int_info_timer; static ext_int_info_t ext_int_info_timer;
static u64 init_timer_cc; static u64 init_timer_cc;
static u64 jiffies_timer_cc; static u64 jiffies_timer_cc;
...@@ -109,6 +112,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -109,6 +112,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, sec = tv->tv_sec; time_t wtm_sec, sec = tv->tv_sec;
...@@ -140,6 +145,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -140,6 +145,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
#ifndef CONFIG_ARCH_S390X #ifndef CONFIG_ARCH_S390X
static inline __u32 static inline __u32
......
...@@ -147,6 +147,8 @@ void dump_stack(void) ...@@ -147,6 +147,8 @@ void dump_stack(void)
show_stack(0, 0); show_stack(0, 0);
} }
EXPORT_SYMBOL(dump_stack);
void show_registers(struct pt_regs *regs) void show_registers(struct pt_regs *regs)
{ {
mm_segment_t old_fs; mm_segment_t old_fs;
......
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -11,6 +12,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals); ...@@ -11,6 +12,8 @@ static struct signal_struct init_signals = INIT_SIGNALS(init_signals);
static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
EXPORT_SYMBOL(init_mm);
/* /*
* Initial thread structure. * Initial thread structure.
* *
...@@ -28,3 +31,5 @@ union thread_union init_thread_union ...@@ -28,3 +31,5 @@ union thread_union init_thread_union
* All other task structs will be allocated on slabs in fork.c * All other task structs will be allocated on slabs in fork.c
*/ */
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_task);
...@@ -14,6 +14,7 @@ ...@@ -14,6 +14,7 @@
*/ */
#include <linux/config.h> #include <linux/config.h>
#include <linux/module.h>
#include <linux/ptrace.h> #include <linux/ptrace.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/kernel_stat.h> #include <linux/kernel_stat.h>
...@@ -354,6 +355,8 @@ int request_irq(unsigned int irq, ...@@ -354,6 +355,8 @@ int request_irq(unsigned int irq,
return retval; return retval;
} }
EXPORT_SYMBOL(request_irq);
void free_irq(unsigned int irq, void *dev_id) void free_irq(unsigned int irq, void *dev_id)
{ {
irq_desc_t *desc; irq_desc_t *desc;
...@@ -391,6 +394,8 @@ void free_irq(unsigned int irq, void *dev_id) ...@@ -391,6 +394,8 @@ void free_irq(unsigned int irq, void *dev_id)
} }
} }
EXPORT_SYMBOL(free_irq);
static DECLARE_MUTEX(probe_sem); static DECLARE_MUTEX(probe_sem);
/* /*
...@@ -475,6 +480,8 @@ unsigned long probe_irq_on(void) ...@@ -475,6 +480,8 @@ unsigned long probe_irq_on(void)
return val; return val;
} }
EXPORT_SYMBOL(probe_irq_on);
int probe_irq_off(unsigned long val) int probe_irq_off(unsigned long val)
{ {
int i, irq_found, nr_irqs; int i, irq_found, nr_irqs;
...@@ -506,6 +513,8 @@ int probe_irq_off(unsigned long val) ...@@ -506,6 +513,8 @@ int probe_irq_off(unsigned long val)
return irq_found; return irq_found;
} }
EXPORT_SYMBOL(probe_irq_off);
int setup_irq(unsigned int irq, struct irqaction * new) int setup_irq(unsigned int irq, struct irqaction * new)
{ {
int shared = 0; int shared = 0;
......
...@@ -11,6 +11,7 @@ ...@@ -11,6 +11,7 @@
* This file handles the architecture-dependent parts of process handling.. * This file handles the architecture-dependent parts of process handling..
*/ */
#include <linux/module.h>
#include <linux/unistd.h> #include <linux/unistd.h>
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/elfcore.h> #include <linux/elfcore.h>
...@@ -33,11 +34,15 @@ void disable_hlt(void) ...@@ -33,11 +34,15 @@ void disable_hlt(void)
hlt_counter++; hlt_counter++;
} }
EXPORT_SYMBOL(disable_hlt);
void enable_hlt(void) void enable_hlt(void)
{ {
hlt_counter--; hlt_counter--;
} }
EXPORT_SYMBOL(enable_hlt);
void default_idle(void) void default_idle(void)
{ {
/* endless idle loop with no priority at all */ /* endless idle loop with no priority at all */
...@@ -71,16 +76,22 @@ void machine_restart(char * __unused) ...@@ -71,16 +76,22 @@ void machine_restart(char * __unused)
"mov.l @%1, %0" : : "r" (0x10000000), "r" (0x80000001)); "mov.l @%1, %0" : : "r" (0x10000000), "r" (0x80000001));
} }
EXPORT_SYMBOL(machine_restart);
void machine_halt(void) void machine_halt(void)
{ {
while (1) while (1)
asm volatile("sleep" : : : "memory"); asm volatile("sleep" : : : "memory");
} }
EXPORT_SYMBOL(machine_halt);
void machine_power_off(void) void machine_power_off(void)
{ {
} }
EXPORT_SYMBOL(machine_power_off);
void show_regs(struct pt_regs * regs) void show_regs(struct pt_regs * regs)
{ {
printk("\n"); printk("\n");
......
...@@ -13,6 +13,7 @@ ...@@ -13,6 +13,7 @@
#include <linux/config.h> #include <linux/config.h>
#include <linux/errno.h> #include <linux/errno.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/kernel.h> #include <linux/kernel.h>
#include <linux/param.h> #include <linux/param.h>
...@@ -72,6 +73,8 @@ spinlock_t tmu0_lock = SPIN_LOCK_UNLOCKED; ...@@ -72,6 +73,8 @@ spinlock_t tmu0_lock = SPIN_LOCK_UNLOCKED;
u64 jiffies_64 = INITIAL_JIFFIES; u64 jiffies_64 = INITIAL_JIFFIES;
EXPORT_SYMBOL(jiffies_64);
/* XXX: Can we initialize this in a routine somewhere? Dreamcast doesn't want /* XXX: Can we initialize this in a routine somewhere? Dreamcast doesn't want
* these routines anywhere... */ * these routines anywhere... */
#ifdef CONFIG_SH_RTC #ifdef CONFIG_SH_RTC
...@@ -177,6 +180,8 @@ void do_gettimeofday(struct timeval *tv) ...@@ -177,6 +180,8 @@ void do_gettimeofday(struct timeval *tv)
tv->tv_usec = usec; tv->tv_usec = usec;
} }
EXPORT_SYMBOL(do_gettimeofday);
int do_settimeofday(struct timespec *tv) int do_settimeofday(struct timespec *tv)
{ {
time_t wtm_sec, sec = tv->tv_sec; time_t wtm_sec, sec = tv->tv_sec;
...@@ -211,6 +216,8 @@ int do_settimeofday(struct timespec *tv) ...@@ -211,6 +216,8 @@ int do_settimeofday(struct timespec *tv)
return 0; return 0;
} }
EXPORT_SYMBOL(do_settimeofday);
/* last time the RTC clock got updated */ /* last time the RTC clock got updated */
static long last_rtc_update; static long last_rtc_update;
......
...@@ -647,3 +647,4 @@ void dump_stack(void) ...@@ -647,3 +647,4 @@ void dump_stack(void)
show_stack(NULL, NULL); show_stack(NULL, NULL);
} }
EXPORT_SYMBOL(dump_stack);
#include <linux/mm.h> #include <linux/mm.h>
#include <linux/module.h>
#include <linux/sched.h> #include <linux/sched.h>
#include <linux/init_task.h> #include <linux/init_task.h>
...@@ -12,6 +13,9 @@ static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand); ...@@ -12,6 +13,9 @@ static struct sighand_struct init_sighand = INIT_SIGHAND(init_sighand);
struct mm_struct init_mm = INIT_MM(init_mm); struct mm_struct init_mm = INIT_MM(init_mm);
struct task_struct init_task = INIT_TASK(init_task); struct task_struct init_task = INIT_TASK(init_task);
EXPORT_SYMBOL(init_mm);
EXPORT_SYMBOL(init_task);
/* .text section in head.S is aligned at 8k boundary and this gets linked /* .text section in head.S is aligned at 8k boundary and this gets linked
* right after that so that the init_thread_union is aligned properly as well. * right after that so that the init_thread_union is aligned properly as well.
* If this is not aligned on a 8k boundry, then you should change code * If this is not aligned on a 8k boundry, then you should change code
......
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
This diff is collapsed.
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment