2752|0

66

帖子

0

TA的资源

一粒金砂(初级)

楼主
 

jedec_probe探测SST39vf3201的疑问 [复制链接]

CPU:NXP LPC2478
Flash:NOR SST39VF3201:4MB,4k扇区,地址:0x81000000

想在4M的NOR flash上作jffs2根文件系统,自己写了MTD驱动:
#define FLASH_BASE_ADDR                0x81000000
#define FLASH_SIZE                0x400000
#define BUS_WIDTH                2
static struct map_info lpc24xx_map[1] = {
{
        .name =                "lpc24xx",
        .bankwidth =        BUS_WIDTH,//16bit
        .size =                FLASH_SIZE,//4MB
        .phys =                FLASH_BASE_ADDR,
}
};
//分区信息
static struct mtd_partition lpc24xx_partitions[] = {
        {
                .name = "Kernel",
                .size = 0x002A0000,// 2.5M
                .offset = 0,
                .mask_flags = MTD_WRITEABLE,
        },{
                .name = "jffs2",
                .size = MTDPART_SIZ_FULL,
                .offset = MTDPART_OFS_APPEND,               
        }       
};

将SST39vf3201加入table
#define SST39VF3201        0x235b// add sst39vf3201加入ID信息

{
               .mfr_id         = MANUFACTURER_SST,     /* should be CFI */
               .dev_id         = SST39VF3201,
               .name           = "SST 39VF3201",
               .uaddr          = {
                       //[0] = MTD_UADDR_0x5555_0x2AAA,  /* x8 */
                       [1] = MTD_UADDR_0x5555_0x2AAA   /* x16 */
               },
               .DevSize        = SIZE_4MiB,
               .CmdSet         = P_ID_AMD_STD,
               .NumEraseRegions= 2,
               .regions        = {
                       ERASEINFO(0x1000,1024),
                       ERASEINFO(0x1000,1024)
               }

        },
在使用mymtd = do_map_probe("jedec_probe", &lpc24xx_map);探测flash时,

终端打印以下信息:
Search for id:(58 9f) interleave(2) type(1) //这个interleave应该是1吧,不知道在哪改jedec_match(): ID is not 8bit
reset unlock called 555 aaa
Search for id:(58 9f) interleave(2) type(1)
jedec_match(): ID is not 8bit
reset unlock called 5555 2aaa
Search for id:(bf 5b) interleave(2) type(1)
jedec_match(): ID is not 8bit
MTD jedec_match(): Check fit 0x00000000 + 0x00100000 = 0x00100000
MTD jedec_match(): check unlock addrs 0x5555 0x2aaa
MTD jedec_match(): check ID's disappear when not in ID mode
reset unlock called 5555 2aaa
MTD jedec_match(): return to ID mode
MTD jedec_probe_chip(): matched device 0xbf,0x5b unlock_addrs: 0x5555 0x2aaa
Found: SST 49LF080A //探测出差,应该是39VF3201
reset unlock called 5555 2aaa
lpc24xx: Found 2 x8 devices at 0x0 in 16-bit bank//应该是1片16位 ,怎么搞成2x8 了啊
Chow->devtpt222=1
Chow->bankwith=2
reset unlock called 5555 2aaa
reset unlock called 5555 2aaa
number of JEDEC chips: 1
cfi_cmdset_0002: Disabling erase-suspend-program due to code brokenness.
Chow->ret=-1580371808
Chow->owner: THIS_MODULE
Chow->CONFIG_MTD_PARTITIONS
cmdlinepart partition parsing not available
Chow->mtd_parts[0]: offset=0 size=0x2a0000
Using builtin partition table
Creating 2 MTD partitions on "lpc24xx":
0x00000000-0x002a0000 : "Kernel"// 这里不太明白,应该是0x81000000还是0x00
mtd: partition "Kernel" extends beyond the end of device "lpc24xx" -- size truncated to 0x200000
mtd: Giving out device 0 to Kernel
0x002a0000-0x00200000 : "jffs2"//这里为什么不是剩下所有,应该到0x00400000
mtd: partition "jffs2" is out of reach -- disabled
mtd: Giving out device 1 to jffs2
block2mtd: version $Revision: 1.30 $
TCP cubic registered
NET: Registered protocol family 1
RPC: Registered udp transport module.
RPC: Registered tcp transport module.
MTDSB: dev_name "/dev/root"
MTDSB: path_lookup() returned 0, inode a1800284
List of all partitions:
1f00       2048 mtdblock0 (driver?)
No filesystem could mount root, tried:  jffs2
Kernel panic - not syncing: VFS: Unable to mount root fs on unknown-block(0,0)

一片16位flash怎么探测出2x8的出来了啊,是哪里初始化有问题??

thanks a lot
点赞 关注

回复
举报
您需要登录后才可以回帖 登录 | 注册

随便看看
查找数据手册?

EEWorld Datasheet 技术支持

相关文章 更多>>
关闭
站长推荐上一条 1/10 下一条

 
EEWorld订阅号

 
EEWorld服务号

 
汽车开发圈

About Us 关于我们 客户服务 联系方式 器件索引 网站地图 最新更新 手机版

站点相关: 国产芯 安防电子 汽车电子 手机便携 工业控制 家用电子 医疗电子 测试测量 网络通信 物联网

北京市海淀区中关村大街18号B座15层1530室 电话:(010)82350740 邮编:100190

电子工程世界版权所有 京B2-20211791 京ICP备10001474号-1 电信业务审批[2006]字第258号函 京公网安备 11010802033920号 Copyright © 2005-2024 EEWORLD.com.cn, Inc. All rights reserved
快速回复 返回顶部 返回列表