摘要: 一、实验环境实验板:TQ2440开发板SDRAM:64Mnorflash:EN29LV160AB(2M)nandflash:(256M)二、移植 本文不详谈从smdk2410移植到TQ2440的详细过程,只把涉及本文的norflash移植详细阐述。1、norflash移植/*----------------------------------------------------------------------- * FLASH and environment organization */#define CONFIG_AMD_LV800 1 /* EN29LV160AB与AM... 阅读全文
posted @ 2013-11-29 20:57 amanlikethis 阅读(928) 评论(0) 推荐(0) 编辑
摘要: 一、uboot的内存分布图山人自己画的图华清远见的图二、如何修改编译地址 board/smdk2410/config.mk中定义有TEXT_BASETEXT_BASE = 0x33F80000 上图中所有的地址都是以它为基准的,其他的地址都是加上偏移量所作的。 阅读全文
posted @ 2013-11-29 18:07 amanlikethis 阅读(1732) 评论(0) 推荐(0) 编辑
摘要: 一、环境变量概述1、环境变量的概念 可以理解为用户对软件的全局配置信息,这部分信息应该可以从永久性存储器上读取,能被查询,能被修改。 启动过程中,应该首先把环境变量读取到合适的内存区域,然后利用环境变量初始化硬件、启动操作系统等等。2、启动过程中环境变量初始化过程涉及的问题 这里涉及到两个问题: 环境变量在哪个地方存着(从哪个地方取) 将环境变量存储到哪里(放到哪)(1)环境变量位于存储器(norflash、nandflash ) “CFG_ENV_IS_IN_XXX”(CFG_ENV_IS_IN_FLASH、CFG_ENV_IS_IN_NAND等等)定义了则这种情况有效,以在fl... 阅读全文
posted @ 2013-11-29 15:36 amanlikethis 阅读(6447) 评论(0) 推荐(0) 编辑
摘要: 一、整体流程 start_amboot()函数是执行完start.S汇编文件后第一个C语言函数,完成的功能自然还是初始化的工作 。1、全局变量指针r8设定,以及全局变量区清零2、执行一些类初始化函数,详细见init_sequence所对应的函数3、初始化norflash4、初始化显示器5、初始化堆区6、初始化nandflash7、环境变量重定位,详见uboot环境变量(env)初始化8、网络设置9、设备初始化,详见uboot的devices_init函数分析10、函数跳转表初始化,详见uboot的jumptable_init函数分析11、控制台初始化12、中断使能最终:进入main_loop二 阅读全文
posted @ 2013-11-29 15:16 amanlikethis 阅读(837) 评论(0) 推荐(0) 编辑
摘要: 一、global_data(include/asm-arm/global_data.h)typedef struct global_data { bd_t *bd; unsigned long flags; unsigned long baudrate; unsigned long have_console; /* serial_init() was called */ unsigned long reloc_off; /* Relocation Offset */ unsigned long ... 阅读全文
posted @ 2013-11-29 14:04 amanlikethis 阅读(1456) 评论(0) 推荐(0) 编辑
摘要: 一、init_sequence内容init_fnc_t *init_sequence[] = { cpu_init, /* basic cpu dependent setup */ board_init, /* basic board dependent setup */ interrupt_init, /* set up exceptions */ env_init, /* initialize environment */ init_baudrate, /* initialze baudra... 阅读全文
posted @ 2013-11-29 13:57 amanlikethis 阅读(1319) 评论(0) 推荐(0) 编辑
摘要: 一、概述(ENV_IS_EMBEDDED的目的)经典资料认识 ENV_IS_EMBEDDED只有在CFG_ENV_IS_IN_FLASH或者CFG_ENV_IS_IN_NAND定义了才有效。也就是说,这种功能只有在使用了norflash或者nandflash时才有效。本文是以使用norflash为例来说明的。 上边贴的几张图片讲的内容主要是这个意思:由于uboot.bin是100多kb,而环境变量要占一个扇区。norflash前100Kb中才有空间比较小的扇区,例如第二个扇区才8Kb,而后边的扇区比较大,都是64Kb。程序运行后,通常需要将环境变量拷贝到RAM中,这样访问速度才快,因此... 阅读全文
posted @ 2013-11-29 12:51 amanlikethis 阅读(1770) 评论(0) 推荐(1) 编辑
摘要: 1、在所有文件中查找字符串 方法①:菜单栏选择“search project” 方法②:在随便一个工程文件中把所要查找的字符串输入到空白的地方,然后点连接 2、打开正在阅览文件的位置 step ①:Options -> Custom Commands -> Add step ②:为此命令,添加快捷键 阅读全文
posted @ 2013-11-29 09:49 amanlikethis 阅读(833) 评论(0) 推荐(0) 编辑