summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* 86xx: Cleanup for partial linking and --gc-sectionsWolfgang Denk2010-11-27-36/+6
| | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Kumar Gala <galak@kernel.crashing.org> Acked-by: Stefan Roese <sr@denx.de>
* 83xx: Cleanup for partial linking and --gc-sectionsWolfgang Denk2010-11-27-49/+18
| | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Kim Phillips <kim.phillips@freescale.com> Cc: Haiying Wang <r54964@freescale.com>
* ppc4xx/NAND: Reduce size of NAND SPL imageStefan Roese2010-11-27-2/+2
| | | | | | | | | | This is needed for the canyonlands_nand build target. Without it the resulting image won't fit into 4k. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Scott Wood <scottwood@freescale.com> Acked-by: Scott Wood <scottwood@freescale.com> Acked-by: Stefan Roese <sr@denx.de>
* ppc4xx: Cleanup for partial linking and --gc-sectionsWolfgang Denk2010-11-27-407/+152
| | | | | | | | | | | | | | | | | This commit adapts 4xx boards for partial linking with --gc-sections. Signed-off-by: Stefan Roese <sr@denx.de> Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Cc: Tirumala Marri <tmarri@apm.com> Cc: David Updegraff <dave@cray.com> Cc: Matthias Fuchs <matthias.fuchs@esd-electronics.com> Cc: Dirk Eibach <eibach@gdsys.de> Cc: Larry Johnson <lrj@acm.org> Cc: Peter De Schrijver <p2@mind.be> Cc: Niklaus Giger <niklaus.giger@netstal.com> Cc: Daniel Poirot <dan.poirot@windriver.com> Acked-by: Stefan Roese <sr@denx.de>
* POWERPC: enable --gc-sections and -ffunction-sections -fdata-sectionsWolfgang Denk2010-11-27-6/+2
| | | | | | | | | | | | | | | | | | | | | | | | | The switch from archive libraries to partial linking has introduced a number of problems, that are non-trivial to solve. For example, it is no longer possible to include individual object files in the linker script as we did before for example in the case of boards with embedded environment to fill up the gap caused by the need to align the environment on flash erase block boundaries. The best (but unfortunately not easiest) approach to address this problem is to enable -ffunction-sections (and -fdata-sections) so we can again (and even in much finer granularity) place certain code where we want it. When doing this step, it seems only consequent to also add --gc-sections which has the added benefit of reducing the memory footprint of the U-Boot image (both in flash and in RAM). Unfortunately, this requires changes to a lot of linker scripts. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Cc: Kim Phillips <kim.phillips@freescale.com> Cc: Andy Fleming <afleming@gmail.com> Cc: Kumar Gala <galak@kernel.crashing.org> Acked-by: Stefan Roese <sr@denx.de>
* 83xx: Fix NAND_SPL link addressScott Wood2010-11-27-30/+55
| | | | | | | | | | | | | | | | | Apply the same fix for 83xx as was done for 85xx in commit 96196a1f7546904563994d2d041804a816d7c139. Without this, NAND SPLs are built with the text base intended for the main image, resulting in a broken, very large u-boot-nand.bin. The block of defines for NAND boot is moved closer to where CONFIG_SYS_TEXT_BASE is defined. We can't directly use CONFIG_SYS_NAND_U_BOOT_DST in the definition of CONFIG_SYS_TEXT_BASE because autoconf.mk will include the literal text "CONFIG_SYS_NAND_U_BOOT_DST", but at least keep them close and point out that they're supposed to be the same. Signed-off-by: Scott Wood <scottwood@freescale.com>
* ppc4xx: Fix build problems of IBM DDR2 NAND booting targetsStefan Roese2010-11-26-12/+0
| | | | | | | | | This change is needed to compile the PPC4xx NAND booting targets equipped with the IBM DDR2 SDRAM controller. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Wolfgang Denk <wd@denx.de> Acked-by: Stefan Roese <sr@denx.de>
* PPChameleonEVB and CATcenter need a custom linker scriptWolfgang Denk2010-11-26-0/+130
| | | | | | | | | | | | | These boards use an embedded environment, which is not supported by the generic arch/powerpc/cpu/ppc4xx/u-boot.lds script. The breakage was introduced by commit 2cd95a2 "ppc4xx: Remove board specific linker scripts from most PPC4xx boards" Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Cc: Andrea Marson <andrea.marson@dave-tech.it> Acked-by: Stefan Roese <sr@denx.de>
* arch/powerpc/*/config.mk: make CONFIG_SYS_LDSCRIPT settings workWolfgang Denk2010-11-26-50/+20
| | | | | | | | | | | | | | | | | | | | | | | | | As we try to get rid of board specific config.mk files we must provide a way for board specific settings of the LDSCRIPT variable (path to the linker script) where needed. We now implement the following hierarchy: - Highest priority has a "#define CONFIG_SYS_LDCONFIG" in the board config file. - If CONFIG_SYS_LDCONFIG is not set, and the system is booting from NAND (CONFIG_NAND_SPL is set), then a board specific linker script board/$(BOARDDIR)/u-boot-nand.lds gets used. - If we are not booting from NAND, we test if a processor specific linker script arch/powerpc/cpu/$(CPU)/u-boot.lds exists; if so we use that. - As default, arch/powerpc/config.mk gets used. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Cc: Kim Phillips <kim.phillips@freescale.com> Cc: Kumar Gala <kumar.gala@freescale.com> Cc: Andy Fleming <afleming@gmail.com> Acked-by: Stefan Roese <sr@denx.de>
* cpu/ppc4xx/Makefile: build only needed object filesWolfgang Denk2010-11-26-22/+10
| | | | | | Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Acked-by: Stefan Roese <sr@denx.de>
* common/Makefile: don't include env_embedded.o into libcommonWolfgang Denk2010-11-26-7/+7
| | | | | | | | | | Some boards use an embedded environment, where env_embedded.o has to be linked at a special position in the U-Boot image; to make this possible, we do not include it into libcommon.o for such boards. Signed-off-by: Mike Frysinger <vapier@gentoo.org> Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Stefan Roese <sr@denx.de>
* cam5200_niosflash: fix build warningsWolfgang Denk2010-11-26-2/+6
| | | | | | | | | | | | Fix warnings: cam5200_flash.c: In function 'write_word_32': cam5200_flash.c:443: warning: dereferencing type-punned pointer will break strict-aliasing rules cam5200_flash.c: In function 'write_word_16': cam5200_flash.c:684: warning: dereferencing type-punned pointer will break strict-aliasing rules Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Stefan Roese <sr@denx.de>
* WINBOND_83C553: enable only on boards that actually use it.Wolfgang Denk2010-11-26-4/+4
| | | | | | | | | | | | | | | | | | | | So far, only the BAB7xx board would call the initialise_w83c553f() function for the WINBOND 83C553 chip, even though some other boards (HIDDEN_DRAGON, Sandpoint8240, Sandpoint8245) enabled it in their board configuration. These boards were also missing other config settings needed for that, which resulted in build errors like this: drivers/pci/libpci.o:(.got2+0x84): undefined reference to `ide_bus_offset' Switch arch/powerpc/lib/board.c to call initialise_w83c553f() not on a per-board base, but when a WINBOND_83C553 in enabled in a configuration (like BAB7xx), and disable it in the boards that had this set so far. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Yusdi Santoso <yusdi_santoso@adaptec.com> Cc: Jim Thompson <jim@musenki.com> Acked-by: Stefan Roese <sr@denx.de>
* IDS8247: remove redundant flash.c fileWolfgang Denk2010-11-26-485/+1
| | | | | | | | The IDS8247 board is configured to use the CFI flash driver, so drop the now redundant custom flash.c file. Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Stefan Roese <sr@denx.de>
* e1000: fix compile warningWolfgang Denk2010-11-26-1/+2
| | | | | | | | | Get rid of compiler warning: e1000.c: In function 'e1000_transmit': e1000.c:5028: warning: passing argument 1 of 'virt_to_phys' discards qualifiers from pointer target type Signed-off-by: Wolfgang Denk <wd@denx.de> Acked-by: Stefan Roese <sr@denx.de>
* barco: drop unsupported board configurationWolfgang Denk2010-11-26-1680/+2
| | | | | | | | | | The barco board appears to be unmaintained since it was added about 5 years ago. The environment location has probably never been correct. Drop it. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Marc Leeman <marc.leeman@barco.com> Acked-by: Stefan Roese <sr@denx.de>
* ERIC: drop unsupported board configurationWolfgang Denk2010-11-26-2165/+2
| | | | | | | | | | | The ERIC board appears to be unmaintained for more than 9 years. The environment location has probably never been correct, and has been definitely broken since for at least a year. Drop it. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Stefan Roese <sr@denx.de> Cc: Swen Anderson <sand@peppercon.de> Acked-by: Stefan Roese <sr@denx.de>
* Merge branch 'master' of /home/wd/git/u-boot/custodiansWolfgang Denk2010-11-26-922/+1581
|\
| * Merge branch 'master' of git://git.denx.de/u-boot-usbWolfgang Denk2010-11-26-2/+5
| |\
| | * usb: Remove usb_dev_init() from ehci-ppc4xx.cStefan Roese2010-11-26-1/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Calling usb_dev_init() from within the EHCI host driver is wrong. The EHCI host driver should have no dependency/interconnection to the USB device driver. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Remy Bohmer <linux@bohmer.net>
| | * usb: Clear CMD_RUN while issuing CMD_RESET in ehci_reset()Stefan Roese2010-11-26-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes a problem noticed on lwmon5 (PPC440EPx) using the common EHCI driver, when "usb reset" is issued multiple times. Upon the 2nd (and further) "usb reset" command, the command fails with the following messages: => usb reset (Re)start USB... USB: Register 1111 NbrPorts 1 USB EHCI 1.00 scanning bus for devices... 5 USB Device(s) found scanning bus for storage devices... 2 Storage Device(s) found => usb reset (Re)start USB... USB: EHCI fail to reset Error, couldn't init Lowlevel part This patch fixes this problem. Now "usb reset" can be called multiple times. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Remy Bohmer <linux@bohmer.net>
| | * usb: Add WATCHDOG_RESET call to polling loopStefan Roese2010-11-26-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | This watchdog reset call is needed here, otherwise the lwmon5 board (PPC440EPx based) will reset upon the "usb reset" command. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Remy Bohmer <linux@bohmer.net>
| | * usb: fix for USB_ST_STALLED status reporting in ehci_submit_async()Anatolij Gustschin2010-11-26-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Checking the status field of the qTD token in the current code do not take into acount cases where endpoint stall (halted) bit is set together with XactErr status bit. As a result clearing stall on an endpoint won't be done if this status bit was also set. Check for halted bit and report USB_ST_STALLED status if the host controller also indicates endpoit stall condition. Signed-off-by: Anatolij Gustschin <agust@denx.de>
| * | Merge branch 'master' of git://git.denx.de/u-boot-armWolfgang Denk2010-11-26-920/+1576
| |\ \ | | |/ | |/|
| | * arm1176: bugfix: fix start.S for ELF relocationAlbert Aribaud2010-11-26-34/+13
| | | | | | | | | | | | | | | | | | | | | The start.S file was only half-rewritten for ELF relocations. This bugfix completes the rewrite. Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
| | * arm: add ELF relocation support to rest of cpusAlbert Aribaud2010-11-26-666/+785
| | | | | | | | | | | | | | | | | | | | | | | | bulk addition of ELF relocation support to ARM cpus arm946es, arm720t,arm920t, arm925t, arm_intcm, ixp, lh7a40x, s3c44b0, and sa1100. Signed-off-by: Albert Aribaud <albert.aribaud@free.fr>
| | * Seagate FreeAgent DockStar supportEric Cooper2010-11-26-0/+574
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | start with sheevaplug configuration add modifications by Alexander Holler <holler@ahsoftware.de> change RAM definitions to one bank (128 MB) change ident string and prompt define MTD partitions and default environment variables add support for LEDs Signed-off-by: Eric Cooper <ecc@cmu.edu>
| | * DaVinci: remove bogus DEF_BOOTM definitionWolfgang Denk2010-11-19-5/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | Some boar config files defined DEF_BOOTM but this was not used anywhere in the code. Remove this bogus define. Signed-off-by: Wolfgang Denk <wd@denx.de> Cc: Sandeep Paulraj <s-paulraj@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * DA850 EVM: passing maximum clock rate information to kernelSekhar Nori2010-11-19-0/+48
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The TI DA850/OMAP-L138/AM18x EVM can be populated with devices having different maximum allowed CPU clock rating. The maximum clock the chip can support can only be determined from the label on the package (not software readable). Introduce a method to pass the maximum allowed clock rate information to kernel using ATAG_REVISION. The kernel uses this information to determine the maximum cpu clock rate reachable using cpufreq. Note that U-Boot itself does not set the CPU clock rate. The CPU clock is setup by a primary bootloader ("UBL"). The rate setup by UBL could be different from the maximum clock rate supported by the device. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * DA850 EVM: add information regarding DA850 in README.davinciSekhar Nori2010-11-19-0/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The README.davinci in documentation folder is missing information regarding DA850 which is a supported DaVinci device. Add this information. Signed-off-by: Sekhar Nori <nsekhar@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * OMAP4: Panda: Disable CMD_NFSSteve Sakoman2010-11-19-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This patch fixes the Panda build after commit 6d8962e814c15807dd6ac5757904be2a02d187b8 by explicitly disabling CMD_NFS >From the commit message for "Switch from archive libraries to partial linking": This commit reveals board configurations that exclude some features but include source files that depend these disabled features in the build, resulting in undefined symbols. Known such cases include: - disabling CMD_NET but not CMD_NFS; - enabling CONFIG_OF_LIBFDT but not CONFIG_QE. Signed-off-by: Steve Sakoman <steve.sakoman@linaro.org> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * OMAP3: pandora: update config for productionGrazvydas Ignotas2010-11-19-45/+44
| | | | | | | | | | | | | | | | | | | | | | | | | | | Update pandora's config so that it can boot production kernels from NAND. This enables UBI, USB, sets up NAND layout and default boot command. It also expands malloc area so that UBI works. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * OMAP3: remove unused config macrosGrazvydas Ignotas2010-11-19-109/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Most OMAP3 boards have various flash related macros in their configs that are either not referenced anywhere in the code or are used by drivers that are not enabled. Remove them. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Acked-by: Steve Sakoman <steve@sakoman.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * OMAP3: pandora: fix relocation and init memoryGrazvydas Ignotas2010-11-19-33/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | map Fix the build breakage introduced by the recent relocation and memory layout changes for ARM. Signed-off-by: Grazvydas Ignotas <notasas@gmail.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * omap4: board: change global data pointer to file scopeNishanth Menon2010-11-19-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | DECLARE_GLOBAL_DATA_PTR is currently defined within the scope of function while it is a global pointer. Change the scope of definition to replicate it's global scope. This seems to help gcc 4.5 optimizations as well. Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * mmc: omap: timeout counter fixNishanth Menon2010-11-19-25/+82
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Having a loop with a counter is no timing guarentee for timing accuracy or compiler optimizations. For e.g. the same loop counter which runs when the MPU is running at 600MHz will timeout in around half the time when running at 1GHz. or the example where GCC 4.5 compiles with different optimization compared to GCC 4.4. use timer to keep track of time elapse and we use an emperical number - 1sec for a worst case timeout. This should never happen, and is adequate imaginary condition for us to fail with timeout. Signed-off-by: Nishanth Menon <nm@ti.com> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
| | * da830: fixup ARM relocation supportNick Thompson2010-11-19-2/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Fixes build breakage in da830evm after commit 97003756249bd790910417eb66f0039bbf06a02c "da8xx: fixup ARM relocation support" The da8xx fixup commit changed da830/da850 common code to make relocation work in da850, but didn't add the required defines to da830evm_config.h resulting in build failure in the common code. This patch adds those defines for da830, but makes no sense without also referring to the commit mentioned above. Signed-off-by: Nick Thompson <nick.thompson@ge.com> Reviewed-by: Ben Gardiner <bengardiner@nanometrics.ca> Signed-off-by: Sandeep Paulraj <s-paulraj@ti.com>
* | | Fix NAND booting make targetStefan Roese2010-11-24-10/+10
|/ / | | | | | | | | | | | | | | Without this fix, the NAND_SPL target (in nand_spl/) is not built at all for those boards defining NAND_U_BOOT=y in boards.cfg. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Scott Wood <scottwood@freescale.com>
* | Blackfin: tweak objects specified before embedded environmentMike Frysinger2010-11-19-64/+30
| | | | | | | | | | | | | | | | | | | | The partial linking patch changes how objects are specified to the linker and breaks boards with an embedded environment. So we need to tweak the list of objects we specify via the linker script that go in the gap before the embedded env to work with this new behavior. This fixes linker errors for all the boards in question. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Blackfin: drop initcode.o from combined objectMike Frysinger2010-11-19-4/+0
| | | | | | | | | | | | | | | | | | We explicitly link in the initcode.o in the Blackfin linker script, so there is no need to merge it into the main common object for the linker to pull in itself. This also fixes duplicate symbol errors with the new partial linking logic. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | Merge branch 'master' of /home/wd/git/u-boot/custodiansWolfgang Denk2010-11-19-1/+45
|\ \
| * \ Merge branch 'master' of git://git.denx.de/u-boot-i2cWolfgang Denk2010-11-19-1/+45
| |\ \
| | * | post, i2c: add missing curly bracket in i2c_post_testHeiko Schocher2010-11-17-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | If CONFIG_SYS_POST_I2C_ADDRS is not defined and CONFIG_SYS_POST_I2C is activated, i2c_probe() is not called in the for statement, because missing curly bracket. Signed-off-by: Heiko Schocher <hs@denx.de>
| | * | i2c, mpc5xxx: add multibus supportHeiko Schocher2010-11-17-0/+43
| | | | | | | | | | | | | | | | | | | | | | | | Tested on upcoming hydra (mpc5200 based) board. Signed-off-by: Heiko Schocher <hs@denx.de>
* | | | Merge branch 'master' of /home/wd/git/u-boot/custodiansWolfgang Denk2010-11-19-0/+6
|\ \ \ \ | |/ / /
| * | | Merge branch 'master' of git://git.denx.de/u-boot-blackfinWolfgang Denk2010-11-19-0/+6
| |\ \ \
| | * | | Blackfin: make sure bss len is multiple of 4 bytesMike Frysinger2010-11-18-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The Blackfin on-chip BootROM requires that fill operations (which is used for the bss) be aligned to 4 bytes (base addr and total len). Plus, the Blackfin early init asm code assumes the same thing. So rather than making things work for no real gain, make sure the bss len is padded to 4 bytes in the linker script. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
| | * | | Blackfin: stick ins/outs funcs into their own .text sectionMike Frysinger2010-11-18-0/+5
| | | |/ | | |/| | | | | | | | | | | | | | | | | | | | | This lets the linker garbage collect these functions when they aren't actually used by placing them into the standard .text.<func> section. Signed-off-by: Mike Frysinger <vapier@gentoo.org>
* | | | Merge branch 'master' of /home/wd/git/u-boot/custodiansWolfgang Denk2010-11-19-70/+94
|\ \ \ \ | |/ / /
| * | | Merge branch 'net' of git://git.denx.de/u-boot-sparcWolfgang Denk2010-11-19-70/+94
| |\ \ \ | | |/ / | |/| |