ARM仿真器-foxICE 设为首页   |   加入收藏夹   |   网站地图         
  站内搜索:
 
http://www.foxice.net
最新下载_foxICE
ARM7TDMI R3内核
ARM7EJS内核
ARM946E-S内核
ARM966E-S内核
ARM9TDMI内核
ARM940T内核
ARM指令集速查卡
ARM925T内核(TI925T)

更多 >> 

 技术专栏RSS订阅

   首页>技术专栏>U-boot>VxWorks 的bootrom 到u-boot 的移植心得

VxWorks的bootrom 到u-boot的移植心得

作者:不详 1  2  3  4  5  6  7  8  9  10  11

/*串口基地址,分别对应NS16552 的两路串口,请参考文件\driver\serial.c*/
#define CFG_NS16550_COM1 (CFG_ISA_IO + CFG_NS87308_UART1_BASE)
#define CFG_NS16550_COM2 (CFG_ISA_IO + CFG_NS87308_UART2_BASE)
/*以下为一些底层设置(例如地址映射,寄存器初始值等),请参考MPC8240 Integrated
Processor User’s Manual、 Programming Environments Manual for 32-Bit Implementations of the
PowerPC? Architecture和EREF: A Programmer'sReference Manual for Freescale Book EProcessors等文档以及内存芯片的datasheet,对这些值的配置不当将直接导致u-boot的无法运行。不过先别担心,由于我们有VxWorks的Bootrom做了底层初始化,因此可以先绕过他们当中的大部分。对他们的配置值也可以参考VxWorks的BSP*/
#define CONFIG_SYS_CLK_FREQ 33000000 /*系统时钟,即输入给CPU 的晶振频率*/
#define CONFIG_PLL_PCI_TO_MEM_MULTIPLIER 1 /*PCI 到内存接口的倍频*/
/*下面的是MCCR1~4 的定义,参考MPC8240 User Mannual*/
#define CFG_ROMNAL 7 /*rom/flash next access time*/
#define CFG_ROMFAL 11 /*rom/flash access time*/
#define CFG_REFINT 430 /* number of clock cycles between CBR refresh cycles */
/*SDRAM 的参数 */
#define CFG_BSTOPRE 121 /* Burst To Precharge, sets open page interval */
#define CFG_REFREC 8 /* Refresh to activate interval */
#define CFG_RDLAT 4 /* data latency from read command*/
#define CFG_PRETOACT 3 /* Precharge to activate interval*/
#define CFG_ACTTOPRE 5 /* Activate to Precharge interval*/
#define CFG_ACTORW 3 /* Activate to R/W*/
#define CFG_SDMODE_CAS_LAT 3 /* SDMODE CAS latency*/
#define CFG_SDMODE_WRAP 0 /* SDMODE wrap type*/
#define CFG_SDMODE_BURSTLEN 2 /* SDMODE Burst length 2=4, 3=8*/
#define CFG_REGISTERD_TYPE_BUFFER 1
/*内存bank 的设置,由于sandpoint 和我的电路板都是用了MAP B的内存映射方式,内存只能使用0x40000000 以下的地址,因此最高2 位必须为0,低20 位在填写寄存器时将被自动设置为0x00000(起始地址)和0xfffff(结束地址),只有bank0 被使能,映射了电路板上的全部内存,其余bank 均不使能*/
#define CFG_BANK0_START 0x00000000 /*内存映射*/
#define CFG_BANK0_END (CFG_MAX_RAM_SIZE - 1)
#define CFG_BANK0_ENABLE 1 /*此bank 使能 */
#define CFG_BANK1_START 0x3ff00000
#define CFG_BANK1_END 0x3fffffff
#define CFG_BANK1_ENABLE 0 /*此bank 不使能*/
#define CFG_BANK2_START 0x3ff00000
#define CFG_BANK2_END 0x3fffffff
#define CFG_BANK2_ENABLE 0
#define CFG_BANK3_START 0x3ff00000
#define CFG_BANK3_END 0x3fffffff
#define CFG_BANK3_ENABLE 0
#define CFG_BANK4_START 0x00000000
#define CFG_BANK4_END 0x00000000
#define CFG_BANK4_ENABLE 0
#define CFG_BANK5_START 0x00000000
#define CFG_BANK5_END 0x00000000
#define CFG_BANK5_ENABLE 0
#define CFG_BANK6_START 0x00000000
#define CFG_BANK6_END 0x00000000
#define CFG_BANK6_ENABLE 0
#define CFG_BANK7_START 0x00000000
#define CFG_BANK7_END 0x00000000
#define CFG_BANK7_ENABLE 0
/*使能的bank,其中MSB 代表bank7,LSB 代表bank0,事实上,CFG_BANK_ENABLE被用于board\sandpoint\early_init.S , 而上面的CFG_BANKX_ENABLE 被用于 \cpu\mpc824x\cpu_init.c。两者必须一致*/
#define CFG_BANK_ENABLE 0x01
/*配置输出时钟的驱动能力,参考MPC8240 User Manual*/
#define CFG_ODCR 0xff
/*配置page 的保存时间,参考MPC8240 User Manual*/
#define CFG_PGMAX 0x32
/*IBAT0~4 和DBAT0~4 的配置,其中IBAT0 用作内存,IBAT1 用作系统堆栈,IBAT2 用作PCI 空间,IBAT3 用作Flash/ROM 等空间*/
#define CFG_IBAT0L (CFG_SDRAM_BASE | BATL_PP_10 | BATL_MEMCOHERENCE)
#define CFG_IBAT0U (CFG_SDRAM_BASE | BATU_BL_256M | BATU_VS | BATU_VP)
#if defined(USE_DINK32)
#define CFG_IBAT1L (0x40000000 | BATL_PP_00 )
#define CFG_IBAT1U (0x40000000 | BATU_BL_128K )
#else
#define CFG_IBAT1L (CFG_INIT_RAM_ADDR | BATL_PP_10 | BATL_MEMCOHERENCE)
#define CFG_IBAT1U (CFG_INIT_RAM_ADDR | BATU_BL_128K | BATU_VS | BATU_VP)
#endif
#define CFG_IBAT2L (0x80000000 | BATL_PP_10 | BATL_CACHEINHIBIT)
#define CFG_IBAT2U (0x80000000 | BATU_BL_256M | BATU_VS | BATU_VP)
#define CFG_IBAT3L (0xF0000000 | BATL_PP_10 | BATL_CACHEINHIBIT)
#define CFG_IBAT3U (0xF0000000 | BATU_BL_256M | BATU_VS | BATU_VP)
#define CFG_DBAT0L CFG_IBAT0L
#define CFG_DBAT0U CFG_IBAT0U
#define CFG_DBAT1L CFG_IBAT1L

1  2  3  4  5  6  7  8  9  10  11

立即下载:
点击下载
相关文档
U-Boot在44B0X开发板上的移植以及代码分析
uboot移植到S3C44B0X开发板的经历
S3C44B0\U-Boot的启动流程及移植
U-Boot在S3C2410上的移植
uboot在ARM s3c2410上移植过程
U-boot移植日记(s3c44b0)
嵌入式系统中U-Boot基本特点及其移植方法
下载说明:
  1. 未经本站明确许可,任何网站不得非法盗链及抄袭本站资源!
 

首页 | 产品介绍 | 技术支持 | 下载中心 | 技术专栏 | 关于我们 | 联系我们
电话:86-755-82798083   82796301   传真:86-755-82799007    Email:sales@foxice.net   sales6@foxice.net
在线咨询:QQ:346466907   MSN:sales6@foxice.net   ini3000@msn.com

© 2006 Foxice.net 版权所有