summaryrefslogtreecommitdiff
path: root/drivers
Commit message (Collapse)AuthorAgeLines
* AVR32: Resource management rewriteHaavard Skinnemoen2007-04-14-22/+34
| | | | | | | | | | | | | Rewrite the resource management code (i.e. I/O memory, clock gating, gpio) so it doesn't depend on any global state. This is necessary because this code is heavily used before relocation to RAM, so we can't write to any global variables. As an added bonus, this makes u-boot's memory footprint a bit smaller, although some functionality has been left out; all clocks are enabled all the time, and there's no checking for gpio line conflicts. Signed-off-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
* mpc83xx: Fix empty i2c reads/writes in fsl_i2c.cJoakim Tjernlund2007-03-02-13/+14
| | | | | | | | | | | | | Fix empty i2c reads/writes, i2c_write(0x50, 0x00, 0, NULL, 0) which is used to se if an slave will ACK after receiving its address. Correct i2c probing to use this method as the old method could upset a slave as it wrote a data byte to it. Add a small delay in i2c_init() to let the controller shutdown any ongoing I2C activity. Signed-off-by: Joakim Tjernlund <Joakim.Tjernlund@transmode.se>
* mpc83xx: Fix alternating tx error / tx buffer not ready bug in QE UECEmilian Medve2007-03-02-1/+1
| | | | | | | | The problem is not gcc4 but the code itself. The BD_STATUS() macro can't be used for busy-waiting since it strips the 'volatile' property from the bd variable. gcc3 was working by pure luck. This is a follow on patch to "Fix the UEC driver bug of QE"
* mpc83xx: U-Boot support for Wind River SBC8349Paul Gortmaker2007-03-02-0/+89
| | | | | | | | | | | | | | | | | | | | | | | I've redone the SBC8349 support to match git-current, which incorporates all the MPC834x updates from Freescale since the 1.1.6 release, including the DDR changes. I've kept all the SBC8349 files as parallel as possible to the MPC8349EMDS ones for ease of maintenance and to allow for easy inspection of what was changed to support this board. Hence the SBC8349 U-Boot has FDT support and everything else that the MPC8349EMDS has. Fortunately the Freescale updates added support for boards using CS0, but I had to change spd_sdram.c to allow for board specific settings for the sdram_clk_cntl (it is/was hard coded to zero, and that remains the default if the board doesn't specify a value.) Hopefully this should be mergeable as-is and require no whitespace cleanups or similar, but if something doesn't measure up then let me know and I'll fix it. Thanks, Paul.
* mpc83xx: Add support for the MPC832XEMDS boardDave Liu2007-03-02-3/+10
| | | | | | This patch supports DUART, ETH3/4 and PCI etc. Signed-off-by: Dave Liu <daveliu@freescale.com>
* mpc83xx: Fix the UEC driver bug of QEDave Liu2007-03-02-8/+6
| | | | | | | | | | | | | | The patch prevents the GCC tool chain from striping useful code for optimization. It will make UEC ethernet driver workable, Otherwise the UEC will fail in tx when you are using gcc4.x. but the driver can work when using gcc3.4.3. CHANGELOG *Prevent the GCC from striping code for optimization, Otherwise the UEC will tx failed when you are using gcc4.x. Signed-off-by: Dave Liu <daveliu@freescale.com>
* Minor code cleanup.Wolfgang Denk2007-02-27-4/+4
|
* [PATCH] Change systemace driver to select 8 & 16bit modeStefan Roese2007-02-22-5/+2
| | | | | | | As suggested by Grant Likely this patch enables the Xilinx SystemACE driver to select 8 or 16bit mode upon startup. Signed-off-by: Stefan Roese <sr@denx.de>
* [PATCH v3] Add sync to ensure flash_write_cmd is fully finishedHaiying Wang2007-02-21-12/+4
| | | | | | | | | Some CPUs like PPC, BLACKFIN need sync() to ensure cfi flash write command is fully finished. The sync() is defined in each CPU's io.h file. For those CPUs which do not need sync for now, a dummy sync() is defined in their io.h as well. Signed-off-by: Haiying Wang <Haiying.Wang@freescale.com>
* [PATCH] Fix problem in systemace driver (ace_writew instead of ace_write)Stefan Roese2007-02-21-4/+4
| | | | Signed-off-by: Stefan Roese <sr@denx.de>
* [PATCH] Update SystemACE driver for 16bit accessStefan Roese2007-02-20-3/+11
| | | | | | | | This patch removes some problems when the Xilinx SystemACE driver is used with 16bit access on an big endian platform (like the AMCC Katmai). Signed-off-by: Stefan Roese <sr@denx.de>
* [PATCH 9_9] Use "void *" not "unsigned long *" for block dev read_write ↵Grant Likely2007-02-20-4/+3
| | | | | | | | | buffer pointers Block device read/write is anonymous data; there is no need to use a typed pointer. void * is fine. Also add a hook for block_read functions Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* [PATCH 7_9] Replace ace_readw_ace_writeb functions with macrosGrant Likely2007-02-20-26/+10
| | | | | | | Register read/write does not need to be wrapped in a full function. The patch replaces them with macros. Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* [PATCH 6_9] Move common_cmd_ace.c to drivers_systemace.cGrant Likely2007-02-20-1/+265
| | | | | | | | The code in this file is not a command; it is a device driver. Put it in the correct place. There are zero functional changes in this patch, it only moves the file. Signed-off-by: Grant Likely <grant.likely@secretlab.ca>
* [PATCH] CFI: define CFG_WRITE_SWAPPED_DATA for the CFI-Flash driverHeiko Schocher2007-01-19-16/+10
| | | | | | | if you must swap the bytes between reading/writing. (Needed for the SC3 board) Signed-off-by: Heiko Schocher <hs@denx.de>
* [PATCH] Fix: Compilerwarnings for SC3 board.Heiko Schocher2007-01-18-3/+3
| | | | | | | The EBC Configuration Register is now by CFG_EBC_CFG definable Added JFFS2 support for the SC3 board. Signed-off-by: Heiko Schocher <hs@denx.de>
* Merge with /home/hs/SC3/u-bootWolfgang Denk2007-01-15-2/+10
|\ | | | | | | Some code cleanup.
| * Added support for the SOLIDCARD III board from EurodesignHeiko Schocher2007-01-11-2/+10
| | | | | | | | Signed-off-by: Heiko Schocher <hs@denx.de>
* | [PATCH] nand: Fix problem with oobsize calculationStefan Roese2007-01-05-1/+1
|/ | | | | | | | | | | | | | | | | | Here the description from Brian Brelsford <Brian_Brelsford@dell.com>: The Hynix part returns a 0x1d in the 4th ID byte. The Samsung part returns a 0x15. In the code fragment below bits [1:0] determine the page size, it is ANDed via "(extid & 0x3)" then shifted out. The next field is also ANDed with 0x3. However this is a one bit field as defined in the Hynix and Samsung parts in the 4th ID byte that determins the oobsize, not a two bit field. It works on Samsung as bits[3:2] are 01. However for the Hynix there is a 11 in these two bits, so the oob size gets messed up. I checked the correct linux code and the suggested fix from Brian is also available in the linux nand mtd driver. Signed-off-by: Stefan Roese <sr@denx.de>
* Fix bug in adaption of Stefano Babic's CFI driver patch.Wolfgang Denk2006-12-27-15/+21
|
* Merge with /home/wd/git/u-boot/masterWolfgang Denk2006-12-24-1/+2
|\
| * Fix cfi failure with Spansion Flash (Spansion Flash Devices have a different ↵Stefano Babic2006-12-24-1/+2
| | | | | | | | offset to go into CFI mode)
* | Merge with /home/hs/TQ/u-boot-devWolfgang Denk2006-12-24-7/+10
|\ \ | |/ |/|
| * Added support for the TQM8272 board from TQHeiko Schocher2006-12-21-7/+12
| | | | | | | | Signed-off-by: Heiko Schocher <hs@denx.de>
* | Code cleanup.Wolfgang Denk2006-11-30-574/+580
| |
* | Merge with http://opensource.freescale.com/pub/scm/u-boot-83xx.gitWolfgang Denk2006-11-30-47/+4008
|\ \
| * | Make fsl-i2c not conflict with SOFT I2CJoakim Tjernlund2006-11-29-7/+10
| | | | | | | | | | | | Signed-off-by: Timur Tabi <timur@freescale.com>
| * | Fix I2C master address initialization.Joakim Tjernlund2006-11-29-1/+1
| | | | | | | | | | | | Signed-off-by: Timur Tabi <timur@freescale.com>
| * | Merge http://www.denx.de/git/u-bootKim Phillips2006-11-28-61/+163
| |\ \
| * | | Eliminate gcc 4 'used uninitialized' warnings in drivers/qe/uccf.cKim Phillips2006-11-28-3/+3
| | | | | | | | | | | | | | | | | | | | give initial values for reg_num, shift, p_cmxucr in ucc_set_clk_src since they are passed by reference to ucc_get_cmxucr_reg and assigned.
| * | | mpc83xx: Update 83xx to use fsl_i2c.cTimur Tabi2006-11-03-32/+81
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Update the 83xx tree to use I2C support in drivers/fsl_i2c.c. Delete cpu/mpc83xx/i2c.c, include/asm-ppc/i2c.h, and all references to those files. Added multiple I2C bus support to fsl_i2c.c. Signed-off-by: Timur Tabi <timur@freescale.com>
| * | | mpc83xx: Replace CFG_IMMRBAR with CFG_IMMRTimur Tabi2006-11-03-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Replace all instances of CFG_IMMRBAR with CFG_IMMR, so that the 83xx tree matches the other 8xxx trees. Signed-off-by: Timur Tabi <timur@freescale.com>
| * | | mpc83xx: add QE ethernet supportDave Liu2006-11-03-0/+3910
| | | | | | | | | | | | | | | | this patch adds support for the QUICC Engine based UCC gigabit ethernet device.
| * | | mpc83xx: Add support for the MPC8349E-mITXTimur Tabi2006-11-03-3/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | PREREQUISITE PATCHES: * This patch can only be applied after the following patches have been applied: 1) DNX#2006090742000024 "Add support for multiple I2C buses" 2) DNX#2006090742000033 "Multi-bus I2C implementation of MPC834x" 3) DNX#2006091242000041 "Additional MPC8349 support for multibus i2c" 4) DNX#2006091242000078 "Add support for variable flash memory sizes on 83xx systems" 5) DNX#2006091242000069 "Add support for Errata DDR6 on MPC 834x systems" CHANGELOG: * Add support for the Freescale MPC8349E-mITX reference design platform. The second TSEC (Vitesse 7385 switch) is not supported at this time. Signed-off-by: Timur Tabi <timur@freescale.com>
| * | | NAND Flash verify across block boundariesNick Spence2006-11-03-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch addresses a problem when CONFIG_MTD_NAND_VERIFY_WRITE is defined and the write crosses a block boundary. The pointer to the verification buffer (bufstart) is not being updated to reflect the starting of the new block so the verification of the second block fails. CHANGELOG: * Fix NAND FLASH page verification across block boundaries
| * | | Added RGMII support to the TSECs and Marvell 881111 PhyNick Spence2006-11-03-4/+4
| | |/ | |/| | | | | | | | | | | | | | | | Added a phy initialization to adjust the RGMII RX and TX timing Always set the R100 bit in 100 BaseT mode regardless of the TSEC mode Signed-off-by: Nick Spence <nick.spence@freescale.com>
* | | [PATCH] nand: Fix patch merge problemStefan Roese2006-11-28-2/+2
| |/ |/| | | | | Signed-off-by: Stefan Roese <sr@denx.de>
* | Merge with /home/sr/git/u-boot/denx-alpr-merge-testWolfgang Denk2006-11-27-0/+2
|\ \
| * \ Merge with /home/stefan/git/u-boot/denxStefan Roese2006-11-27-57/+157
| |\ \
| * \ \ Merge with /home/stefan/git/u-boot/denxStefan Roese2006-11-10-397/+2766
| |\ \ \ | | | |/ | | |/|
| * | | CFG_NAND_QUIET_TEST added to not warn upon missing NAND deviceStefan Roese2006-10-07-0/+2
| | | | | | | | | | | | | | | | Patch by Stefan Roese, 07 Oct 2006
* | | | [PATCH] nand_wait() timeout fixesStefan Roese2006-11-27-4/+4
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Two fixes for the nand_wait() function in drivers/nand/nand_base.c: 1. Use correct timeouts. The original timeouts in Linux source are 400ms and 20ms not 40s and 20s 2. Return correct error value in case of timeout. 0 is interpreted as OK. Signed-off-by: Rui Sousa <rui.sousa@laposte.net> Signed-off-by: Stefan Roese <sr@denx.de>
* | | [PATCH] CFI driver AMD Command Set Top boot geometry reversal, etc. [Updated]Stefan Roese2006-11-13-57/+157
| |/ |/| | | | | | | | | | | | | | | | | | | | | * Adds support for AMD command set Top Boot flash geometry reversal * Adds support for reading JEDEC Manufacturer ID and Device ID * Adds support for displaying command set, manufacturer id and device ids (flinfo) * Makes flinfo output to be consistent when CFG_FLASH_EMPTY_INFO defined * Removes outdated change history (refer to git log instead) Signed-off-by: Tolunay Orkun <listmember@orkun.us> Signed-off-by: Stefan Roese <sr@denx.de>
* | [PATCH] NAND: Partition name support added to NAND subsystemStefan Roese2006-10-28-9/+2
| | | | | | | | | | | | | | | | chpart, nboot and NAND subsystem related commands now accept also partition name to specify offset. Signed-off-by: Ladislav Michl <ladis@linux-mips.org> Signed-off-by: Stefan Roese <sr@denx.de>
* | Fix TSEC driver (now for real): avoid crashes if PHY is not attachedBen Warren2006-10-26-3/+6
| | | | | | | | | | | | | | to a TSEC (e.g. a switch is connected via RMII) or if the PHY is defective/incorrectly configured. Signed-off-by: Ben Warren <bwarren@qstreams.com>
* | Merge with /home/wd/git/u-boot/masterWolfgang Denk2006-10-24-1/+403
|\ \
| * | Add common serial driver for Atmel AT32 and AT91 chipsWolfgang Denk2006-10-24-1/+403
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Patch by Haavard Skinnemoen, 06 Sep 2006 This is a first attempt at creating a common serial driver for Atmel chips. For now, it supports the AT32AP7000 AVR32 chip, but it should be possible to support AT91RM9200 and other ARM-based chips with some minor modifications. There's nothing fundamentally AVR32-specific in this driver, but it does use some features which are currently only defined for the AT32AP CPU port: * pm_get_clock_freq: Obtain the clock frequency of a given domain * gd->console_uart: A "struct device" containing information about register mappings, gpio resources and clocks associated with the UART device. For more information about these features, please see the "AT32AP CPU" patch.
* | | Merge with http://www.jdl.com/software/u-boot-86xx.gitWolfgang Denk2006-10-20-384/+1480
|\ \ \ | |/ / |/| |
| * | Converted all 85xx boards to use a common FSL I2C driver.Jon Loeliger2006-10-20-3/+7
| | | | | | | | | | | | | | | | | | | | | | | | Introduced COFIG_FSL_I2C to select the common FSL I2C driver. And removed hard i2c path from a few u-boot.lds scipts too. Minor whitespace cleanups along the way. Signed-off-by: Jon Loeliger <jdl@freescale.com>
| * | Rewrite a series of goto statements as a sequences ofJon Loeliger2006-10-19-31/+21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | conditional expressions instead. Use consistent return code 0/-1 for good/bad indicators. Include one fewer file if the driver isn't used at all. Signed-off-by: Jon Loeliger <jdl@freescale.com>