[U-Boot] hi,guys,about the nand flash driver

Scott Wood scottwood at freescale.com
Fri May 29 21:30:27 CEST 2009


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


More information about the U-Boot mailing list