二·配置NORFLASH
配置NORFLASH以後就可以通過JTAG下載到NOR運行
TQ2440開發板使用的NOR型號為EN29LV160AB,而配置文件include/configs/CM2440.h
中默認的是AM29LV400
現在開始修改
註釋掉原來的NOR宏定義165行左右
#if 0
#define CONFIG_AMD_LV800 1 /* uncomment this if you have a LV800 flash */
#endif
添加:
#define CONFIG_EN_LV160AB 1
#ifdef CONFIG_EN_LV160AB
#define PHYS_FLASH_SIZE 0x00200000 /* 2MB */
#define CONFIG_SYS_MAX_FLASH_SECT (19) /* max number of sectors on one chip */
#define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x1F0000) /* addr of environment */
#endif
在修改這裡時,自己按照老版本的UBOOT,參數Setting是按照CFG_打頭編譯時發現錯誤,才
看了下原來這個版本配置和參數都是CONFIG_打頭
注意:以下仅仅是修改了NorFlash的Size的定义,這個於LV800都是2M,驱动都是一样的。
我们可以定义NorFlash型号为EN29LV160AB,其他的不變。
board/samsung/CM2440/flash.c中第74行添加
/*************************WXZ******************************/
#elif defined(CONFIG_EN_LV160AB)
(AMD_MANUFACT & FLASH_VENDMASK) |
(AMD_ID_LV800B & FLASH_TYPEMASK);
/**************************WXZ******************************/
第150行修改
/****************************wxz*****************************/
case (AMD_ID_LV800B & FLASH_TYPEMASK):
printf ("1x EN29LV160AB (2Mbit)\n");
break;
/******************************wxz****************************/
再次編譯U-BOOT下載到NOR,串口打印信息如下:
U-Boot 2009.08-rc3 ( 5鏈?26 2011 - 19:57:22)
DRAM: 64 MB
Flash: 2 MB
*** Warning - bad CRC, using default environment
L~CM2440 #