summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2017-02-22ARM: uniphier: deassert RST_n of eMMC device for LD11/LD20Masahiro Yamada
For LD11 and LD20 SoCs, the RST_n pin is asserted by default. If the EXT_CSD[162], bit[1:0] (RST_n_ENABLE) is fused, the eMMC device would stay in the reset state until its RST_n pin is deasserted by software. Currently, this is cared by an ad-hoc way because the eMMC hardware reset provider is not supported in U-Boot for now. This code should be re-written once the "mmc-pwrseq-emmc" binding is supported. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: add DRAM PHY clock duty adjustment for LD20 SoCKotaro Hayashi
If the DRAM clock duty does not meet the allowable tolerance, it is marked in an efuse register. If the register is fused, the boot code should compensate for the DRAM clock duty error. Signed-off-by: Kotaro Hayashi <hayashi.kotaro@socionext.com> [masahiro: simplify code, add git-log] Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: remove dram_nr_ch from board parametersMasahiro Yamada
This parameter is redundant because we can know the number of channels by checking if dram_ch[2].size is zero. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: rework spl_boot_device() and related codeMasahiro Yamada
The current implementation has ugly switch statements here and there, and duplicates similar code. Rework it using table lookups for SoC data and reduce code duplication. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: move spl_boot_mode() to a separate fileMasahiro Yamada
The spl_boot_mode() is unrelated to the other code in this file. Besides, this function is only called from common/spl/spl_mmc.c, so it is reasonable to guard with CONFIG_SPL_MMC_SUPPORT. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: move MMC code to a separate fileMasahiro Yamada
Currently, arch/arm/mach-uniphier/boot-mode/boot-mode.c is messed up with unrelated code; there is no reason why the "mmcsetn" command must be placed in this file. Split out the MMC code into arch/arm/mach-uniphier/mmc-first-dev.c. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: disable CONFIG_MTD_NOR_FLASHMasahiro Yamada
This feature is seldom used these days on UniPhier boards. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: dts: uniphier: drop u-boot, dm-pre-reloc from system-bus pinctrl nodeMasahiro Yamada
Since commit 26b09c022ab6 ("ARM: uniphier: move SBC and Support Card init code to U-Boot proper"), SPL does not need pin-mux settings for the System Bus. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: rename second stage loader nameMasahiro Yamada
For the memory footprint reason, the Boot ROM can not load the ARM Trusted Firmware BL1 directly when Trusted Board Boot is enabled. The second stage loader is Socionext's own firmware, so rename it for clarification. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22pinctrl: uniphier: support pin configurationMasahiro Yamada
Support the following DT properties: "bias-disable" "bias-pull-up" "bias-pull-down" "bias-pull-pin-default" "input-enable" "input-disable" My main motivation is to support pull up/down biasing. For Pro5 and later SoCs, the pupdctrl register number is the same as the pinmux number, so this feature can be supported without having big pin tables. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: enable generic EHCI driver for uniphier_v8_defconfigMasahiro Yamada
The LD11 SoC is equipped with USB EHCI controllers. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: remove DRAM base address from board parametersMasahiro Yamada
The base address of each DRAM channel can be calculated from other parameters, so does not need hard-coding. What we need is the size of each DRAM channel and DRAM_SPARSE flag to decide the start address of DRAM channel 1. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: update README.uniphier for latest build instructionMasahiro Yamada
Since commit c0efc3140e75 ("ARM: uniphier: change CONFIG_SPL_PAD_TO to 128KB"), the u-boot.bin should be burned at the offset 0x20000. I missed to update README.uniphier in that commit. Now updating. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: print Support Card info very lateMasahiro Yamada
Since commit 26b09c022ab6 ("ARM: uniphier: move SBC and Support Card init code to U-Boot proper"), the System Bus is initialized by board_init(). The show_board_info() is called from board_init_f() by default, so the revision register of the Micro Support Card may not be accessed at this point. Show its revision after the System Bus is initialized. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: skip memreserve of unused DRAM bank of LD20Masahiro Yamada
Now the "for" loop here iterates on the detected memory banks. It must skip unused DRAM banks. Fixes: c995f3a3c526 ("ARM: uniphier: use gd->bd->bi_dram for memory reserve on LD20 SoC") Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: correct spelling of "invalid"Masahiro Yamada
Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: skip MEMCONF ch2 parsing if CH2_DISABLE bit is setMasahiro Yamada
If SG_MEMCONF_CH2_DISABLE bit is set, the DRAM channel 2 is unused. The register settings for the ch2 should be ignored. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22ARM: uniphier: revive accidentally removed dcache_disable()Masahiro Yamada
Commit a8e6300d483d ("ARM: uniphier: refactor spl_init_board()") accidentally dropped dcache_disable() call. Since then, the SPL of LD11 and LD20 failed to load U-Boot proper. Fixes: a8e6300d483d ("ARM: uniphier: refactor spl_init_board()") Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-22video: mxsfb: Fix reset hang when videomode variable is not presentFabio Estevam
Currently the system hangs when the 'videomode' variable is not present and a reset command is issued: => setenv videomode => saveenv => reset (Board hangs) lcdif_power_down() assumes that the LCDIF controller has been properly configured and enabled, which may not be true. To fix this issue check whether panel.frameAdrs has been initialized and in case it has not been initialized, do not continue with the LCDIF powerdown sequence. Tested on a imx7dsabresd board. Signed-off-by: Fabio Estevam <fabio.estevam@nxp.com> Acked-by: Anatolij Gustschin <agust@denx.de>
2017-02-22Merge git://git.denx.de/u-boot-x86Tom Rini
2017-02-21x86: Intel MID platforms has no microcode updateAndy Shevchenko
There is no microcode update available for SoCs used on Intel MID platforms. Use conditional to bypass it. Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
2017-02-21x86: zImage: add Intel MID platforms supportVincent Tinelli
Intel MID platform boards have special treatment, such as boot parameter setting. Assign hardware_subarch accordingly if CONFIG_INTEL_MID is set. Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Vincent Tinelli <vincent.tinelli@intel.com> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
2017-02-21x86: Introduce INTEL_MID quirk optionAndy Shevchenko
Intel Mobile Internet Device (MID) platforms have special treatment in some cases, such as CPU enumeration or boot parameters configuration. Besides that several drivers are specifically developed for the IP blocks found on Intel MID platforms. Those drivers will be dependent to this option. Here we introduce specific quirk option for such cases. It is supposed to be selected by Intel MID platform boards, for example, Intel Edison. Reviewed-by: Bin Meng <bmeng.cn@gmail.com> Reviewed-by: Simon Glass <sjg@chromium.org> Signed-off-by: Andy Shevchenko <andriy.shevchenko@linux.intel.com>
2017-02-21x86: Force 32-bit jumps in interrupt handlersJ. Tang
Depending upon the compiler used, IRQ entries could vary in sizes. With GCC 5.x, the code generator will use short jumps for some IRQ entries but near jumps for others. For example, GCC 5.4.0 generates the following: $ objdump -d interrupt.o <snip> 00000207 <irq_18>: 207: 6a 12 push $0x12 209: eb 85 jmp 190 <irq_common_entry> 0000020b <irq_19>: 20b: 6a 13 push $0x13 20d: eb 81 jmp 190 <irq_common_entry> 0000020f <irq_20>: 20f: 6a 14 push $0x14 211: e9 7a ff ff ff jmp 190 <irq_common_entry> 00000216 <irq_21>: 216: 6a 15 push $0x15 218: e9 73 ff ff ff jmp 190 <irq_common_entry> This causes a problem in cpu_init_interrupts(), because the IDT setup assumed same sizes for all IRQ entries. GCC 4.x always generated 32-bit jumps, so this previously was not a problem. The fix is to force 32-bit near jumps for all entries within the inline assembly. This works for GCC 5.x, and 4.x was already using that form of jumping. Signed-off-by: Jason Tang <tang@jtang.org> Reviewed-by: Bin Meng <bmeng.cn@gmail.com>
2017-02-18Drop CONFIG_ENABLE_VBOOTTom Rini
This is no longer used anywhere. Signed-off-by: Tom Rini <trini@konsulko.com>
2017-02-17ARM: DRA7xx: Fix memory allocation overflowAndrew F. Davis
When using early malloc the allocated memory can overflow into the SRAM scratch space, move NON_SECURE_SRAM_IMG_END down a bit to allow more dynamic allocation at the expense of a slightly smaller maximum image size. Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-02-17da850: Add instructions to copy AIS image to an MMC cardahaslam@baylibre.com
The da850 soc's can boot from a external mmc card, but the AIS image should be written to the correct sector. Add instructions to copy the AIS image to a MMC card. Signed-off-by: Axel Haslam <ahaslam@baylibre.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-02-17arm: am57xx: Set serial# variableSemen Protsenko
serial# variable is used to correctly display device ID in "fastboot devices". It also can be used further for displaying device ID in "adb devices" (should be passed as "androidboot.serialno" to kernel cmdline, via "bootargs" variable). Serial number generating algorithm is described at [1]. [1] http://lists.denx.de/pipermail/u-boot/2015-March/207462.html Signed-off-by: Sam Protsenko <semen.protsenko@linaro.org> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Lokesh Vutla <lokeshvutla@ti.com>
2017-02-17SPL: Move SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to KconfigDalon Westergreen
Added SYS_MMCSD_RAW_MODE_U_BOOT_USE_PARTITION and SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION to Kconfig. Due to SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION being moved to Kconfig the board defconfigs for db-88f6820-gp_defconfig kc1_defconfig and sniper_defconfig need to be updated. Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
2017-02-17SPL: add support to boot from a partition typeDalon Westergreen
the socfpga bootrom supports mmc booting from either a raw image starting at 0x0, or from a partition of type 0xa2. This patch adds support for locating the boot image in the first type 0xa2 partition found. Assigned a partition number of -1 will cause a search for a partition of type CONFIG_SYS_MMCSD_RAW_MODE_U_BOOT_PARTITION_TYPE and use it to find the u-boot image Signed-off-by: Dalon Westergreen <dwesterg@gmail.com>
2017-02-17arm: omap5: Fix generation of reserved-memory DT nodeAndrew F. Davis
When the node 'reserved-memory' is not defined in the DT we fail to add needed properties. We also fail to move 'offs' to point to the new node. Fix these here. Signed-off-by: Andrew F. Davis <afd@ti.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2017-02-17fsl_i2c.c: Fix warning on gcc-6.xTom Rini
With gcc-6.x we see: drivers/i2c/fsl_i2c.c:86:3: warning: ‘fsl_i2c_speed_map’ defined but not used [-Wunused-const-variable=] The easy way to fix this is that since we only use fsl_i2c_speed_map at all on __M68K__ move the existing guards around slightly. Reported-by: Thomas Schaefer <Thomas.Schaefer@kontron.com> Signed-off-by: Tom Rini <trini@konsulko.com> Acked-by: Heiko Schocher <hs@denx.de>
2017-02-17tools: kwboot: don't adjust destaddr when patching the imageChris Packham
Commit 94084eea3bd3 ("tools: kwbimage: Fix dest addr") changed kwbimage to do this adjustment. So now the adjustment in kwboot is not needed (and would prevent UART booting for images generated by the new kwbimage). Remove the destaddr adjustment in kwboot. Signed-off-by: Chris Packham <judge.packham@gmail.com> Signed-off-by: Stefan Roese <sr@denx.de>
2017-02-17tools: kwbimage: Fix unchecked return value and fd leakMario Six
The return value of fstat was not checked in kwbimage, and in the case of an error, the already open file was not closed. Fix both errors. Reported-by: Coverity (CID: 155971) Reported-by: Coverity (CID: 155969) Signed-off-by: Mario Six <mario.six@gdsys.cc> Signed-off-by: Stefan Roese <sr@denx.de>
2017-02-13Prepare v2017.03-rc2Tom Rini
Signed-off-by: Tom Rini <trini@konsulko.com>
2017-02-13Merge tag 'xilinx-fixes-for-v2017.03' of git://www.denx.de/git/u-boot-microblazeTom Rini
Xilinx fixes for v2017.03 - defconfig alignment - Topic.nl board updates - Minor microblaze comment fix
2017-02-13i2c: sandbox: remove code snippet from Kconfig helpMasahiro Yamada
With the Kconfig re-sync with Linux 4.10, characters such as '}', ';' in Kconfig help message cause warnings: $ make defconfig *** Default configuration is based on 'sandbox_defconfig' drivers/i2c/Kconfig:132:warning: ignoring unsupported character '}' drivers/i2c/Kconfig:132:warning: ignoring unsupported character ';' Drop the Device Tree fragment from the help. Acked-by: Heiko Schocher <hs@denx.de> Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-12kconfig: re-sync with Linux 4.10Masahiro Yamada
Re-sync all files under the scripts/kconfig directory with Linux 4.10. Some parts include U-Boot own modification. I made sure to not revert the following commits: 5b8031ccb4ed ("Add more SPDX-License-Identifier tags") 192bc6948b02 ("Fix GCC format-security errors and convert sprintfs.") da58dec86616 ("Various Makefiles: Add SPDX-License-Identifier tags") 20c20826efab ("Kconfig: Enable usage of escape char '\' in string values") Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-12flash: compile common/flash.c iif CONFIG_MTD_NO_FLASH is enabledMasahiro Yamada
The whole of common/flash.c is guarded by #if defined() ... #endif. Move the conditional to common/Makefile. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-12flash: complete CONFIG_SYS_NO_FLASH move with renamingMasahiro Yamada
We repeated partial moves for CONFIG_SYS_NO_FLASH, but this is not completed. Finish this work by the tool. During this move, let's rename it to CONFIG_MTD_NOR_FLASH. Actually, we have more instances of "#ifndef CONFIG_SYS_NO_FLASH" than those of "#ifdef CONFIG_SYS_NO_FLASH". Flipping the logic will make the code more readable. Besides, negative meaning symbols do not fit in obj-$(CONFIG_...) style Makefiles. This commit was created as follows: [1] Edit "default n" to "default y" in the config entry in common/Kconfig. [2] Run "tools/moveconfig.py -y -r HEAD SYS_NO_FLASH" [3] Rename the instances in defconfigs by the following: find . -path './configs/*_defconfig' | xargs sed -i \ -e '/CONFIG_SYS_NO_FLASH=y/d' \ -e 's/# CONFIG_SYS_NO_FLASH is not set/CONFIG_MTD_NOR_FLASH=y/' [4] Change the conditionals by the following: find . -name '*.[ch]' | xargs sed -i \ -e 's/ifndef CONFIG_SYS_NO_FLASH/ifdef CONFIG_MTD_NOR_FLASH/' \ -e 's/ifdef CONFIG_SYS_NO_FLASH/ifndef CONFIG_MTD_NOR_FLASH/' \ -e 's/!defined(CONFIG_SYS_NO_FLASH)/defined(CONFIG_MTD_NOR_FLASH)/' \ -e 's/defined(CONFIG_SYS_NO_FLASH)/!defined(CONFIG_MTD_NOR_FLASH)/' [5] Modify the following manually - Rename the rest of instances - Remove the description from README - Create the new Kconfig entry in drivers/mtd/Kconfig - Remove the old Kconfig entry from common/Kconfig - Remove the garbage comments from include/configs/*.h Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2017-02-11Merge git://git.denx.de/u-boot-samsungTom Rini
2017-02-11Merge git://git.denx.de/u-boot-rockchipTom Rini
2017-02-10microblaze: Fix endif macro commandMichal Simek
Use correct name in endif comment. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-02-10configs/topic_miami.h: Correct kernel_size in default environmentMike Looijmans
The kernel partition in QSPI is 0x440000 large, not 0x400000. Fix this in the environment, otherwise the kernel will fail to boot if it occupies more space. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-02-10topic_miami(plus) defconfig: Enable DFU RAM supportMike Looijmans
Allow sending firmware to RAM. Without this, the DFU support was not of much use. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-02-10topic_miami_defconfig: Remove NFS and NET supportMike Looijmans
On the miami board, ethernet is accessed via logic. To use it, one would have to program logic first and then set up the rgmii conversion block as well. Not likely to ever be used, so disable network support by default to save some space. Signed-off-by: Mike Looijmans <mike.looijmans@topic.nl> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-02-10xilinx: Align defconfig with current Kconfig orderMichal Simek
Keep all defconfig sorted to ensure the smallest diff. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2017-02-10exynos: Drop large alignment for SDRAM parametersSimon Glass
We don't ever search for these so there is no need for a 4KB alignment. It just wastes space. Drop this and use the standard 4-byte alignment. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com> Signed-off-by: Minkyu Kang <mk7.kang@samsung.com>
2017-02-09Merge branch 'master' of git://git.denx.de/u-boot-videoTom Rini
2017-02-09rockchip: rename miniarm to tinker boardEddie Cai
Miniarm is the internal project code. Now it is officially named Tinker board. So rename it. Signed-off-by: Eddie Cai <eddie.cai@rock-chips.com> Reviewed-by: Simon Glass <sjg@chromium.org>