On Fri, May 29, 2009 at 12:49:52PM +0800, lanmanck wrote: > hi: > i am going to port uboot1.1.6 nand flash driver to my arm926ejs board.use > /drivers/nand/nand.c. not nand_legacy.c . > out cpu chip has a nand flash controller,the program flow is as below:
As Wolfgang pointed out, that is very old. Please use current code. > 1、set address to controller's register > 2、set command to controller's register > 3、write controller's special register,so that the 2 steps above can execute. > 4、wait for the steps above to be completed ,through another register. > 5、now program the data. > the problem is; > i don't konw how to set struct nand_chip's func point because of the nand > controller: > xxx_hwcontrol(): the ale,cle cannot be controlled by program. > IO_ADDRW:what's it? > now i think i just need to write the fllowing functions: > wirtebyte,readbyte,writebuf,readbuf, That will not be sufficient. If your NAND controller does not fit in the cmd_ctrl model, then you'll have to override higher level functions such as cmdfunc -- see drivers/mtd/nand/fsl_elbc.c for an example. Alternatively, you may want to override the higher level functions that call cmdfunc. -Scott _______________________________________________ U-Boot mailing list [email protected] http://lists.denx.de/mailman/listinfo/u-boot

