summaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2016-09-22Merge branch 'master' of git://git.denx.de/u-boot-uniphierTom Rini31-285/+469
2016-09-22ARM: dts: uniphier: sync clock/reset controller nodes with LinuxMasahiro Yamada13-181/+301
Sync device trees with Linux for easier DT life. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2016-09-22clk: uniphier: allow to have clock node under syscon nodeMasahiro Yamada1-9/+9
To sync the DT binding with Linux, the register base must be taken from the parent syscon node. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2016-09-22clk: uniphier: move U_BOOT_DRIVER entry to core codeMasahiro Yamada3-75/+74
Move U_BOOT_DRIVER() entry from the data file (clk-uniphier-mio.c) to the core support file (clk-uniphier-core.c) because I do not want to repeat the driver boilerplate when I add more clock data. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2016-09-22clk: uniphier: constify clock data arrays/structuresMasahiro Yamada3-9/+9
Clarify these clock data are constant. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2016-09-22ARM: uniphier: add PLL init code for LD11 SoCMasahiro Yamada7-7/+71
- Initialize PLLs (SPL initializes only DPLL to save the precious SPL memory footprint) - Adjust CPLL/MPLL to the final tape-out frequency - Set the Cortex-A53 clock to the maximum frequency since it is running at 500MHz (SPLL/4) on startup Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com>
2016-09-22ARM: uniphier: move CONFIG_SPL_* to defconfig or selectMasahiro Yamada8-15/+16
As I repeated in the ML, I am unhappy with config entries with bare defaults. Kick them out of arch/arm/mach-uniphier/Kconfig. Currently, CONFIG_SPL_SERIAL_SUPPORT is not user-configurable (build fails without it), but it should be fixed later anyway, so I am moving CONFIG_SPL_SERIAL_SUPPORT to defconfigs. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2016-09-22Merge branch 'master' of git://git.denx.de/u-boot-spiTom Rini16-208/+188
2016-09-22Merge branch 'master' of git://www.denx.de/git/u-boot-microblazeTom Rini23-31/+563
2016-09-22Makefile: rm u-boot.cfg dependencies are missingStephen Warren2-0/+22
Prior to the previous patch, a freshly created .u-boot.cfg.cmd may not correctly represent all dependencies for u-boot.cfg. The previous change only solved this issue for fresh builds; when performing an incremental build, the deficient .u-boot.cfg.cmd is already present, so u-boot.cfg is not rebuilt, and hence .u-boot.cfg.cmd is not rebuilt with the correct content. Solve this by explicitly detecting when the dependency file .u-boot.cfg.d has not been integrated into .u-boot.cfg.cmd, and force u-boot.cfg to be rebuilt in this case by deleting it first. This is possible since if_changed_dep will always delete .u-boot.cfg.d when it executes successfully, so its presence means either that the previous build was made by a source tree that contained a Makefile that didn't include the previous patch, or that the build failed part way through executing if_changed_dep for u-boot.cfg. Forcing a rebuild of u-boot.cfg is required in the former case, and will cause no additional work in the latter case, since the file would be rebuilt anyway for the same reason it was being rebuilt by the previous build. Signed-off-by: Stephen Warren <swarren@nvidia.com>
2016-09-22Makefile: use if_change_dep for u-boot.cfgStephen Warren2-2/+2
cmd_cpp_cfg generates a dependency output, but because it's invoked using if_changed rather than if_changed_dep, that dependency file is ignored. This results in Kbuild not knowing about which files u-boot.cfg depends on, so it may not be rebuilt when required. A practical result of this is that u-boot.cfg may continue to reference CONFIG_ options that no longer exist in the source tree, and this can cause the adhoc config options check to fail. This change modifies Makefile to use if_changed_dep, which in turn causes all dependencies to be known to the next make invocation. Signed-off-by: Stephen Warren <swarren@nvidia.com>
2016-09-22test/py/tests/test_vboot.py: Add check that we boot the imageTom Rini1-6/+10
Make sure that when we're telling bootm to boot an image, and we expect the image to boot we get the output from sandbox that we attempted to run Linux and that U-Boot completed its job. Cc: Simon Glass <sjg@chromium.org> Cc: Stephen Warren <swarren@nvidia.com> Signed-off-by: Tom Rini <trini@konsulko.com> Reviewed-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com>
2016-09-22image-fit: Fix fit_get_node_from_config semanticsPaul Burton3-3/+3
Commit bac17b78dace ("image-fit: switch ENOLINK to ENOENT") changed fit_get_node_from_config to return -ENOENT when a property doesn't exist, but didn't change any of its callers which check return values. Notably it didn't change boot_get_ramdisk, which leads to U-Boot failing to boot FIT images which don't include ramdisks with the following message: Ramdisk image is corrupt or invalid It also didn't take into account that by returning -ENOENT to denote the lack of a property we lost the ability to determine from the return value of fit_get_node_from_config whether it was the property or the configuration node that was missing, which may potentially lead callers to accept invalid FIT images. Fix this by having fit_get_node_from_config return -EINVAL when the configuration node isn't found and -ENOENT when the property isn't found, which seems to make semantic sense. Callers that previously checked for -ENOLINK are adjusted to check for -ENOENT, which fixes the breakage introduced by commit bac17b78dace ("image-fit: switch ENOLINK to ENOENT"). The only other user of the return fit_get_node_from_config return value, indirectly, is bootm_find_os which already checked for -ENOENT. From a read-through of the code I suspect it ought to have been checking for -ENOLINK prior to bac17b78dace ("image-fit: switch ENOLINK to ENOENT") anyway, which would make it right after this patch, but this would be good to get verified by someone who knows this x86 code or is able to test it. Signed-off-by: Paul Burton <paul.burton@imgtec.com> Cc: Jonathan Gray <jsg@jsg.id.au> Cc: Marek Vasut <marex@denx.de> Acked-by: Marek Vasut <marex@denx.de> Acked-by: Stefan Roese <sr@denx.de> Acked-by: George McCollister <george.mccollister@gmail.com> Tested-by: George McCollister <george.mccollister@gmail.com>
2016-09-22clk: rk3288: add PWM clock get rateKever Yang1-0/+2
This patch add clk_get_rate for PWM device. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22clk: rk3399: add pmucru controller supportKever Yang1-4/+173
pmucru is a module like cru which is a clock controller manage some PLL and module clocks. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22rk3399: add a empty "sys_proto.h" header fileKever Yang1-0/+10
driver/usb/dwc3/gadget.c need a "sys_proto.h" header file, add a empty one to make compile success. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22rockchip: rk3288: skip lowlevel_init processXu Ziyuan3-8/+1
lowlevel_init() is never needed for rk3288, so drop it. Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org> Tested-by: Simon Glass <sjg@chromium.org>
2016-09-22board: evb-rk3399: enable usb 2.0 host vbus power on board_initKever Yang1-1/+14
rk3399 using one gpio control signal for two usb 2.0 host port, it's better to enable the power in board file instead of in usb driver. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22config: evb-rk3399: enable fixed regulatorKever Yang1-0/+2
This patch enable fixed regulator driver for rk3399 evb. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22dts: rk3399-evb: add regulator-fixed for usb host vbusKever Yang1-0/+6
rk3399 evb using one gpio to enable 5V output for both USB 2.0 host port, let's use fixed regulator for them. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22dts: rk3399: add dwc3_typec node for rk3399MengDongyang2-0/+53
rk3399 has two dwc3 controller for type-C port, add the dts node and enable them. Signed-off-by: MengDongyang <daniel.meng@rock-chips.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22config: rk3399: add usb related configsMengDongyang2-0/+19
This patch to enable configs for usb module - xhci - ehci - usb storage - usb net Signed-off-by: MengDongyang <daniel.meng@rock-chips.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Squashed in patch to move to Kconfig: https://patchwork.ozlabs.org/patch/672543/ Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22usb: host: add Kconfig for USB_XHCI_ROCKCHIPKever Yang1-0/+7
Add a Kconfig for Rockchip xhci controller. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Marek Vasut <marex@denx.de>
2016-09-22rockchip: select DM_USB for rockchip SoCMengDongyang1-0/+1
Select DM_USB to compatible with USB DM driver model. Signed-off-by: MengDongyang <daniel.meng@rock-chips.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22usb: xhci-rockchip: add rockchip dwc3 controller driverMengDongyang3-0/+226
This patch add support for rockchip dwc3 controller, which corresponding to the two type-C port on rk3399 evb. Only support usb2.0 currently for we have not enable the usb3.0 phy driver and PD(fusb302) driver. Signed-off-by: MengDongyang <daniel.meng@rock-chips.com> Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Reviewed-by: Marek Vasut <marex@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org>
2016-09-22rk3288: add arch_cpu_init for rk3288Kever Yang2-0/+20
We do some SoC level one time setting initialization in arch_cpu_init. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22rk_pwm: remove grf setting code from driverKever Yang1-11/+0
We consider the grf setting for pwm controller select as the system operation instead of driver operation, move it to soc init, let's remove it from pwm driver first. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22rk_pwm: use clock framework API to get module clockKever Yang1-3/+14
This patch use clock API instead of hardcode for get pwm clock. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org> Fix printf() to debug() nit: Signed-off-by: Simon Glass <sjg@chromium.org>
2016-09-22rockchip: use dummy byte only enable OF_PLATDATAXu Ziyuan1-0/+4
Add a condition to determine the rk3288_sdram_channel size. This patch fixes read sdram_channel property failed from DT on rk3288 boards, which not enable OF_PLATDATA. Signed-off-by: Ziyuan Xu <xzy.xu@rock-chips.com>
2016-09-22dts: rk3399: add pinctrl for sdmmcKever Yang1-0/+37
This patch add pinctrl for sdcard which may not be initialized before uboot. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22rk3399: enable the pwm2/3 pinctrl in board initKever Yang1-1/+30
There is no interrupt line for each PWM which used by pinctrl to get the periph_id, so it's not able to enable the default pinctrl setting by pinctrl framework, let's enable it at board_init(). Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22config: evb-rk3399: enable pinctrl driverKever Yang1-0/+2
This patch enable rk3399 pinctrl driver and gpio driver which is sub-node of pinctrl. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22pinctrl: add driver for rk3399Kever Yang4-0/+770
This patch add pinctrl driver for rk3399. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22rk3399: syscon: add support for pmugrfKever Yang2-0/+2
pmugrf is a module like grf which contain some of the iomux registers and other registers. Signed-off-by: Kever Yang <kever.yang@rock-chips.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-09-22configs: fsl: Move SPI/SPI-FLASH configs to defconfigJagan Teki5-5/+9
Moved FSL_QSPI/SPI/SPI-FLASH configs from include/configs into respective used defconfigs. - CONFIG_FSL_QSPI - CONFIG_SPI_FLASH - CONFIG_SPI_FLASH_BAR - CONFIG_SPI_FLASH_STMICRO Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Jagan Teki <jteki@openedev.com>
2016-09-22spi: Kconfig: Move FSL_QSPI entry to non-dm placeJagan Teki1-7/+7
Since FSL_QSPI driver still supporting non-dm code better to move the Kconfig from DM undefined place. Cc: Stefano Babic <sbabic@denx.de> Reviewed-by: Peng Fan <peng.fan@nxp.com> Signed-off-by: Jagan Teki <jteki@openedev.com>
2016-09-22zynqmp: Remove unnnecessary board config file for dc4Siva Durga Prasad Paladugu2-16/+0
Remove unnecessary board specific config file for DC4 board. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Acked-by: Jagan Teki <jteki@openedev.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Use the same name for atf image everywhereMichal Simek1-1/+1
Use atf-uboot.ub image instead of atf.ub. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Enable CONFIG_AHCI via KconfigMichal Simek5-2/+3
Move CONFIG_AHCI to defconfig. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Add support for chip ID detectionMichal Simek2-0/+100
Chip ID needs to be known for loading bitstream because U-Boot checks ID from bitstream header in BIT format. BIN format is completely unchecked. The chipid is get from ATF via SMC. Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22fpga: xilinx: zynqmp: Add PL bitstream download support for ZynqMPSiva Durga Prasad Paladugu13-0/+301
Add PL bitstream dowload support for ZynqMP Bitstream will be validated by uboot and loaded to PL by invoking an smc instruction to ATF which route this request to PMU FW which will take care of loading it to PL Signed-off-by: Siva Durga Prasad Paladugu <sivadur@xilinx.com> Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Fix USB ulpi phy sequenceMichal Simek1-4/+0
It should be enough to call low(5us)->high pulse for all cases to provide proper reset. There is no need to call high->low->high. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Add support for USB ulpi phy reset via mode pinsMichal Simek2-1/+33
Mode pins can be used as output for reset. Xilinx boards are using this feature as additional way how to reset USB phys and also others chips on the boards. Mode1 is used on all these boards for this feature. Let SPL toggle reset on this pin by default. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Add support for DFU from SPLMichal Simek3-2/+36
SPL needs to have bigger stack size because of USB. Simple malloc needs to be disabled because dfu code requires different allocation functions. There is no space in OCM that's why random place in DDR is used. BOOTD must be disabled because it is causing compilation error. All variables are disabled and used only variables valid for DFU because they are simple huge. Including automatic variables added by CONFIG_ENV_VARS_UBOOT_CONFIG. Hardcode addresses for u-boot, atf, kernel and dtb just for SPL DFU code. Enable SPL DFU for zcu100. Create new usb_dfu_spl variable just to run Linux kernel loaded in SPL. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM: Add new BOOT_DEVICE_DFU boot modeMichal Simek1-0/+1
This enum is needed when SPL_DFU is enabled. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Add USB boot modeMichal Simek1-0/+1
Add USB boot mode. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Move BSS location to the beginning of ramMichal Simek1-2/+2
With SPL_DFU support memory layout needs to be cleanup that's why move bss to the start of memory. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22spi: zynq: Use variable to remove u32 to u64 conversionsMichal Simek1-2/+5
Current code generates warning when it is compiled for arm64: Warnings: In file included from drivers/spi/zynq_spi.c:14:0: drivers/spi/zynq_spi.c: In function ‘zynq_spi_init_hw’: drivers/spi/zynq_spi.c:95:9: warning: large integer implicitly truncated to unsigned type [-Woverflow] writel(~ZYNQ_SPI_ENR_SPI_EN_MASK, &regs->enr); ^ ./arch/arm/include/asm/io.h:146:34: note: in definition of macro ‘writel’ #define writel(v,c) ({ u32 __v = v; __iowmb(); __arch_putl(__v,c); __v; }) ^ drivers/spi/zynq_spi.c: In function ‘zynq_spi_release_bus’: drivers/spi/zynq_spi.c:177:9: warning: large integer implicitly truncated to unsigned type [-Woverflow] writel(~ZYNQ_SPI_ENR_SPI_EN_MASK, &regs->enr); ^ ./arch/arm/include/asm/io.h:146:34: note: in definition of macro ‘writel’ #define writel(v,c) ({ u32 __v = v; __iowmb(); __arch_putl(__v,c); __v; }) ^ This patch is using one variable to do conversion via u32 variable. Signed-off-by: Michal Simek <michal.simek@xilinx.com> Reviewed-by: Jagan Teki <jteki@openedev.com>
2016-09-22ARM64: zynqmp: Fix usb_gadget_handle_interrupt routineMichal Simek1-2/+3
Function is defined in g_dnl.h and have different parameter then it is used. This patch fixes it. Signed-off-by: Michal Simek <michal.simek@xilinx.com>
2016-09-22ARM64: zynqmp: Force certain bootmode for SPLMichal Simek3-0/+57
ZynqMP provides an option to overwrite bootmode setting which can change SPL behavior. For example: boot SPL via JTAG and then SPL loads images from SD. Signed-off-by: Michal Simek <michal.simek@xilinx.com>