#ifndef _U_BOOT_I386_H_
#define _U_BOOT_I386_H_ 1
-/* for the following variables, see start.S */
-extern ulong i386boot_start; /* code start (in flash) */
-extern ulong i386boot_end; /* code end (in flash) */
-extern ulong i386boot_romdata_start;/* datasegment in flash (also code+rodata end) */
-extern ulong i386boot_romdata_dest; /* data location segment in ram */
-extern ulong i386boot_romdata_size; /* size of data segment */
-extern ulong i386boot_bss_start; /* bss start */
-extern ulong i386boot_bss_size; /* bss size */
-extern ulong i386boot_stack_end; /* first usable RAM address after bss and stack */
-extern ulong i386boot_ram_end; /* end of ram */
-
-extern ulong i386boot_realmode; /* start of realmode entry code */
-extern ulong i386boot_realmode_size;/* size of realmode entry code */
-extern ulong i386boot_bios; /* start of BIOS emulation code */
-extern ulong i386boot_bios_size; /* size of BIOS emulation code */
+/* cpu/.../cpu.c */
+int cpu_init_r(void);
+int cpu_init_f(void);
+/* cpu/.../timer.c */
+void timer_isr(void *);
+typedef void (timer_fnc_t) (void);
+int register_timer_isr (timer_fnc_t *isr_func);
-/* cpu/.../cpu.c */
-int cpu_init(void);
+/* Architecture specific - can be in cpu/i386/, lib_i386/, or $(BOARD)/ */
int timer_init(void);
+/* cpu/.../interrupts.c */
+int cpu_init_interrupts(void);
+
/* board/.../... */
-int board_init(void);
-int dram_init (void);
+int board_init(void);
+int dram_init(void);
+
+void isa_unmap_rom(u32 addr);
+u32 isa_map_rom(u32 bus_addr, int size);
+
+/* lib_i386/... */
+int video_bios_init(void);
+int video_init(void);
#endif /* _U_BOOT_I386_H_ */