summaryrefslogtreecommitdiffstats
Commit message (Collapse)AuthorAgeFilesLines
* tegra: usb: move implementation into right directoryLucas Stach2013-03-147-560/+536
| | | | | | | | | | | | | | | | This moves the Tegra USB implementation into the drivers/usb/host directory. Note that this merges the old /arch/arm/cpu/armv7/tegra20/usb.c file into ehci-tegra.c. No code changes, just moving stuff around. v2: While at it also move some defines and the usb.h header file to make usb driver usable for Tegra30. NOTE: A lot more work is required to properly init the PHYs and PLL_U on Tegra30, this is just to make porting easier and it does no harm here. Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
* tegra: usb: various small cleanupsLucas Stach2013-03-142-15/+1
| | | | | | | | | Remove unneeded headers, function prototype and stale comment, that doesn't match the actual codebase anymore. Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
* tegra: usb: move controller init into start_portLucas Stach2013-03-141-28/+29
| | | | | | | | | | | There is no need to init a USB controller before the upper layers indicate that they are actually going to use it. board_usb_init now only parses the device tree and sets up the common pll. Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
* tegra: usb: remove unneeded function parameterLucas Stach2013-03-141-4/+2
| | | | | | | | Just a dead parameter, never actually used. Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
* tegra: usb: make controller init functions more self containedLucas Stach2013-03-141-12/+12
| | | | | | | | | | | | | There is no need to pass around all those parameters. The init functions are able to easily extract all the needed setup info on their own. This allows to move out the controller init into ehci_hcd_init later on, without having to save away global state for later use and thus bloating the file global state. Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
* tegra: usb: set USB_PORTS_MAX to correct valueLucas Stach2013-03-141-1/+1
| | | | | | | | Both Tegra20 and Tegra30 have a max of 3 USB controllers. Signed-off-by: Lucas Stach <dev@lynxeye.de> Acked-by: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Warren <twarren@nvidia.com>
* Refactor linker-generated arraysAlbert ARIBAUD2013-03-12177-351/+380
| | | | | | | | | | | | | | | | | | | | | | | | Refactor linker-generated array code so that symbols which were previously linker-generated are now compiler- generated. This causes relocation records of type R_ARM_ABS32 to become R_ARM_RELATIVE, which makes code which uses LGA able to run before relocation as well as after. Note: this affects more than ARM targets, as linker- lists span possibly all target architectures, notably PowerPC. Conflicts: arch/arm/cpu/arm926ejs/mxs/u-boot-spl.lds arch/arm/cpu/arm926ejs/spear/u-boot-spl.lds arch/arm/cpu/armv7/omap-common/u-boot-spl.lds board/ait/cam_enc_4xx/u-boot-spl.lds board/davinci/da8xxevm/u-boot-spl-da850evm.lds board/davinci/da8xxevm/u-boot-spl-hawk.lds board/vpac270/u-boot-spl.lds Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
* arm: make __bss_start and __bss_end__ compiler-generatedAlbert ARIBAUD2013-03-129-32/+122
| | | | | | | | | | | | | Turn __bss_start and __bss_end__ from linker-generated to compiler-generated symbols, causing relocations for these symbols to change type, from R_ARM_ABS32 to R_ARM_RELATIVE. This should have no functional impact, as it affects references to __bss_start and __bss_end__ only before relocation, and no such references are done. Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
* Remove linker lists (LGAs) from SPL linker scriptsAlbert ARIBAUD2013-03-1212-42/+164
| | | | | | | | | | | | Many SPL linker scripts needlessly include linker lists (aka LGAs). Remove them whenever possible; keep it only in the seven am335x_evm variants (am335x_evm, am335x_evm_uart[1-5], am335x_evm_spiboot), where there is actual content in output section .u_boot_list. This commit keeps all u-boot.bin and u-boot-spl.bin in ARM targets byte-identical. Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
* arm: omap: map u_boot_lists section to .sramAlbert ARIBAUD2013-03-121-1/+1
| | | | | | | | | | | | | | | | | | | | | | | Output section .u_boot_list was left unmapped in u-boot-spl.lds for omap-common, causing the location counter to roll back to bteween .rodata and .data, making __image_copy_end and _end symbols wrong. Mapping output section .u_boot_list to memory .sram fixes these symbols' mapping. This modifies the SPL binary but has no functional impact, as __image_copy_end and _end are never used in SPLs and u_boot_list is empty for all 29 boards affected (omap4_sdp4430 eco5pk igep0030 am335x_evm_uart3 omap3_beagle am3517_crane igep0032 mt_ventoux pcm051 am3517_evm omap3_evm_quick_mmc am335x_evm_uart2 am335x_evm_spiboot am335x_evm_uart1 omap3_evm igep0030_nand omap3_overo igep0020 am335x_evm omap4_panda omap5_evm am335x_evm_uart4 devkit8000 tricorder mcx twister omap3_evm_quick_nand am335x_evm_uart5 igep0020_nand). Signed-off-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
* Merge branch 'u-boot-atmel/master' into 'u-boot-arm/master'Albert ARIBAUD2013-03-1211-62/+79
|\
| * ARM: sam9x5: fix ethernet pins in MII modeJesse Gilles2013-03-121-8/+8
| | | | | | | | | | | | | | Fix pin setting in MII mode Signed-off-by: Jesse Gilles <jgilles@multitech.com> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
| * ARM: at91sam9x5: Using CPU string directlyBo Shen2013-03-122-13/+7
| | | | | | | | | | | | | | As the CPU name is not configurable, using CPU string directly Signed-off-by: Bo Shen <voice.shen@atmel.com> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
| * ARM: at91: change nand flash tableBo Shen2013-03-125-40/+41
| | | | | | | | | | | | | | | | | | | | Change nand flash partition table according to www.at91.com/linux4sam more information: http://www.at91.com/linux4sam/bin/view/Linux4SAM/GettingStarted#Linux4SAM_NandFlash_demo_Memory Signed-off-by: Bo Shen <voice.shen@atmel.com> [minor commit message changes] Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
| * arm: at91/configs: add bootz to configurationNicolas Ferre2013-03-126-0/+6
| | | | | | | | | | | | | | | | | | Support to boot zImage Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> [Add bootz for at91rm9200, at91sam9263, at91sam9rl] Signed-off-by: Bo Shen <voice.shen@atmel.com> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
| * arm: at91/configs: add libfdt to configurationNicolas Ferre2013-03-124-0/+8
| | | | | | | | | | | | | | | | | | support to boot device tree Linux kernel Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com> [Add libftd for at91rm9200, at91sam9263, at91sam9rl] Signed-off-by: Bo Shen <voice.shen@atmel.com> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
| * ARM: atmel: add at91sam9g20ek_2mmc nand boot supportBo Shen2013-02-193-1/+9
| | | | | | | | | | | | | | | | | | | | Add at91sam9g20_2mmc nand boot support. on this board, there is no dataflash, so disable it change one commet for at91sam9g20ek board Signed-off-by: Bo Shen <voice.shen@atmel.com> Signed-off-by: Andreas Bießmann <andreas.devel@googlemail.com>
* | Merge u-boot/master into u-boot-ti/masterTom Rini2013-03-11170-2275/+6801
|\ \ | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | In master we had already taken a patch to fix the davinci GPIO code for CONFIG_SOC_DM646X and in u-boot-ti we have additional patches to support DA830 (which is CONFIG_SOC_DA8XX && !CONFIG_SOC_DA850). Resolve these conflicts manually and comment the #else/#endif lines for clarity. Conflicts: arch/arm/include/asm/arch-davinci/gpio.h drivers/gpio/da8xx_gpio.c Signed-off-by: Tom Rini <trini@ti.com>
| * | x86: Enable CONFIG_OF_CONTROL on corebootSimon Glass2013-03-041-0/+6
| | | | | | | | | | | | | | | | | | | | | Make use of a device tree on coreboot boards, and set the default to link. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Adjust link device tree include fileSimon Glass2013-03-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | This is currently set to coreboot.dtsi, but we cannot support this on old device tree compilers (dtc <= 1.3), so adjust to use ARCH_CPU_DTS to let the Makefile preprocessor sort this out. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Add error checking to x86 relocation codeSimon Glass2013-03-041-2/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This does not actually change normal behaviour, but adds a check that should detect corruption of relocation data (e.g. by using BSS data prior to relocation). Also add additional debugging output when enabled. During this investigation, two situations have been seen: 1. calculate_relocation_address(): uintptr_t size = (uintptr_t)&__bss_end - (uintptr_t)&__text_start; turns into 111166f: b8 83 c4 17 01 mov $0x117c483,%eax whih is beyond the end of bss: 0117b484 g .bss 00000000 __bss_end Somehow the __bss_end here is 255 bytes ahead. 2. do_elf_reloc_fixups(): uintptr_t size = (uintptr_t)&__bss_end - (uintptr_t)&__text_start; Here the __text_start is 0 in the file: 1111d9f: bb a0 e0 13 01 mov $0x113e0a0,%ebx 1111da4: 81 ef 00 00 00 00 sub $0x0,%edi As it happens, both of these are in pre-relocation code. For these reasons we silent check and ignore bad relocations. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Support relocation of FDT on start-upSimon Glass2013-03-047-2/+46
| | | | | | | | | | | | | | | | | | | | | With CONFIG_OF_CONTROL we may have an FDT in the BSS region. Relocate it up with the rest of U-Boot to keep the rest of memory free. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Rearrange the output input to remove BSSSimon Glass2013-03-041-7/+12
| | | | | | | | | | | | | | | | | | | | | At present BSS data is including in the image, which wastes binary space. Remove it by rearranging the sections so that BSS is last. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Add an __end symbol to signal the end of the U-Boot binarySimon Glass2013-03-043-1/+4
| | | | | | | | | | | | | | | | | | | | | With this symbol we can easy append something (e.g. an FDT) to the U-Boot binary and access it from within U-Boot. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Permit bootstage and timer data to be used prior to relocationSimon Glass2013-03-044-18/+16
| | | | | | | | | | | | | | | | | | | | | | | | | | | It is useful to be able to access the timer before U-Boot has relocated so that we can fully support bootstage. Add new global_data members to support this. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Add basic cache operationsSimon Glass2013-03-041-0/+23
| | | | | | | | | | | | | | | | | | | | | At present most x86 cache operations are undefined. Add a basic implementation for these. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | x86: Add function to get top of usable ramSimon Glass2013-03-042-24/+22
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The memory layout calculations are done in calculate_relocation_address(), and coreboot has its own version of this function. But in fact all we really need is to set the top of usable RAM, and then the base version will work as is. So instead of allowing the whole calculate_relocation_address() function to be replaced, create board_get_usable_ram_top() which can be used by a board to specify the top of the area where U-Boot relocations to. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | Prepare v2013.04-rc1Tom Rini2013-03-041-2/+2
| | | | | | | | | | | | Signed-off-by: Tom Rini <trini@ti.com>
| * | kerneldoc: Add Sonic Zhang to alias bfin in git-mailrc.Sonic Zhang2013-03-041-1/+2
| | | | | | | | | | | | Signed-off-by: Sonic Zhang <sonic.adi@gmail.com>
| * | bootm: fix conditional compilation for bootm ramdisk subcommandDaniel Schwierzeck2013-03-041-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | All code related to the bootm ramdisk subcommand is conditionally enabled by CONFIG_SYS_BOOT_RAMDISK_HIGH except for the help message. Replace the CONFIG_ARCH defines by CONFIG_SYS_BOOT_RAMDISK_HIGH to fix this. Signed-off-by: Daniel Schwierzeck <daniel.schwierzeck@gmail.com>
| * | env: Avoid clobbering an edited variable on ctrl-cJoe Hershberger2013-03-041-1/+2
| | | | | | | | | | | | | | | | | | If readline says there was an error, don't write to the variable! Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
| * | ubifs: Allow ubifsmount volume reference by numberJoe Hershberger2013-03-0410-14/+13
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | UBI can mount volumes by name or number The current code forces you to name the volume by prepending every name with "ubi:". >From fs/ubifs/super.c * There are several ways to specify UBI volumes when mounting UBIFS: * o ubiX_Y - UBI device number X, volume Y; * o ubiY - UBI device number 0, volume Y; * o ubiX:NAME - mount UBI device X, volume with name NAME; * o ubi:NAME - mount UBI device 0, volume with name NAME. Now any name passed in any of the above forms are allowed. Also update the configs that referenced ubifsmount. Signed-off-by: Joe Hershberger <joe.hershberger@ni.com>
| * | sandbox: config: Enable sandbox commandSimon Glass2013-03-041-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | The 'sb' command allows loading files from the host, and listing directories. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | sandbox: Enable ext4 and fat filesystemsSimon Glass2013-03-041-0/+7
| | | | | | | | | | | | | | | | | | | | | These are useful for build-testing code, at least. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | sandbox: Add 'sb' command to access filesystem featuresSimon Glass2013-03-044-0/+66
| | | | | | | | | | | | | | | | | | | | | | | | | | | The new 'sb' command is intended to deal with sandbox-specific features that have no parallel in other archs. This commit adds two sub-commands to list a directory and read a file from the host filesystem. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | sandbox: Add host filesystemSimon Glass2013-03-047-0/+189
| | | | | | | | | | | | | | | | | | | | | This allows reading of files from the host filesystem in sandbox. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | sandbox: Add a way of obtaining directory listingsSimon Glass2013-03-042-0/+149
| | | | | | | | | | | | | | | | | | | | | | | | This implementation uses opendir()/readdir() to access the directory information and then puts it in a linked list for the caller's use. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | fs: Move ls and read methods into ext4, fatSimon Glass2013-03-045-110/+67
| | | | | | | | | | | | | | | | | | | | | | | | | | | It doesn't make a lot of sense to have these methods in fs.c. They are filesystem-specific, not generic code. Add each to the relevant filesystem and remove the associated #ifdefs in fs.c. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | fs: Use map_sysmem() on readSimon Glass2013-03-041-8/+15
| | | | | | | | | | | | | | | | | | | | | | | | This allows us to use filesystems on sandbox. It has no effect on other architectures. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | fs: Tell probe functions where to put their resultsSimon Glass2013-03-041-8/+12
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than rely on global variables for the probe functions, pass in the information that we need filled in. This allows us to potentially keep the variables private to fs.c in the future, and the meaning of the probe function is clearer. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | fs: Use filesystem methods instead of switch()Simon Glass2013-03-041-34/+26
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We can use the available methods and avoid using switch(). When the filesystem is not supported, we fall through to the 'unsupported' methods: fs_probe_unsupported() prints an error, so the others do not need to. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | fs: Fully populate the filesystem method structSimon Glass2013-03-041-9/+47
| | | | | | | | | | | | | | | | | | | | | | | | | | | There is a structure in fs.c with just a probe method. By adding methods for other operations, we can avoid lots of #ifdefs and switch()s. As a first step, create the structure ready for use. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
| * | ext4: Split write support into its own fileSimon Glass2013-03-043-964/+997
| | | | | | | | | | | | | | | | | | | | | This code seems to be entirely othogonal, so remove the #ifdef and put the condition in the Makefile instead. Signed-off-by: Simon Glass <sjg@chromium.org>
| * | Merge branch 'mem' of git://git.denx.de/u-boot-x86Tom Rini2013-03-0438-583/+761
| |\ \
| | * | hash: Use lower case for hash algorithm namesSimon Glass2013-02-283-6/+11
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Rather than use strcasecmp() in the hash algorithm search, require the caller to do this first. Most of U-Boot can use lower case anyway, and the hash command can convert to lower case before calling hash_command(). This saves needing strcasecmp() for boards that use hashing but not the hash command. Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | sandbox: Allow hash functions to work correctlySimon Glass2013-02-281-8/+16
| | | | | | | | | | | | | | | | | | | | | | | | Use map_sysmem() so that hashing is possible on sandbox. Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | sandbox: Update mtest to fix crashesSimon Glass2013-02-281-45/+63
| | | | | | | | | | | | | | | | | | | | | | | | | | | | Use map_sysmem() in the memory tester so that it works as expected on sandbox. Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | Move CONFIG_SYS_MEMTEST_SCRATCH #ifdef to top of fileSimon Glass2013-02-281-4/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | This config effectively has a default value of 0, so add this setting at the top of the code to remove an #ifdef in the C function. Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | sandbox: config: Enable hash functions and mtestSimon Glass2013-02-281-2/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Enable the hash command and sha1/256 hashing for sandbox. Also use a better address for memory testing (since the existing one is set up for linux host memory space). Signed-off-by: Simon Glass <sjg@chromium.org>
| | * | Roll crc32 into hash infrastructureSimon Glass2013-02-285-107/+108
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Add the CRC32 algorithm to the list of available hashes, and make the crc32 command use hash_command(). Add a new crc32_wd_buf() to make this possible, which puts its result in a buffer rather than returning it as a 32-bit value. Note: For some boards the hash command is not enabled, neither are sha1, sha256 or the verify option. In this case the full hash implementation adds about 500 bytes of overhead. So as a special case, we use #ifdef to select very simple bahaviour in that case. The justification for this is that it is currently a very common case (virtually all boards enable crc32 but only some enable more advanced features). Signed-off-by: Simon Glass <sjg@chromium.org>
OpenPOWER on IntegriCloud