summaryrefslogtreecommitdiff
Commit message (Collapse)AuthorAgeLines
* mmc: sdhci: Add support for optional controller specific set_ios_post()Stefan Roese2017-01-25-0/+5
| | | | | | | | | | | | | | | Some SDHCI drivers might need to do some special controller configuration after the common clock set_ios() function has been called (speed / width configuration). This patch adds a call to the newly created function set_ios_port() when its configured in the host driver. This will be used by the Xenon SDHCI controller driver used on the Marvell Armada 3700 and 7k/8k ARM64 SoCs. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Jaehoon Chung <jh80.chung@samsung.com> Cc: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
* mmc: sdhci: Clear SDHCI_CLOCK_CONTROL before configuring the new valueStefan Roese2017-01-25-4/+2
| | | | | | | | | | | | | | | | | | | This patch completely clears the SDHCI_CLOCK_CONTROL register before the new value is configured instead of just clearing the 2 bits SDHCI_CLOCK_CARD_EN and SDHCI_CLOCK_INT_EN. Without this change, some clock configurations will lead to the "Internal clock never stabilised." error message on the Xenon SDHCI controller used on the Marvell Armada 3700 and 7k/8k ARM64 SoCs. The Linux SDHCI core driver also writes 0 to this register before the new value is configured. So this patch simplifies the driver a bit and brings the U-Boot driver more in-line with the Linux one. Signed-off-by: Stefan Roese <sr@denx.de> Cc: Jaehoon Chung <jh80.chung@samsung.com> Cc: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Cc: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
* travis-ci: Add swig and libpython-dev to the package listTom Rini2017-01-24-0/+2
| | | | | | | | | As part of 1905c8fc711a we introduced failures depending on if swig and libpython-dev are installed or not. To provide coverage for this are of code in the future ensure we have these packages installed. Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Heiko Schocher <hs@denx.de>
* mach-omap2: Cleanup secure boot media generationAndrew F. Davis2017-01-24-10/+28
| | | | | | | | | | Currently all secure media types of SPL are generated for all platforms, all platforms do not need all types, only generate the media types valid for each platform. Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Tested-by: Lokesh Vutla <lokeshvutla@ti.com>
* tools: Correct python building host toolsTom Rini2017-01-24-1/+2
| | | | | | | | | | | | | | When we have python building tools for the host it will not check HOSTXX variables but only XX variables, for example LDFLAGS and not HOSTLDFLAGS. Cc: Simon Glass <sjg@chromium.org> Reported-by: Heiko Schocher <hs@denx.de> Fixes: 1905c8fc711a ("build: Always build the libfdt python module") Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org> Tested-by: Heiko Schocher <hs@denx.de>
* bootz/booti: relocate ramdisk if CONFIG_SYS_BOOT_RAMDISK_HIGH setCédric Schieli2017-01-24-0/+6
| | | | | | | | | | | | In commit c2e7e72, the ramdisk relocation code was moved from image_setup_linux to do_bootm, leaving the bootz and booti cases broken. This patch fixes both by adding the BOOTM_STATE_RAMDISK state in their call to do_bootm_states if CONFIG_SYS_BOOT_RAMDISK_HIGH is set. Signed-off-by: Cédric Schieli <cschieli@gmail.com> Reviewed-by: Rick Altherr <raltherr@google.com> Tested-by: Masahiro Yamada <yamada.masahiro@socionext.com>
* arm: am57xx: cl-som-am57x: fix EthernetUri Mashiach2017-01-24-3/+3
| | | | | | | | | | | | | | | | | | | | The module is continuously rebooting with the following message: Net: data abort pc : [<fff77f42>] lr : [<fff6e32b>] reloc pc : [<80816f42>] lr : [<8080d32b>] sp : fdf5ce48 ip : fdf5d79c fp : 00000017 r10: 8083cd58 r9 : fdf5cef0 r8 : fdf5d5d0 r7 : 48485000 r6 : 400000ff r5 : fdf5d6e0 r4 : fdf5d618 r3 : fdf5d5b4 r2 : fdf5d5d0 r1 : 643a3631 r0 : fdf5d6e0 Flags: nzCv IRQs off FIQs off Mode SVC_32 Resetting CPU ... Modifications: * Enable Ethernet configuration in the SPL. * Update PINMUX of PHY enable GPIO. Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il> Reviewed-by: Tom Rini <trini@konsulko.com>
* Kconfig: Migrate BOARD_LATE_INIT to a selectTom Rini2017-01-24-281/+146
| | | | | | | | | This option should not really be user selectable. Note that on PowerPC we currently only need BOARD_LATE_INIT when CHAIN_OF_TRUST is enabled so be conditional on that. Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Masahiro Yamada <yamada.masahiro@socionext.com> (for UniPhier)
* NXP: Introduce board/freescale/common/Kconfig and migrate CHAIN_OF_TRUSTTom Rini2017-01-24-13/+66
| | | | | | | | | Introduce board/freescale/common/Kconfig so that we have a single place for CONFIG options that are shared between ARM and PowerPC NXP platforms. Cc: York Sun <york.sun@nxp.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: York Sun <york.sun@nxp.com>
* imx31_phycore: Split the eet variant out into a different TARGETTom Rini2017-01-24-5/+8
| | | | | | | Rename CONFIG_IMX31_PHYCORE_EET to CONFIG_TARGET_IMX31_PHYCORE_EET and make this a distinct config target. Signed-off-by: Tom Rini <trini@konsulko.com>
* rpi: Fix device tree path on ARM64Tuomas Tynkkynen2017-01-24-21/+27
| | | | | | | | | The directory structure of device tree files produced by the kernel's 'make dtbs_install' is different on ARM64, the RPi3 device tree file is in a 'broadcom' subdirectory there. Signed-off-by: Tuomas Tynkkynen <tuomas@tuxera.com> Acked-by: Stephen Warren <swarren@wwwdotorg.org>
* mmc: Print error code for mmc_complete_init failureJagan Teki2017-01-23-1/+3
| | | | | | | | Print the error code for non-zero (failure case) instead of making debug statement without any condition, this usually gives proper clue in failure condition. Log:
* mmc: sdhci: Distinguish between base clock and maximum peripheral frequencyStefan Herbrechtsmeier2017-01-23-34/+52
| | | | | | | | | | The sdhci controller assumes that the base clock frequency is fully supported by the peripheral and doesn't support hardware limitations. The Linux kernel distinguishes between base clock (max_clk) of the host controller and maximum frequency (f_max) of the card interface. Use the same differentiation and allow the platform to constrain the peripheral interface. Signed-off-by: Stefan Herbrechtsmeier <stefan.herbrechtsmeier@weidmueller.com>
* Merge branch 'master' of git://git.denx.de/u-boot-uniphierTom Rini2017-01-22-415/+934
|\ | | | | | | | | | | | | - Allow to disable SPL (mainly for ATF) - Refactor SoC init code - Update DRAM settings - Add PXs3 SoC support (DT, pinctrl driver, SoC code)
| * ARM: uniphier: add PXs3 SoC supportMasahiro Yamada2017-01-22-0/+31
| | | | | | | | | | | | Initial support for PXs3 SoC. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: dts: uniphier: add PXs3 SoC/board supportMasahiro Yamada2017-01-22-0/+381
| | | | | | | | | | | | Initial commit for the PXs3 SoC DT. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * pinctrl: uniphier: support UniPhier PXs3 pinctrl driverMasahiro Yamada2017-01-22-9/+156
| | | | | | | | | | | | Add pin configuration and pinmux support for UniPhier PXs3 SoC. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: dts: uniphier: compile only DT files that make senseMasahiro Yamada2017-01-22-9/+18
| | | | | | | | | | | | | | | | | | All the UniPhier DT files are compiled if CONFIG_ARCH_UNIPHIER is enabled, but not all of them actually work. For example, when U-Boot is compiled for ARM 32 bit, 64 bit DT files are also built, and vice versa. Compile only the combination that makes sense. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: add macro to generate SoC data look-up functionMasahiro Yamada2017-01-22-33/+23
| | | | | | | | | | | | | | | | There are similar functions that look up SoC data by the SoC ID. The new macro UNIPHIER_DEFINE_SOCDATA_FUNC will be helpful to avoid the code duplication. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: simplify SoC ID get functionMasahiro Yamada2017-01-22-317/+214
| | | | | | | | | | | | | | | | | | | | Currently, uniphier_get_soc_type() converts the SoC ID (this is read from the revision register) to an enum symbol to use it for SoC identification. Come to think of it, there is no need for the conversion in the first place. Using the SoC ID from the register as-is a straightforward way. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: replace <common.h> with <linux/delay.h> where possibleMasahiro Yamada2017-01-22-4/+5
| | | | | | | | | | | | | | | | | | The <common.h> includes too many headers. Actually, these files needed to include it for udelay() declaration. Now we can replace it with <linux/delay.h> thanks to commit 5bc516ed661a ("delay: collect {m, n, u}delay declarations to include/linux/delay.h"). Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: replace <linux/err.h> with <linux/errno.h>Masahiro Yamada2017-01-22-14/+16
| | | | | | | | | | | | | | | | These files only need error number macros. Actually, IS_ERR(), PTR_ERR(), ERR_PTR(), etc. are not useful for U-Boot. Avoid unnecessary header includes. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: add uniphier_v8_defconfigMasahiro Yamada2017-01-22-0/+34
| | | | | | | | | | | | | | | | This defconfig does not support SPL. If you use this, the basic SoC initialization must be done in firmware that runs before U-Boot. (Generally, ARM Trusted Firmware is expected to do this job). Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: make SPL optional for ARVv8 SoCsMasahiro Yamada2017-01-22-30/+56
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | We may want to run different firmware before running U-Boot. For example, ARM Trusted Firmware runs before U-Boot, making U-Boot a non-secure world boot loader. In this case, the SoC might be initialized there, which enables us to skip SPL entirely. This commit removes "select SPL" to make it configurable. This also enables the Multi SoC support for the UniPhier ARMv8 SoCs. (CONFIG_ARCH_UNIPHIER_V8_MULTI) Thanks to the driver model and Device Tree, the U-Boot proper part is now written in a generic way. The board/SoC parameters reside in DT. The Multi SoC support increases the memory footprint a bit, but the U-Boot proper does not have strict memory constraint. This will mitigate the per-SoC (sometimes per-board) defconfig burden. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: add missing static and const qualifierMasahiro Yamada2017-01-22-3/+3
| | | | | | | | | | | | These are file-internal and constant. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: fix delay fixup code in LD11 UMC initKotaro Hayashi2017-01-22-0/+1
| | | | | | | | | | | | | | | | | | The ddrphy_shift_rof_hws() never writes back the shifted delay value to the register, which makes this function non-effective. Signed-off-by: Kotaro Hayashi <hayashi.kotaro@socionext.com> [masahiro: add git log] Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
| * ARM: uniphier: update UMC_MEMMAPSET value for LD20 SoCWataru Okoshi2017-01-22-2/+2
| | | | | | | | | | | | | | Change bnk_typ's value from 8 to 0 (for G1's performance). Signed-off-by: Wataru Okoshi <okoshi.wataru@socionext.com> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
* | travis-ci: Split p1_p2_rdb_pc and p1010rdb into separate jobsTom Rini2017-01-21-1/+3
|/ | | | | | | On occasion the job that does these two build types will hit the time limit so split this in two. Signed-off-by: Tom Rini <trini@konsulko.com>
* status_led: Kconfig migrationUri Mashiach2017-01-21-454/+486
| | | | | | | | | | | | | Move all of the status LED feature to drivers/led/Kconfig. The LED status definitions were moved from the board configuration files to the defconfig files. TBD: Move all of the definitions in the include/status_led.h to the relevant board's defconfig files. Tested boards: CL-SOM-AM57x, CM-T335 Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
* status_led: Kconfig migration - introductionUri Mashiach2017-01-21-34/+355
| | | | | | | | | Move all of the status LED feature to drivers/led/Kconfig. doc/README.LED updated to reflect the Kconfig implementation. Tested boards: CL-SOM-AM57x, CM-T335 Signed-off-by: Uri Mashiach <uri.mashiach@compulab.co.il>
* config: Move CONFIG_BOARD_LATE_INIT to defconfigsJagan Teki2017-01-21-280/+338
| | | | | Cc: Tom Rini <trini@konsulko.com> Signed-off-by: Jagan Teki <jagan@openedev.com>
* common: Kconfig: Add BOARD_LATE_INIT entryJagan Teki2017-01-21-0/+10
| | | | | | | This patch add Kconfig entry for CONFIG_BOARD_LATE_INIT Cc: Tom Rini <trini@konsulko.com> Signed-off-by: Jagan Teki <jagan@openedev.com>
* mx6saberesd_spl: Correct falcon mode additionTom Rini2017-01-20-2/+3
| | | | | | | | | | | | When falcon mode support was added, it was right around when SPL_OS_BOOT was migrated to Kconfig. So first we must move the enablement to the defconfig file. Next, it turned off EXT support rather than add the information to allow for falcon mode from EXT. Add this information so that the board compiles after 5d28b930f237. Fixes: d96796ca23b2 ("mx6sabresd: Add Falcon mode support") Cc: Fabio Estevam <fabio.estevam@nxp.com> Signed-off-by: Tom Rini <trini@konsulko.com>
* bootm: qnx: Disable data cache before booting QNX imageEmmanuel Vadot2017-01-20-11/+12
| | | | | | | | Instead of disabling the data cache in the bootelf command, disabling it in the do_bootm_qnxelf function. Some ELF binary might want the cache enabled. Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
* tools: mkimage: fix sizeof_mismatch found by coveritySven Ebenfeld2017-01-20-1/+1
| | | | | Reported-by: Coverity (CID: 155214) Signed-off-by: Sven Ebenfeld <sven.ebenfeld@gmail.com>
* ARM: OMAP5+: Remove unsed dpll structuresLokesh Vutla2017-01-20-55/+4
| | | | | | | | Latest gcc compile strted complaining about defined structure definition that are not used. Remove the unused sturctures. Reported-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
* ARM: OMAP4: Fix compiler warningLokesh Vutla2017-01-20-1/+3
| | | | | | | | | | | Latest gcc 6.2 compiler is throwing the below warning for omap4_panda_defconfig arch/arm/mach-omap2/omap4/hw_data.c:136:3: warning: 'abe_dpll_params_sysclk_196608khz' defined but not used [-Wunused-const-variable=] abe_dpll_params_sysclk_196608khz[NUM_SYS_CLKS] = { Fix this by guarding it with CONFIG_SYS_OMAP_ABE_SYSCK Reported-by: Dan Murphy <dmurphy@ti.com> Signed-off-by: Lokesh Vutla <lokeshvutla@ti.com>
* binman: add tools directory to the python pathEmmanuel Vadot2017-01-20-0/+1
| | | | | | | | The built _libfdt.so is placed in the /tools dir and need to say here as it contains relative paths. Add the directory to the python path so binman can use this module. Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
* build: Always build the libfdt python moduleEmmanuel Vadot2017-01-20-1/+1
| | | | | | | Do not rely on CONFIG_SPL_OF_PLATDATA to build the libfdt python module. If swig is present, this will be build Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
* MAINTAINERS: DFU: Change e-mail address of DFU maintanierLukasz Majewski2017-01-20-1/+1
| | | | Signed-off-by: Lukasz Majewski <lukma@denx.de>
* odroid-c2: Enable distro bootAndreas Färber2017-01-20-1/+17
| | | | | | | | | | | Use the generic "distro" boot framework to enable automatic DHCP boot. MMC and USB are not yet implemented, so this is the only boot option. The fdt and kernel addresses are adopted from downstream; ramdisk and scriptaddr addresses were chosen arbitrarily. Signed-off-by: Andreas Färber <afaerber@suse.de> Reviewed-by: Alexander Graf <agraf@suse.de>
* meson: misc_init_r is board-specificAndreas Färber2017-01-20-1/+2
| | | | | | | Move it from meson-gxbb-common.h to odroid-c2.h to allow new boards not to implement it. Signed-off-by: Andreas Färber <afaerber@suse.de>
* board_init.c: Always use memset()Tom Rini2017-01-20-18/+0
| | | | | | | | | | We can make the code read more easily here by simply using memset() always as when we don't have an optimized version of the function we will still have a version of this function around anyhow. Cc: Simon Glass <sjg@chromium.org> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* ARM: Default to using optimized memset and memcpy routinesTom Rini2017-01-20-6/+48
| | | | | | | | | | | | | | | | | | | | | | We have long had available optimized versions of the memset and memcpy functions that are borrowed from the Linux kernel. We should use these in normal conditions as the speed wins in many workflows outweigh the relatively minor size increase. However, we have a number of places where we're simply too close to size limits in SPL and must be able to make the size vs performance trade-off in those cases. Cc: Philippe Reynes <tremyfr@yahoo.fr> Cc: Eric Jarrige <eric.jarrige@armadeus.org> Cc: Heiko Schocher <hs@denx.de> Cc: Magnus Lilja <lilja.magnus@gmail.com> Cc: Lokesh Vutla <lokeshvutla@ti.com> Cc: Chander Kashyap <k.chander@samsung.com> Cc: Akshay Saraswat <akshay.s@samsung.com> Cc: Simon Glass <sjg@chromium.org> Cc: Stefan Roese <sr@denx.de> Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Stefan Roese <sr@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
* mach-omap2: Fix secure boot media generationAndrew F. Davis2017-01-20-5/+1
| | | | | | | | | | | While moving OMAP related files to mach-omap2 the functionality relating to generating secure boot files was modified. This change prevents secure platforms other than AM33xx and OMAP54XX from correctly building files for all needed media types. Fixes: 983e37007da5 ("arm: Introduce arch/arm/mach-omap2 for OMAP2 derivative platforms") Signed-off-by: Andrew F. Davis <afd@ti.com> Acked-by: Lokesh Vutla <lokeshvutla@ti.com>
* spl: Add some missing newlinesAndrew F. Davis2017-01-20-2/+2
| | | | | | Signed-off-by: Andrew F. Davis <afd@ti.com> Acked-by: Lokesh Vutla <lokeshvutla@ti.com> Acked-by: Michal Simek <michal.simek@xilinx.com>
* spl: Remove inline ifdef check for EXT and FAT supportAndrew F. Davis2017-01-20-4/+0
| | | | | | | | | | These files are only included for build by the make system when CONFIG_SPL_{EXT,FAT}_SUPPORT is enabled, remove the unneed checks for these in the source files. Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org>
* common/image.c: Use correct suffixes for binary sizesxypron.glpk@gmx.de2017-01-20-1/+1
| | | | | | | | | | | | | | IEC 80000-13:2008 Quantities and units Part 13: Information science and technology defines the prefixes to use for binary multiples. So instead of writing Data Size: 6726132 Bytes = 6568.49 kB = 6.41 MB in dumpimage we should write Data Size: 6726132 Bytes = 6568.49 KiB = 6.41 MiB. Signed-off-by: Heinrich Schuchardt <xypron.glpk@gmx.de>
* api: storage: Test all block device in dev_stor_getEmmanuel Vadot2017-01-20-64/+34
| | | | | | | | | | | In a config with one MMC at device id '1' and no MMC at device id '0' (a BeagleBone Black with no sd inserted for example), the current code will first test to access the MMC 0 (sd port), seeing that no device is present it will simply return that no more device are present for this class. This patch fixes this by testing all devices for each class. Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com>
* api: Use hashtable function for API_env_enumEmmanuel Vadot2017-01-20-29/+31
| | | | | | | | | | The current code can loop undefinitly as it doesn't parse correctly the env data. Since the env is an hashtable, use the hashtable function for the API_ENV_ENUM api call. Signed-off-by: Emmanuel Vadot <manu@bidouilliste.com> Reviewed-by: Simon Glass <sjg@chromium.org>