- 4
- 0
- 约6.41千字
- 约 6页
- 2018-01-13 发布于河南
- 举报
s3c2410对SST39VF1601
s3c2410对SST39VF1601 在配置文件include/configs/.h里默认的信号是AM29LV400,而我的是SST39VF1601。所以要对其进行修改,修改如下(include/configs/.h):#define CONFIG_AMD_LV400 1 /* uncomment this if you have a LV400 flash */ #if 0 #define CONFIG_AMD_LV800 1 /* uncomment this if you have a LV800 flash */ #endif #define CFG_MAX_FLASH_BANKS 1 /* max number of memory banks */ #ifdef CONFIG_AMD_LV800 #define PHYS_FLASH_SIZE 0/* 1MB */ #define CFG_MAX_FLASH_SECT (19) /* max number of sectors on one chip */ #define CFG_ENV_ADDR (CFG_FLASH_BASE + 0x0F0000) /* addr of environment */ #endif #ifdef CONFIG_AMD_LV400 #define PHYS_FLASH_SIZE 0/* 512KB */ #define CFG_MAX_FLASH_SECT (11) /* max number of sectors on one chip */ #define CFG_ENV_ADDR (CFG_FLASH_BASE + 0x070000) /* addr of environment */ #endif添加: #define CONFIG_SST_39VF1601 1 #define CONFIG_SYS_MAX_FLASH_BANKS 1 /* max number of memory banks */ #define PHYS_FLASH_SIZE 0/* 2MB */ #define CONFIG_SYS_MAX_FLASH_SECT (512) /* max number of sectors on one chip */ #define CONFIG_ENV_ADDR (CONFIG_SYS_FLASH_BASE + 0x1F0000) /* addr of environment */ 此处是并将关于AM29LV400和AM29LV800的信息全部 另外,NOR FLASH的操作函数在board//flash.c中实现。它支持AM29LV400和AM29LV800本人直接修改这个文件。接下来我们修改board//flash.c:将:#define MAIN_SECT_SIZE 0x10000修改为:#define MAIN_SECT_SIZE 0x1000 (按sector操作)将:#define MEM_FLASH_ADDR1???? (*(volatile u16 *)(CFG_FLASH_BASE + (0 1)))#define MEM_FLASH_ADDR2???? (*(volatile u16 *)(CFG_FLASH_BASE + (0x000002AA 1)))修改为:#define MEM_FLASH_ADDR1???? (*(volatile u16 *)(CFG_FLASH_BASE + (0 1)))#define MEM_FLASH_ADDR2???? (*(volatile u16 *)(CFG_FLASH_BASE + (0x00002AAA 1)))这个参数参看SST39VF1601的手册可以得到。在flash_init函数里仿照:if defined(CONFIG_AMD_LV400)??????????? (AMD_MANUFACT FLASH_VENDMASK) |??????????? (AMD_ID_LV400B FLASH_TYPEMASK); 删除: #if defined(CONFIG_AMD_LV400) (AMD_MANUFACT FLASH_VENDMASK) | (AMD_ID_LV400B FLASH_TYPEMASK); #elif defined(CONFIG_AMD_LV800) (AMD_MANUFACT FLASH_VENDMASK) | (AMD_ID_LV800
有哪些信誉好的足球投注网站
文档评论(0)