myesis 发表于 2009-11-15 19:03:47

关于io_read_byte

io.c中的io_read_byte函数的源码:
                if (dev->size == 0) {

                        if (dev->read_byte (dev, addr, (u8 *) & data) !=
                          ADDR_NOHIT)
                                return data & 0xff;
                }
为什么不看地址空间,直接读了?连是不是这个dev都不知道,望斑竹来解惑

rhymer 发表于 2009-11-19 15:41:22

同问。
还有NAND Flash中的update()好像没起作用,只是三个局部变量的赋值。
另一个问题就是
for (i=start;i<dev->devicesize;i++)
   write(nf->fdump,&flag,1);
这句起了什么作用呢?
谢谢斑竹帮忙解答,也希望能和楼上兄弟多多交流。

ksh 发表于 2009-11-19 16:46:55

回复 1# myesis 的帖子

这个代码我也不是很清楚,应该是比较老的代码。也许是没有用到的代码,还没有清理。

ksh 发表于 2009-11-20 11:06:42

回复 2# rhymer 的帖子

可以发送邮件直接问nandflash实现的作者,并抄送邮件列表。我当时只是合并了这个patch,并做了测试。没有仔细的看具体的实现。在邮件列表的原帖如下:

################################

patch for nandflash simulation
gbf0871 gbf0871 at 126.com
Mon Sep 17 01:47:29 CST 2007

    * Previous message: Re: Hello
    * Next message: patch for nandflash simulation
    * Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]

加入对nandflash的模拟,目前只实现了smallblock类型的flash和s3c2410的
nandflash控制器。
另外修改了cs8900的部分代码,使u-boot中的tftp可用。
test.tar.bz2是测试,用法如下
./skyeye   //启动到u-boot
# nand read 0x30000000 0x30000 0x110800//从nand中读去linux
# bootm 0x30000000                     //引导 linux

在u-boot下,可用 nand write.yaffs1 命令些入yaffs镜像(已写入)

myesis 发表于 2009-11-20 12:18:46

回复 2# rhymer 的帖子

这个只是单独的生成一个nand.dump文件,NAND默认是全1的,所以是0xff
页: [1]
查看完整版本: 关于io_read_byte