diff --git a/Makefile.target b/Makefile.target index bab5998..fd46e09 100644 --- a/Makefile.target +++ b/Makefile.target @@ -12,7 +12,7 @@ HOSTCC := gcc HOSTCFLAGS+= -O2 -g -DFCOMPILER -DBOOTSTRAP $(CROSSCFLAGS) HOSTCFLAGS+= -Wall -Wredundant-decls -Wshadow -Wpointer-arith HOSTCFLAGS+= -Wstrict-prototypes -Wmissing-declarations -Wundef -Wendif-labels -HOSTCFLAGS+= -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes +HOSTCFLAGS+= -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes -Wnested-externs HOSTCFLAGS+= -W HOSTINCLUDES := -I$(SRCDIR)/include -I$(SRCDIR)/kernel -I$(SRCDIR)/kernel/include -I$(ODIR)/target/include @@ -27,7 +27,7 @@ RANLIB := $(TARGET)ranlib CFLAGS+= -Os -g -DNATIVE_BITWIDTH_EQUALS_HOST_BITWIDTH -USWAP_ENDIANNESS CFLAGS+= -Wall -Wredundant-decls -Wshadow -Wpointer-arith CFLAGS+= -Wstrict-prototypes -Wmissing-declarations -Wundef -Wendif-labels -CFLAGS+= -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes +CFLAGS+= -Wstrict-aliasing -Wwrite-strings -Wmissing-prototypes -Wnested-externs CFLAGS+= -Werror INCLUDES := -I$(SRCDIR)/include -I$(SRCDIR)/kernel/include -I$(ODIR)/target/include AS_FLAGS+= -g diff --git a/arch/ppc/qemu/init.c b/arch/ppc/qemu/init.c index 7ec67b8..0d0db3a 100644 --- a/arch/ppc/qemu/init.c +++ b/arch/ppc/qemu/init.c @@ -50,7 +50,6 @@ struct cpudef { static uint16_t machine_id = 0; extern void unexpected_excep( int vector ); -extern void setup_timers( void ); void unexpected_excep( int vector ) diff --git a/arch/sparc32/context.c b/arch/sparc32/context.c index 9f1dac4..52d48ed 100644 --- a/arch/sparc32/context.c +++ b/arch/sparc32/context.c @@ -8,6 +8,7 @@ #include "context.h" #include "libopenbios/sys_info.h" #include "boot.h" +#include "openbios.h" #define MAIN_STACK_SIZE 16384 #define IMAGE_STACK_SIZE 4096 @@ -46,7 +47,6 @@ unsigned long __boot_ctx; static void start_main(void) { int retval; - extern int openbios(void); /* Save startup context, so we can refer to it later. * We have to keep it in physical address since we will relocate. */ diff --git a/arch/sparc64/context.c b/arch/sparc64/context.c index 7377fc5..8e2befb 100644 --- a/arch/sparc64/context.c +++ b/arch/sparc64/context.c @@ -8,6 +8,7 @@ #include "context.h" #include "libopenbios/sys_info.h" #include "boot.h" +#include "openbios.h" #define MAIN_STACK_SIZE 16384 #define IMAGE_STACK_SIZE 4096*2 @@ -46,7 +47,6 @@ unsigned long __boot_ctx; static void start_main(void) { int retval; - extern int openbios(void); /* Save startup context, so we can refer to it later. * We have to keep it in physical address since we will relocate. */ diff --git a/arch/x86/context.c b/arch/x86/context.c index c1fd904..d543f74 100644 --- a/arch/x86/context.c +++ b/arch/x86/context.c @@ -12,6 +12,7 @@ #include "context.h" #include "libopenbios/sys_info.h" #include "boot.h" +#include "openbios.h" #define MAIN_STACK_SIZE 16384 #define IMAGE_STACK_SIZE 4096 @@ -57,8 +58,6 @@ unsigned long __boot_ctx; static void start_main(void) { int retval; - extern int openbios(void); - extern void init_exceptions(void); /* Save startup context, so we can refer to it later. * We have to keep it in physical address since we will relocate. */ diff --git a/arch/x86/openbios.c b/arch/x86/openbios.c index bc388c1..62ef587 100644 --- a/arch/x86/openbios.c +++ b/arch/x86/openbios.c @@ -50,8 +50,6 @@ static void init_memory(void) static void arch_init( void ) { - void setup_timers(void); - openbios_init(); modules_init(); #ifdef CONFIG_DRIVER_PCI diff --git a/arch/x86/openbios.h b/arch/x86/openbios.h index 2d49dbf..a130822 100644 --- a/arch/x86/openbios.h +++ b/arch/x86/openbios.h @@ -19,6 +19,9 @@ int openbios(void); +/* entry.S */ +void init_exceptions(void); + /* console.c */ extern void cls(void); #ifdef CONFIG_DEBUG_CONSOLE diff --git a/drivers/timer.c b/drivers/timer.c index 32d5947..863888b 100644 --- a/drivers/timer.c +++ b/drivers/timer.c @@ -10,6 +10,7 @@ */ #include "config.h" +#include "drivers/drivers.h" #include "timer.h" #include "asm/io.h" @@ -86,7 +87,6 @@ unsigned long get_timer_freq(void) void udelay(unsigned int usecs) { - extern void _wait_ticks(unsigned long); unsigned long ticksperusec = get_timer_freq() / 1000000; _wait_ticks(ticksperusec * usecs); } diff --git a/drivers/timer.h b/drivers/timer.h index c822665..7e86db3 100644 --- a/drivers/timer.h +++ b/drivers/timer.h @@ -48,13 +48,15 @@ #define PPCB_SPKR 0x02 /* Bit 1 */ #define PPCB_T2GATE 0x01 /* Bit 0 */ -extern void setup_timers(void); extern void ndelay(unsigned int nsecs); extern void udelay(unsigned int usecs); extern void mdelay(unsigned int msecs); extern unsigned long currticks(void); extern unsigned long get_timer_freq(void); +/* arch/ppc/timebase.S */ +void _wait_ticks(unsigned long nticks); + #define TICKS_PER_SEC 1000 #endif /* TIMER_H */ diff --git a/include/drivers/drivers.h b/include/drivers/drivers.h index 10cd7ba..6829572 100644 --- a/include/drivers/drivers.h +++ b/include/drivers/drivers.h @@ -123,4 +123,8 @@ int keyboard_dataready(void); unsigned char keyboard_readdata(void); #endif #endif + +/* drivers/timer.c */ +void setup_timers(void); + #endif /* OPENBIOS_DRIVERS_H */