*
* This program is distributed in the hope that it will be useful,
* but WITHOUT ANY WARRANTY; without even the implied warranty of
- * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
* GNU General Public License for more details.
*
* You should have received a copy of the GNU General Public License
typedef unsigned char uchar;
typedef volatile unsigned long vu_long;
-typedef volatile unsigned short vu_short;
+typedef volatile unsigned short vu_short;
typedef volatile unsigned char vu_char;
#include <config.h>
#if defined(CONFIG_PCI) && defined(CONFIG_440)
#include <pci.h>
#endif
-#ifdef CONFIG_8xx
+#if defined(CONFIG_8xx)
#include <asm/8xx_immap.h>
-#ifdef CONFIG_MPC860
-#define CONFIG_MPC86x 1
-#endif
-#ifdef CONFIG_MPC860T
-#define CONFIG_MPC86x 1
-#endif
#if defined(CONFIG_MPC852) || defined(CONFIG_MPC852T) || \
defined(CONFIG_MPC859) || defined(CONFIG_MPC859T) || \
defined(CONFIG_MPC859DSL) || \
defined(CONFIG_MPC866) || defined(CONFIG_MPC866T) || \
defined(CONFIG_MPC866P)
-#define CONFIG_MPC866_et_al 1
-#define CONFIG_MPC86x 1
+# define CONFIG_MPC866_et_al 1
+#elif defined(CONFIG_MPC870) \
+ || defined(CONFIG_MPC875) \
+ || defined(CONFIG_MPC880) \
+ || defined(CONFIG_MPC885)
+# define CONFIG_DUET 1
+#endif
+#if defined(CONFIG_MPC860) \
+ || defined(CONFIG_MPC860T) \
+ || defined(CONFIG_MPC866_et_al) \
+ || defined(CONFIG_DUET)
+# define CONFIG_MPC86x 1
#endif
#elif defined(CONFIG_5xx)
#include <asm/5xx_immap.h>
#define debugX(level,fmt,args...)
#endif /* DEBUG */
-typedef void (interrupt_handler_t)(void *);
+typedef void (interrupt_handler_t)(void *);
-#include <asm/u-boot.h> /* boot information for Linux kernel */
+#include <asm/u-boot.h> /* boot information for Linux kernel */
#include <asm/global_data.h> /* global data used for startup functions */
/*
int serial_buffered_tstc (void);
#endif /* CONFIG_SERIAL_SOFTWARE_FIFO */
-void hang (void) __attribute__ ((noreturn));
+void hang (void) __attribute__ ((noreturn));
/* */
long int initdram (int);
-int display_options (void);
+int display_options (void);
void print_size (ulong, const char *);
/* common/main.c */
/* common/cmd_bootm.c */
void print_image_hdr (image_header_t *hdr);
-extern ulong load_addr; /* Default Load Address */
+extern ulong load_addr; /* Default Load Address */
/* common/cmd_nvedit.c */
int env_init (void);
void env_relocate (void);
-char *getenv (uchar *);
+char *getenv (uchar *);
int getenv_r (uchar *name, uchar *buf, unsigned len);
-int saveenv (void);
+int saveenv (void);
#ifdef CONFIG_PPC /* ARM version to be fixed! */
void inline setenv (char *, char *);
#else
-void setenv (char *, char *);
+void setenv (char *, char *);
#endif /* CONFIG_PPC */
#ifdef CONFIG_ARM
+# include <asm/setup.h>
# include <asm/u-boot-arm.h> /* ARM version to be fixed! */
#endif /* CONFIG_ARM */
#ifdef CONFIG_I386 /* x86 version to be fixed! */
# include <asm/u-boot-i386.h>
#endif /* CONFIG_I386 */
-void pci_init (void);
-void pci_init_board(void);
-void pciinfo (int, int);
+void pci_init (void);
+void pci_init_board(void);
+void pciinfo (int, int);
#if defined(CONFIG_PCI) && defined(CONFIG_440)
# if defined(CFG_PCI_PRE_INIT)
- int pci_pre_init (struct pci_controller * );
+ int pci_pre_init (struct pci_controller * );
# endif
# if defined(CFG_PCI_TARGET_INIT)
- void pci_target_init (struct pci_controller *);
+ void pci_target_init (struct pci_controller *);
# endif
# if defined(CFG_PCI_MASTER_INIT)
- void pci_master_init (struct pci_controller *);
+ void pci_master_init (struct pci_controller *);
# endif
- int is_pci_host (struct pci_controller *);
+ int is_pci_host (struct pci_controller *);
#endif
int misc_init_f (void);
/* common/exports.c */
void jumptable_init(void);
+/* common/memsize.c */
+int get_ram_size (volatile long *, long);
+
/* $(BOARD)/$(BOARD).c */
void reset_phy (void);
-void fdc_hw_init (void);
+void fdc_hw_init (void);
/* $(BOARD)/eeprom.c */
void eeprom_init (void);
#if defined(CONFIG_SPI)
extern void spi_init_f (void);
extern void spi_init_r (void);
-extern ssize_t spi_read (uchar *, int, uchar *, int);
+extern ssize_t spi_read (uchar *, int, uchar *, int);
extern ssize_t spi_write (uchar *, int, uchar *, int);
#endif
void board_ether_init (void);
#endif
-#if defined(CONFIG_RPXCLASSIC) || defined(CONFIG_MBX) || defined(CONFIG_IAD210)
+#if defined(CONFIG_RPXCLASSIC) || defined(CONFIG_MBX) || \
+ defined(CONFIG_IAD210) || defined(CONFIG_XPEDITE1K)
void board_get_enetaddr (uchar *addr);
#endif
void load_sernum_ethaddr (void);
/* $(BOARD)/$(BOARD).c */
-int board_pre_init (void);
-int board_post_init (void);
+int board_early_init_f (void);
+int board_late_init (void);
int board_postclk_init (void); /* after clocks/timebase, before env/serial */
+int board_early_init_r (void);
void board_poweroff (void);
#if defined(CFG_DRAM_TEST)
#endif /* CFG_DRAM_TEST */
/* $(CPU)/start.S */
-#if defined(CONFIG_5xx) || \
+#if defined(CONFIG_5xx) || \
defined(CONFIG_8xx)
uint get_immr (uint);
#endif
-uint get_pir (void);
+uint get_pir (void);
uint get_pvr (void);
uint rd_ic_cst (void);
void wr_ic_cst (uint);
defined (CONFIG_74x) || \
defined (CONFIG_75x) || \
defined (CONFIG_74xx)
-unsigned char in8(unsigned int);
-void out8(unsigned int, unsigned char);
-unsigned short in16(unsigned int);
-unsigned short in16r(unsigned int);
-void out16(unsigned int, unsigned short value);
-void out16r(unsigned int, unsigned short value);
-unsigned long in32(unsigned int);
-unsigned long in32r(unsigned int);
-void out32(unsigned int, unsigned long value);
-void out32r(unsigned int, unsigned long value);
-void ppcDcbf(unsigned long value);
-void ppcDcbi(unsigned long value);
-void ppcSync(void);
+unsigned char in8(unsigned int);
+void out8(unsigned int, unsigned char);
+unsigned short in16(unsigned int);
+unsigned short in16r(unsigned int);
+void out16(unsigned int, unsigned short value);
+void out16r(unsigned int, unsigned short value);
+unsigned long in32(unsigned int);
+unsigned long in32r(unsigned int);
+void out32(unsigned int, unsigned long value);
+void out32r(unsigned int, unsigned long value);
+void ppcDcbf(unsigned long value);
+void ppcDcbi(unsigned long value);
+void ppcSync(void);
#endif
/* $(CPU)/cpu.c */
/* $(CPU)/speed.c */
int get_clocks (void);
+int get_clocks_866 (void);
+int sdram_adjust_866 (void);
#if defined(CONFIG_8260)
int prt_8260_clks (void);
#endif
ulong get_UCLK (void);
#endif
#if defined CONFIG_INCA_IP
-uint incaip_get_cpuclk (void);
+uint incaip_get_cpuclk (void);
#endif
ulong get_bus_freq (ulong);
#if defined(CONFIG_MPC85xx)
typedef MPC85xx_SYS_INFO sys_info_t;
-void get_sys_info ( sys_info_t * );
+void get_sys_info ( sys_info_t * );
#endif
#if defined(CONFIG_4xx) || defined(CONFIG_IOP480)
# else
typedef PPC405_SYS_INFO sys_info_t;
# endif
-void get_sys_info ( sys_info_t * );
+void get_sys_info ( sys_info_t * );
#endif
/* $(CPU)/cpu_init.c */
#endif
/* $(CPU)/interrupts.c */
-int interrupt_init (void);
-void timer_interrupt (struct pt_regs *);
+int interrupt_init (void);
+void timer_interrupt (struct pt_regs *);
void external_interrupt (struct pt_regs *);
void irq_install_handler(int, interrupt_handler_t *, void *);
void irq_free_handler (int);
long simple_strtol(const char *cp,char **endp,unsigned int base);
void panic(const char *fmt, ...);
int sprintf(char * buf, const char *fmt, ...);
-int vsprintf(char *buf, const char *fmt, va_list args);
+int vsprintf(char *buf, const char *fmt, va_list args);
/* lib_generic/crc32.c */
ulong crc32 (ulong, const unsigned char *, uint);