u-boot2011.12在mini2440上的移植2
发布时间:2020-12-15 06:12:50 所属栏目:百科 来源:网络整理
导读:u-boot2011.12在mini2440上的移植2 ??????? u-boot2011.12在mini2440上的移植1中的错误,经查看源代码后发现时开始NOR Flash支持时引起的,考虑到不需要NOR Flash支持,故去掉NOR FLASH支持。 ??????? 1.? mini2440.h中,添加宏定义 ??????? #define CONFIG_
u-boot2011.12在mini2440上的移植2
??????? u-boot2011.12在mini2440上的移植1中的错误,经查看源代码后发现时开始NOR Flash支持时引起的,考虑到不需要NOR Flash支持,故去掉NOR FLASH支持。 ??????? 1.? mini2440.h中,添加宏定义 ??????? #define CONFIG_SYS_NO_FLASH ??????? 用于关闭NOR FLASH ??????? 将上次注释掉的#define CONFIG_CMD_NAND打开并在其后添加#define CONFIG_CMD_SAVEENV ??????? 修改Flash配置为 #if 0 #define CONFIG_SYS_FLASH_CFI #define CONFIG_FLASH_CFI_DRIVER #define CONFIG_FLASH_CFI_LEGACY #define CONFIG_SYS_FLASH_LEGACY_512Kx16 #define CONFIG_FLASH_SHOW_PROGRESS?? ?45 #define CONFIG_SYS_MAX_FLASH_BANKS?? ?1 #define CONFIG_SYS_FLASH_BANKS_LIST???? { CONFIG_SYS_FLASH_BASE } #define CONFIG_SYS_MAX_FLASH_SECT?? ?(19) #define CONFIG_ENV_ADDR?? ??? ??? ?(CONFIG_SYS_FLASH_BASE + 0x070000) #define CONFIG_ENV_IS_IN_FLASH #define CONFIG_ENV_SIZE?? ??? ??? ?0x10000 #else #define CONFIG_ENV_IS_IN_NAND? 1 ? #define CONFIG_ENV_OFFSET????? 0x30000 //将环境变量保存到nand中的0x30000位置 ? #define CONFIG_ENV_SIZE??????? 0x10000 /* Total Size of Environment Sector */ ? #endif 用于将ENV设置在NAND中 ??????? mini2440.c中,注释掉函数ulong board_flash_get_legacy(ulong base,int banknum,flash_info_t *info) 修改cmd_bootm.c文件a)把81和82行注释掉,如下: // abort NOR FLASH? |del by guoyirong 2011.06.25 b)把函数int do_imls (cmd_tbl_t *cmdtp,int flag,int argc,char * const argv[])整体注释掉,改为如下: int do_imls (cmd_tbl_t *cmdtp,char * const argv[]){return (0);} 添加drivers/mtd/nand/目录下新建s3c2440_nand.c文件实现对NAND FLASH的操作,参考http://blog.csdn.net/reille/article/details/6568761中2.5编译即可。 运行时可uboot可运行,但NAND仍有bug ???????(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |