[U-Boot-Users] [PATCH 0/9] NAND update
William Juul
william at juul.no
Mon Nov 12 14:01:33 CET 2007
Update NAND to use MTD from Linux 2.6.22.1
A lot changed in the Linux MTD code, since it was last ported from
Linux to U-Boot. This patch takes U-Boot NAND support to the level
of Linux 2.6.22.1 and will enable support for very large NAND devices
(4KB pages) and ease the compatibility between U-Boot and Linux
filesystems and drivers.
This patch is tested on two custom boards with PPC and ARM
processors running YAFFS in U-Boot and Linux using gcc-4.1.2
cross compilers. We intend to submitt a YAFFS patch after this
patch has been submitted/accepted.
MAKEALL ppc/arm has some issues:
* DOC/OneNand/nand_spl is not building (I have not tried porting
these parts, and since I do not have any HW and I am not familiar
with this code/HW I think its best left to someone else.)
Except for the issues mentioned above, I have ported all drivers
necessary to run MAKEALL ppc/arm without errors and warnings. Many
drivers were trivial to port, but some were not so trivial. The
following drivers must be examined carefully and maybe rewritten to
some degree:
cpu/ppc4xx/ndfc.c
cpu/arm926ejs/davinci/nand.c
board/delta/nand.c
board/zylonite/nand.c
Signed-off-by: William Juul <william.juul at datarespons.no>
Signed-off-by: Stig Olsen <stig.olsen at tandberg.com>
----
We have set up a git repository were you can pull the patch:
http://git.tandberg.com/tandberg/u-boot.git
Since my last email to the list I have cleaned up some coding style issues
as requested by Stefan Roese.
The master branch is tracking the official u-boot.git master branch.
The branch mtd-update-1.3.0-rc3 is based on tag v1.3.0-rc3
The branch mtd-update will (to some degree) continue to track u-boot updates.
The file drivers/nand/nand_base.c contains the struct nand_oob_128 which
is not (yet) part of Linux mtd. I will try to figure out if this implementation
is valid by asking on the linux-mtd mailing list.
Note that the following patch-series is broken unless it is seen as one single
patch. It is broken up to multiple emails to fit the size limit. This patch
series is based on a diff against v1.3.0-rc3.
Best regards
William Juul
-------------------------------------------------
William Juul, Senior Development Engineer
Data Respons Norge AS
Sandviksveien 26
P.O. Box 489
NO-1323 Høvik, Norway
www.datarespons.no
-------------------------------------------------
board/bf537-stamp/nand.c | 43 +-
board/dave/PPChameleonEVB/nand.c | 49 +-
board/delta/nand.c | 41 +-
board/esd/common/esd405ep_nand.c | 42 +-
board/freescale/m5329evb/nand.c | 42 +-
board/nc650/nand.c | 78 +-
board/netstar/nand.c | 20 +-
board/prodrive/alpr/nand.c | 57 +-
board/prodrive/pdnb3/nand.c | 53 +-
board/sc3/sc3nand.c | 44 +-
board/tqm8272/tqm8272.c | 34 +-
board/zylonite/nand.c | 39 +-
common/cmd_doc.c | 5 +-
common/cmd_nand.c | 230 ++--
cpu/arm926ejs/davinci/nand.c | 41 +-
cpu/ppc4xx/ndfc.c | 57 +-
drivers/nand/diskonchip.c | 559 ++++---
drivers/nand/nand_base.c | 3445 ++++++++++++++++++++------------------
drivers/nand/nand_bbt.c | 552 ++++--
drivers/nand/nand_ecc.c | 21 +-
drivers/nand/nand_ids.c | 169 ++-
drivers/nand/nand_util.c | 357 +++--
include/common.h | 2 +
include/linux/err.h | 45 +
include/linux/mtd/blktrans.h | 81 +
include/linux/mtd/compat.h | 7 +-
include/linux/mtd/doc2000.h | 217 ++--
include/linux/mtd/inftl-user.h | 91 +
include/linux/mtd/jffs2-user.h | 35 +
include/linux/mtd/mtd-abi.h | 137 ++-
include/linux/mtd/mtd.h | 154 ++-
include/linux/mtd/nand.h | 447 ++++--
include/linux/mtd/nftl-user.h | 76 +
include/linux/mtd/nftl.h | 93 +-
include/linux/mtd/ubi-header.h | 360 ++++
include/linux/mtd/ubi-user.h | 161 ++
include/nand.h | 3 +-
37 files changed, 4665 insertions(+), 3222 deletions(-)
More information about the U-Boot
mailing list