X-Git-Url: http://review.tizen.org/git/?a=blobdiff_plain;f=include%2Fcommon.h;h=efc638d88c06b28544e131363b7f23a0fa98a384;hb=4b1d95d96a39a71eddd088bb5e0e9e699035c9bf;hp=32107a0942e1d43ebb3c4aac0824fd5d29c0c51b;hpb=180d3f74e4738ee107e269cbb949481075dd789a;p=platform%2Fkernel%2Fu-boot.git diff --git a/include/common.h b/include/common.h index 32107a0..efc638d 100644 --- a/include/common.h +++ b/include/common.h @@ -48,28 +48,45 @@ typedef volatile unsigned char vu_char; defined(CONFIG_MPC859DSL) || \ defined(CONFIG_MPC866) || defined(CONFIG_MPC866T) || \ defined(CONFIG_MPC866P) -# define CONFIG_MPC866_et_al 1 +# define CONFIG_MPC866_FAMILY 1 #elif defined(CONFIG_MPC870) \ || defined(CONFIG_MPC875) \ || defined(CONFIG_MPC880) \ || defined(CONFIG_MPC885) -# define CONFIG_DUET 1 +# define CONFIG_MPC885_FAMILY 1 #endif #if defined(CONFIG_MPC860) \ || defined(CONFIG_MPC860T) \ - || defined(CONFIG_MPC866_et_al) \ - || defined(CONFIG_DUET) + || defined(CONFIG_MPC866_FAMILY) \ + || defined(CONFIG_MPC885_FAMILY) # define CONFIG_MPC86x 1 #endif #elif defined(CONFIG_5xx) #include +#elif defined(CONFIG_MPC5xxx) +#include +#elif defined(CONFIG_MPC8220) +#include #elif defined(CONFIG_8260) +#if defined(CONFIG_MPC8247) \ + || defined(CONFIG_MPC8248) \ + || defined(CONFIG_MPC8271) \ + || defined(CONFIG_MPC8272) +#define CONFIG_MPC8272_FAMILY 1 +#endif +#if defined(CONFIG_MPC8272_FAMILY) +#define CONFIG_MPC8260 1 +#endif #include #endif #ifdef CONFIG_MPC85xx #include #include #endif +#ifdef CONFIG_MPC83XX +#include +#include +#endif #ifdef CONFIG_4xx #include #endif @@ -92,9 +109,9 @@ typedef volatile unsigned char vu_char; #define debugX(level,fmt,args...) #endif /* DEBUG */ -typedef void (interrupt_handler_t)(void *); +typedef void (interrupt_handler_t)(void *); -#include /* boot information for Linux kernel */ +#include /* boot information for Linux kernel */ #include /* global data used for startup functions */ /* @@ -117,6 +134,17 @@ typedef void (interrupt_handler_t)(void *); # endif #endif +#ifndef CONFIG_SERIAL_MULTI + +#if defined(CONFIG_8xx_CONS_SMC1) || defined(CONFIG_8xx_CONS_SMC2) \ + || defined(CONFIG_8xx_CONS_SCC1) || defined(CONFIG_8xx_CONS_SCC2) \ + || defined(CONFIG_8xx_CONS_SCC3) || defined(CONFIG_8xx_CONS_SCC4) + +#define CONFIG_SERIAL_MULTI 1 + +#endif + +#endif /* CONFIG_SERIAL_MULTI */ /* * General Purpose Utilities @@ -134,7 +162,7 @@ typedef void (interrupt_handler_t)(void *); * Function Prototypes */ -#if CONFIG_SERIAL_SOFTWARE_FIFO +#ifdef CONFIG_SERIAL_SOFTWARE_FIFO void serial_buffered_init (void); void serial_buffered_putc (const char); void serial_buffered_puts (const char *); @@ -142,11 +170,11 @@ int serial_buffered_getc (void); 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 */ @@ -175,20 +203,21 @@ int autoscript (ulong addr); /* 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 # include # include /* ARM version to be fixed! */ #endif /* CONFIG_ARM */ @@ -196,21 +225,25 @@ void setenv (char *, char *); # include #endif /* CONFIG_I386 */ -void pci_init (void); -void pci_init_board(void); -void pciinfo (int, int); +#ifdef CONFIG_AUTO_COMPLETE +int env_complete(char *var, int maxv, char *cmdv[], int maxsz, char *buf); +#endif + +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); @@ -219,9 +252,12 @@ int misc_init_r (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); @@ -248,7 +284,7 @@ extern void pic_write (uchar reg, uchar val); #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 @@ -256,6 +292,8 @@ extern ssize_t spi_write (uchar *, int, uchar *, int); void rpxclassic_init (void); #endif +void rpxlite_init (void); + #ifdef CONFIG_MBX /* $(BOARD)/mbx8xx.c */ void mbx_init (void); @@ -263,7 +301,8 @@ void board_serial_init (void); 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 @@ -282,9 +321,10 @@ void perform_soft_reset(void); 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) @@ -292,12 +332,16 @@ int testdram(void); #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); +#if defined(CONFIG_MPC5xxx) +uint get_svr (void); +#endif uint get_pvr (void); +uint get_svr (void); uint rd_ic_cst (void); void wr_ic_cst (uint); void wr_ic_adr (uint); @@ -314,23 +358,27 @@ void relocate_code (ulong, gd_t *, ulong); ulong get_endaddr (void); void trap_init (ulong); #if defined (CONFIG_4xx) || \ + defined (CONFIG_MPC5xxx) || \ defined (CONFIG_74xx_7xx) || \ 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); + defined (CONFIG_74xx) || \ + defined (CONFIG_MPC8220) || \ + defined(CONFIG_MPC85xx) +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); +void ppcDcbz(unsigned long value); #endif /* $(CPU)/cpu.c */ @@ -339,42 +387,70 @@ int checkicache (void); int checkdcache (void); void upmconfig (unsigned int, unsigned int *, unsigned int); ulong get_tbclk (void); +void reset_cpu (ulong addr); /* $(CPU)/serial.c */ int serial_init (void); +void serial_addr (unsigned int); void serial_setbrg (void); void serial_putc (const char); +void serial_putc_raw(const char); void serial_puts (const char *); -void serial_addr (unsigned int); int serial_getc (void); int serial_tstc (void); +void _serial_setbrg (const int); +void _serial_putc (const char, const int); +void _serial_putc_raw(const char, const int); +void _serial_puts (const char *, const int); +int _serial_getc (const int); +int _serial_tstc (const int); + /* $(CPU)/speed.c */ int get_clocks (void); +int get_clocks_866 (void); +int sdram_adjust_866 (void); +int adjust_sdram_tbs_8xx (void); #if defined(CONFIG_8260) int prt_8260_clks (void); -#endif -#if defined(CONFIG_MPC5XXX) +#elif defined(CONFIG_MPC83XX) +int print_clock_conf(void); +#elif defined(CONFIG_MPC5xxx) int prt_mpc5xxx_clks (void); #endif +#if defined(CONFIG_MPC8220) +int prt_mpc8220_clks (void); +#endif #ifdef CONFIG_4xx ulong get_OPB_freq (void); ulong get_PCI_freq (void); #endif -#if defined(CONFIG_S3C2400) || defined(CONFIG_S3C2410) +#if defined(CONFIG_S3C2400) || defined(CONFIG_S3C2410) || defined(CONFIG_LH7A40X) ulong get_FCLK (void); ulong get_HCLK (void); ulong get_PCLK (void); ulong get_UCLK (void); #endif +#if defined(CONFIG_LH7A40X) +ulong get_PLLCLK (void); +#endif #if defined CONFIG_INCA_IP -uint incaip_get_cpuclk (void); +uint incaip_get_cpuclk (void); +#endif +#if defined(CONFIG_IMX) +ulong get_systemPLLCLK(void); +ulong get_FCLK(void); +ulong get_HCLK(void); +ulong get_BCLK(void); +ulong get_PERCLK1(void); +ulong get_PERCLK2(void); +ulong get_PERCLK3(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) @@ -383,24 +459,25 @@ void get_sys_info ( sys_info_t * ); # 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 */ #if defined(CONFIG_8xx) || defined(CONFIG_8260) void cpu_init_f (volatile immap_t *immr); #endif -#if defined(CONFIG_4xx) || defined(CONFIG_MPC85xx) +#if defined(CONFIG_4xx) || defined(CONFIG_MPC85xx) || defined(CONFIG_MCF52x2) void cpu_init_f (void); #endif + int cpu_init_r (void); #if defined(CONFIG_8260) int prt_8260_rsr (void); #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); @@ -434,7 +511,7 @@ ulong vfd_setmem (ulong); /* $(CPU)/.../video.c */ ulong video_setmem (ulong); -/* ppc/cache.c */ +/* lib_$(ARCH)/cache.c */ void flush_cache (unsigned long, unsigned long); @@ -450,10 +527,13 @@ int init_timebase (void); /* lib_generic/vsprintf.c */ ulong simple_strtoul(const char *cp,char **endp,unsigned int base); +#ifdef CFG_64BIT_VSPRINTF +unsigned long long simple_strtoull(const char *cp,char **endp,unsigned int base); +#endif 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); @@ -511,4 +591,9 @@ int pcmcia_init (void); void show_boot_progress (int status); #endif +#ifdef CONFIG_INIT_CRITICAL +#error CONFIG_INIT_CRITICAL is depracted! +#error Read section CONFIG_SKIP_LOWLEVEL_INIT in README. +#endif + #endif /* __COMMON_H_ */