From: Wolfgang Denk Date: Mon, 6 Mar 2006 10:25:22 +0000 (+0100) Subject: Merge the new NAND code (testing-NAND brach); see doc/README.nand X-Git-Url: http://git.lede-project.org./?a=commitdiff_plain;h=4e3ccd26925e5ada78dd89779838f052dffe3e67;p=project%2Fbcm63xx%2Fu-boot.git Merge the new NAND code (testing-NAND brach); see doc/README.nand Rewrite of NAND code based on what is in 2.6.12 Linux kernel Patch by Ladislav Michl, 29 Jun 2005 [Merge with /home/tur/nand/u-boot] --- 4e3ccd26925e5ada78dd89779838f052dffe3e67 diff --cc CHANGELOG index 4cc66295d8,5d32bcec48..37d4158063 --- a/CHANGELOG +++ b/CHANGELOG @@@ -2,86 -2,13 +2,90 @@@ Changes since U-Boot 1.1.4: ====================================================================== -* Merge the new NAND code (testing-NAND brach) - ++* Merge the new NAND code (testing-NAND brach); see doc/README.nand + Rewrite of NAND code based on what is in 2.6.12 Linux kernel + Patch by Ladislav Michl, 29 Jun 2005 + +* Add lowboot target to mcc200 board + Patch by Stefan Roese, 4 Mar 2006 + +* Fix problem with flash_get_size() from CFI driver update + Patch by Stefan Roese, 1 Mar 2006 + +* Make CFG_NO_FLASH work on ARM systems + Patch by Markus Klotzbuecher, 27 Feb 2006 + +* Update mcc200 config: Disable PCI and DoC, use 133 MHz IPB clock, + use hush shell. + +* Convert mcc200 to use common CFI flash driver + Patch by Stefan Roese, 28 Feb 2006 + +* Add env-variable "unlock" to handle initial state of sectors + (locked/unlocked). + + Only the U-Boot image and it's environment is protected, + all other sectors are unprotected (unlocked) if flash + hardware protection is used (CFG_FLASH_PROTECTION) and + the environment variable "unlock" is set to "yes". + + Patch by Stefan Roese, 28 Feb 2006 + +* Update drivers/cfi_flash.c: + - find_sector() called in both versions of flash_write_cfiword() + Patch by Peter Pearse, 27th Feb 2006 + +* CFI support for a x8/x16 AMD/Spansion flash configured in x8 mode + Patch by Jose Maria Lopez, 16 Jan 2006 + +* Add support for AMD/Spansion Flashes in flash_write_cfibuffer + Patch by Alex Bastos and Thomas Schaefer, 2005-08-29 + +* Changes/fixes for drivers/cfi_flash.c: + We *should* check if there are any error bits if the previous call + returned ERR_OK (Otherwise we will have output an error message in + flash_status_check() already.) The original code would only check for + error bits if flash_status_check() returns ERR_TIMEOUT. + Patch by Marcus Hall, 23 Aug 2005 + +* Changes/fixes for drivers/cfi_flash.c: + - Add CFG_FLASH_PROTECT_CLEAR on drivers/cfi_flash.c + - Prohibit buffer write when buffer_size is 1 on drivers/cfi_flash.c + Patch by Sangmoon Kim, 19 Aug 2005 + +* Fixes for drivers/cfi_flash.c: + - Fix wrong timeout value usage in flash_status_check() + - Round write_tout up when converting to msec in flash_get_size() + - Remove clearing flash status at the end of flash_write_cfibuffer() + which sets Intel 28F640J3 flash back to command mode on CSB472 + Patch by Tolunay Orkun, 02 July 2005 + +* Add basic support for the SMMACO4 Board from PanDaCom. + Patch by Heiko Schocher, 20 Feb 2006 + +* Add GIT version information (commid ID) to untagged U-Boot versions + + As done in the linux kernel, the U-Boot version (U_BOOT_VERSION) + of all unreleased (untagged) U-Boot images will be automatically + extended upon compiletime with a part of the GIT commit ID and + possibly with "dirty" if uncommited changes are detected. + + Here an example for the resulting version: + "U-Boot 1.1.4-g3457ac18-dirty" + + The version is now maintained in the toplevel Makefile and the + version headers are autogenerated. + + Patch by Stefan Roese, 9 Feb 2006 + * Update default environment for INKA4x00 board. +* Convert CPCI750 to use common CFI flash driver + Patch by Reinhard Arlt, 8 Feb 2006 + +* Various changes to esd HH405 board specific files + Patch by Matthias Fuchs, 07 Feb 2006 + * Cleanup U-Boot boot messages on ARM. To match the U-Boot user interface on ARM platforms to the U-Boot diff --cc doc/README.nand index 0f2bdc5cc4,0f2bdc5cc4..cd7608cf7f --- a/doc/README.nand +++ b/doc/README.nand @@@ -1,5 -1,5 +1,9 @@@ NAND FLASH commands and notes ++ ++See NOTE below!!! ++ ++ # (C) Copyright 2003 # Dave Ellis, SIXNET, dge@sixnetio.com # @@@ -173,3 -173,3 +177,34 @@@ More Definitions #define NAND_ChipID_UNKNOWN 0x00 #define NAND_MAX_FLOORS 1 #define NAND_MAX_CHIPS 1 ++ ++ ++ ++NOTE: ++===== ++ ++We now use a complete rewrite of the NAND code based on what is in ++2.6.12 Linux kernel. ++ ++The old NAND handling code has been re-factored and is now confined ++to only board-specific files and - unfortunately - to the DoC code ++(see below). A new configuration variable has been introduced: ++CFG_NAND_LEGACY, which has to be defined in the board config file if ++that board uses legacy code. If CFG_NAND_LEGACY is defined, the board ++specific config.mk file should also have "BOARDLIBS = ++drivers/nand_legacy/libnand_legacy.a". For boards using the new NAND ++approach (PPChameleon and netstar at the moment) no variable is ++necessary, but the config.mk should have "BOARDLIBS = ++drivers/nand/libnand.a". ++ ++The necessary changes have been made to all affected boards, and no ++build breakage has been introduced, except for NETTA and NETTA_ISDN ++targets from MAKEALL. This is due to the fact that these two boards ++use JFFS, which has been adopted to use the new NAND, and at the same ++time use NAND in legacy mode. The breakage will disappear when the ++board-specific code is changed to the new NAND. ++ ++As mentioned above, the legacy code is still used by the DoC subsystem. ++The consequence of this is that the legacy NAND can't be removed from ++the tree until the DoC is ported to use the new NAND support (or boards ++with DoC will break).