summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* NAND: Do not write or read a whole block if it is larger than the environmentGuennadi Liakhovetski2008-08-12-9/+9
| | | | | | | | Environment can be smaller than NAND block size, do not need to read a whole block and minimum for writing is one page. Also remove an unused variable. Signed-off-by: Guennadi Liakhovetski <lg@denx.de> Signed-off-by: Scott Wood <scottwood@freescale.com>
* NAND: chip->state does not always get set.Marcel Ziswiler2008-08-12-0/+1
| | | | | | | Fixes an issue with chip->state not always being set causing troubles. Signed-off-by: Marcel Ziswiler <marcel@ziswiler.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* NAND: Scan bad blocks lazily.Ilya Yanok2008-08-12-3/+9
| | | | | | | | | | Rather than scanning on boot, scan upon the first attempt to check the badness of a block. This speeds up boot when not using NAND, and reduces the likelihood of needing to reflash via JTAG if NAND becomes nonfunctional. Signed-off-by: Ilya Yanok <yanok@emcraft.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* NAND read/write fixScott Wood2008-08-12-611/+194
| | | | | | | | Implement block-skipping read/write, based on a patch from Morten Ebbell Hestens <morten.hestnes@tandberg.com>. Signed-off-by: Morten Ebbell Hestnes <morten.hestnes@tandberg.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* NAND: Always skip blocks on read/write/boot.Scott Wood2008-08-12-38/+26
| | | | | | | Use of the non-skipping versions was almost always (if not always) an error, and no valid use case has been identified. Signed-off-by: Scott Wood <scottwood@freescale.com>
* nand: fsl_upm: convert to updated MTD NAND infrastructureAnton Vorontsov2008-08-12-40/+31
| | | | | Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* fsl_elbc_nand: Hard-code the FBAR/FPAR split.Scott Wood2008-08-12-3/+2
| | | | | | | | The hardware has separate registers for block and page-within-block, but the division between the two has no apparent relation to the actual erase block size of the NAND chip. Signed-off-by: Scott Wood <scottwood@freescale.com>
* fsl_elbc_nand: workaround for hangs during nand writeAnton Vorontsov2008-08-12-1/+10
| | | | | | | | Using current driver elbc sometimes hangs during nand write. Reading back last byte helps though (thanks to Scott Wood for the idea). Signed-off-by: Anton Vorontsov <avorontsov@ru.mvista.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* Freescale eLBC FCM NAND driverScott Wood2008-08-12-0/+760
| | | | | | | | This is a driver for the Flash Control Machine of the enhanched Local Bus Controller found on some Freescale chips (such as the mpc8313 and the mpc8379). Signed-off-by: Scott Wood <scottwood@freescale.com>
* Don't panic if a controller driver does ecc its own way.Scott Wood2008-08-12-2/+6
| | | | | | | | | | | | Some hardware, such as the enhanced local bus controller used on some mpc83xx chips, does ecc transparently when reading and writing data, rather than providing a generic calculate/correct mechanism that can be exported to the nand subsystem. The subsystem should not BUG() when calculate, correct, or hwctl are missing, if the methods that call them have been overridden. Signed-off-by: Scott Wood <scottwood@freescale.com>
* NAND: Make NAND driver less verbose per defaultStefan Roese2008-08-12-6/+7
| | | | | | | This patch turns off printing of bad blocks per default upon bootup. This can always be shown via the "nand bad" command later. Signed-off-by: Stefan Roese <sr@denx.de>
* NAND: Davinci driver updatesSergey Kubushyn2008-08-12-5/+14
| | | | | | | | | Here comes a trivial patch to cpu/arm926ejs/davinci/nand.c. Unfortunately I don't have hardware handy so I can not test it at the moment but changes are rather trivial so it should work. It would be nice if somebody with a hardware checked it anyways. Signed-off-by: Sergey Kubushyn <ksi@koi8.net>
* NAND: Fix compilation warning and small coding style issueStefan Roese2008-08-12-3/+2
| | | | Signed-off-by: Stefan Roese <sr@denx.de>
* NAND: Update nand_spl driver to match updated nand subsystemStefan Roese2008-08-12-15/+19
| | | | | | | | | This patch changes the NAND booting driver nand_spl/nand_boot.c to match the new infrastructure from the updated NAND subsystem. This NAND subsystem was recently synced again with the Linux 2.6.22 MTD/NAND subsystem. Signed-off-by: Stefan Roese <sr@denx.de>
* NAND: Update 4xx NDFC driver to match updated nand subsystemStefan Roese2008-08-12-42/+41
| | | | | | | | | | | This patch changes the 4xx NAND driver ndfc.c to match the new infrastructure from the updated NAND subsystem. This NAND subsystem was recently synced again with the Linux 2.6.22 MTD/NAND subsystem. Tested successfully on AMCC Sequoia and Bamboo. Signed-off-by: Stefan Roese <sr@denx.de>
* NAND: Change nand_wait_ready() to not call nand_wait()Stefan Roese2008-08-12-1/+10
| | | | | | | | This patch changes nand_wait_ready() to not just call nand_wait(), since this will send a new command to the NAND chip. We just want to wait for the chip to become ready here. Signed-off-by: Stefan Roese <sr@denx.de>
* make nand dump and nand dump.oob workWilliam Juul2008-08-12-19/+27
| | | | | Signed-off-by: William Juul <william.juul@tandberg.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* moving files from yaffs2/direct/ to yaffs2/ and deleting all symlinksWilliam Juul2008-08-12-36/+4
| | | | Signed-off-by: William Juul <william.juul@tandberg.com>
* Clean out unneeded filesWilliam Juul2008-08-12-10446/+0
| | | | Signed-off-by: William Juul <william.juul@tandberg.com>
* Create symlinks from yaffs2/direct to yaffs2William Juul2008-08-12-0/+26
| | | | Signed-off-by: William Juul <william.juul@tandberg.com>
* Incorporate yaffs2 into U-bootWilliam Juul2008-08-12-89/+666
| | | | | | | To use YAFFS2 define CONFIG_YAFFS2 Signed-off-by: William Juul <william.juul@tandberg.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* YAFFS2 importWilliam Juul2008-08-12-0/+24326
| | | | | | | | | | | | | Direct import of yaffs as a tarball as of 20071113 from their public CVS-web at http://www.aleph1.co.uk/cgi-bin/viewcvs.cgi/yaffs2/ The code can also be imported on the command line with: export CVSROOT=:pserver:anonymous@cvs.aleph1.co.uk:/home/aleph1/cvs cvs logon (Hit return when asked for a password) cvs checkout yaffs2 Signed-off-by: William Juul <william.juul@tandberg.com> Signed-off-by: Stig Olsen <stig.olsen@tandberg.com>
* Whitespace cleanup and marking broken code.William Juul2008-08-12-44/+57
| | | | | | | | Changes requested by maintainer Stefan Roese after posting patch to U-boot mailing list. Signed-off-by: William Juul <william.juul@tandberg.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* Fixing coding style issuesWilliam Juul2008-08-12-99/+106
| | | | | | | | | - Fixing leading white spaces - Fixing indentation where 4 spaces are used instead of tab - Removing C++ comments (//), wherever I introduced them Signed-off-by: William Juul <william.juul@tandberg.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* Remove white space at end.William Juul2008-08-12-18/+18
| | | | | Signed-off-by: William Juul <william.juul@tandberg.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* Update MTD to that of Linux 2.6.22.1William Juul2008-08-12-3243/+4636
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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. 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. 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@tandberg.com> Signed-off-by: Stig Olsen <stig.olsen@tandberg.com> Signed-off-by: Scott Wood <scottwood@freescale.com>
* Coding style cleanup, update CHANGELOG, prepare releaseWolfgang Denk2008-08-12-19/+603
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* MVBC_P: fix compile problemWolfgang Denk2008-08-12-2/+2
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* MPC8272ADS: fix build error: 'bd_t' has no member named 'pci_clk'Wolfgang Denk2008-08-12-1/+1
| | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* Merge branch 'master' of /home/wd/git/u-boot/custodiansWolfgang Denk2008-08-12-29/+44
|\
| * Merge branch 'master' of git://www.denx.de/git/u-boot-armWolfgang Denk2008-08-12-29/+44
| |\
| | * i.MX31: Fix mx31_gpio_mux() function and MUX_-macros.Magnus Lilja2008-08-11-25/+40
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Correct the mx31_gpio_mux() function to allow changing all i.MX31 IOMUX contacts instead of only the first 256 ones as is the case prior to this patch. Add missing MUX_* macros and update board files to use the new macros. Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
| | * i.MX31: Fix IOMUX related typosMagnus Lilja2008-08-11-6/+6
| | | | | | | | | | | | | | | | | | Correct the names of some IOMUX macros. Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
* | | ads5121: fix compiler warnings (unused variables)Wolfgang Denk2008-08-12-3/+1
|/ / | | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
* | Merge branch 'master' of git://git.denx.de/u-boot-nand-flashWolfgang Denk2008-08-12-4/+2
|\ \
| * | OneNAND: Remove unused parameters to onenand_verify_pageSteve Sakoman2008-08-11-4/+2
| | | | | | | | | | | | | | | | | | | | | The block and page parameters of onenand_verify_page() are not used. This causes a compiler error when CONFIG_MTD_ONENAND_VERIFY_WRITE is enabled. Signed-off-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Dirk Behme <dirk.behme@gmail.com>
* | | 85xx: Rename CONFIG_NR_CPUS to CONFIG_NUM_CPUSKumar Gala2008-08-12-5/+5
| | | | | | | | | | | | | | | | | | | | | Use CONFIG_NUM_CPUS to match existing define used by 86xx. Signed-off-by: Kumar Gala <galak@kernel.crashing.org> Acked-by: Jon Loeliger <jdl@freescale.com>
* | | Fix fallout from autostart revertKumar Gala2008-08-12-73/+13
| | | | | | | | | | | | | | | | | | | | | | | | The autostart revert caused a bit of duplicated code as well as code that was using images->autostart that needs to get removed so we can build again. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | | Fix compile error related to r8a66597-hcd & usbKumar Gala2008-08-12-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | When building the 8544DS board we get this error: In file included from r8a66597-hcd.c:22: u-boot/include/usb.h:190:2: error: #error USB Lowlevel not defined make[1]: *** [r8a66597-hcd.o] Error 1 The cleanest fix is to only build r8a66597-hcd.c if CONFIG_USB_R8A66597_HCD is set. Signed-off-by: Kumar Gala <galak@kernel.crashing.org>
* | | POWERPC 86xx: Move BAT setup code to CBecky Bruce2008-08-11-119/+25
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This is needed because we will be possibly be locating devices at physical addresses above 32bits, and the asm preprocessing does not appear to deal with ULL constants properly. We now call write_bat in lib_ppc/bat_rw.c. Signed-off-by: Becky Bruce <becky.bruce@freescale.com> Acked-by: Jon Loeliger <jdl@freescale.com>
* | | POWERPC: Add synchronization to write_bat in lib_ppc/bat_rw.cBecky Bruce2008-08-11-0/+6
| | | | | | | | | | | | | | | | | | | | | Perform sync/isync as required by the architecture. Signed-off-by: Becky Bruce <becky.bruce@freescale.com> Acked-by: Jon Loeliger <jdl@freescale.com>
* | | POWERPC: 86xx - add missing CONFIG_HIGH_BATS to sbc8641d configBecky Bruce2008-08-11-0/+2
|/ / | | | | | | | | Signed-off-by: Becky Bruce <becky.bruce@freescale.com> Acked-by: Jon Loeliger <jdl@freescale.com>
* | Merge branch 'master' of /home/stefan/git/u-boot/u-bootStefan Roese2008-08-11-581/+2702
|\ \
| * | video: fix bug in cfb_console codeAnatolij Gustschin2008-08-11-23/+36
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | FILL_15BIT_555RGB macro extension for pixel swapping by commit bed53753dd1d7e6bcbea4339be0fb7760214cc35 introduced a bug in cfb_console: Bitmaps with odd-numbered width won't be rendered correctly and even U-Boot crashes are observed on some platforms while repeated rendering of such bitmaps with "bmp display". Also if a bitmap is rendered to an odd-numbered x starting position, the same problem occurs. This patch is an attempt to fix it. Signed-off-by: Anatolij Gustschin <agust@denx.de>
| * | video: fix bug in logo_plotAnatolij Gustschin2008-08-11-1/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | If logo_plot() should ever be called with x starting position other than zero and for pixel depths greater than 8bpp, logo colors distortion will be observed. This patch fixes the issue. Signed-off-by: Anatolij Gustschin <agust@denx.de>
| * | MAINTAINERS: sort entriesWolfgang Denk2008-08-11-27/+27
| | | | | | | | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de>
| * | Add mpc7448hpc2 maintainer informationRoy Zang2008-08-11-0/+4
| | | | | | | | | | | | Signed-off-by: Roy Zang <tie-fei.zang@freescale.com>
| * | common/cmd_load.c - Minor code & Coding Style cleanupGururaja Hebbar K R2008-08-11-7/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | - os_data_header Variable is a carry over feature & unused. So removed all instance of this variable - Minor Code Style Update Signed-off-by: Gururaja Hebbar <gururajakr@sanyo.co.in> Acked-by: Jean-Christophe PLAGNIOL-VILLARD <plagnioj@jcrosoft.com>
| * | Update the U-Boot wiki URL.Magnus Lilja2008-08-11-2/+2
| | | | | | | | | | | | Signed-off-by: Magnus Lilja <lilja.magnus@gmail.com>
| * | OneNAND: Remove base address offset usagedirk.behme@googlemail.com2008-08-10-9/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | While locally preparing some U-Boot patches for ARM based OMAP3 boards, some using OneNAND and some using NAND, we found some differences in OneNAND and NAND command address handling. As this might confuse users (it already confused us), we like to align OneNAND and NAND address handling. The issue is that cmd_onenand.c subtracts the onenand base address from the addresses you type into the u-boot command line so, unlike nand, you can't use addresses relative to the start of the onenand part e.g. this won't work: onenand read 82000000 280000 400000 you have to use: onenand read 82000000 20280000 400000 Looking at recent git, the only board currently using OneNAND is Apollon, and for this the OneNAND base address is 0 (apollon.h) #define CFG_ONENAND_BASE 0x00000000 so patch below won't break any existing boards and will align OneNAND and NAND handling on boards where OneNAND base address is != 0. Signed-off-by: Steve Sakoman <sakoman@gmail.com> Signed-off-by: Manikandan Pillai <mani.pillai@ti.com> Signed-off-by: Dirk Behme <dirk.behme@gmail.com>