summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2016-10-30sunxi: Enable SPL support for A80 Optimus boardChen-Yu Tsai
The A80 Optimus Board was launched with the Allwinner A80 SoC. It was jointly developed by Allwinner and Merrii. This board has a UART port, a JTAG connector, 2 USB host ports, a USB 3.0 OTG connector, an HDMI output, a micro SD slot, 16G eMMC flash, 2G DRAM, a camera sensor interface, a WiFi/BT combo chip, a headphone jack, IR receiver, and additional GPIO headers. Signed-off-by: Chen-Yu Tsai <wens@csie.org> [hdegoede@redhat.com: update existing Merrii_A80_Optimus_defconfig instead of adding a new defconfig] Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: Add default zq value for sun9i (A80)Chen-Yu Tsai
Both the A80 Optimus board and the Cubieboard 4 use a zq value of 4145117, or 0x3f3fdd. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: Add support for SID e-fuses on sun9iChen-Yu Tsai
The A80 has SID e-fuses. Like other newer SoCs, the actual e-fuses are at an offset of 0x200 within the SID address space. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: Set default CPU clock rate to 1008 MHz for sun9i (A80)Chen-Yu Tsai
In Allwinner's SDK the A80 is clocked to 1008 MHz by default. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: add MMC pinmux setup for SDC2 on sun9iPhilipp Tomsich
The A80 can support 8-bit eMMC with reset on the PC pingroups. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: enable SPL for sun9iPhilipp Tomsich
Now that DRAM initialization and clock setup is supported, we can enable SPL for the A80. [wens@csie.org: Added commit message] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: add initial clock setup for sun9i for SPLPhilipp Tomsich
This is a cleaned up version set_pll() from Allwinner's boot0 source (bootloader/basic_loader/bsp/bsp_for_a80/common/common.c). [wens@csie.org: Added commit message; style cleanup] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: Enable SMP mode for the boot CPU on sun9i (A80)Philipp Tomsich
Since the A80 has many cores which we intend to use in SMP fashion, we should set the SMP bit for the boot CPU. [wens@csie.org: Added commit message] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: add gtbus-initialisation for sun9iPhilipp Tomsich
On sun9i, the GTBUS manages transaction priority and bandwidth for multiple read ports when accessing DRAM. The initialisation mirrors the settings from Allwinner's boot0 for now, even though this may not be optimal for all applications (e.g. headless systems might want to give priority to IO modules). Adding a common callout to gtbus_init() from the SPL clock init with a weakly defined implementation in sunxi/clock.c to fallback to for platforms that don't require this. [wens@csie.org: Moved gtbus_sun9i.c to arch/arm/mach-sunxi/; style cleanup] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: DRAM initialisation for sun9iPhilipp Tomsich
This adds DRAM initialisation code for sun9i, which calculates the appropriate timings based on timing information for the supplied DDR3 bin and the clock speeds used. With this DRAM setup, we have verified DDR3 clocks of up to 792MHz (i.e. DDR3-1600) on the A80-Q7 using a dual-channel configuration. [wens@csie.org: Moved dram_sun9i.c to arch/arm/mach-sunxi/; style cleanup] Signed-off-by: Chen-Yu Tsai <wens@csie.org> [hdegoede@redhat.com: Drop some huge non-documenting #if 0 ... #endif blocks] [hdegoede@redhat.com: Fix checkpatch warnings] Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30tools: add mksunxiboot to tools-all targetStefan Brüns
mksunxiboot is useful outside of u-boot, it is e.g. used by sunxi-tools. Signed-off-by: Stefan Brüns <stefan.bruens@rwth-aachen.de> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: A64: enable USB supportAmit Singh Tomar
Mostly by adding MACH_SUN50I to some existing #ifdefs enable support for the the HCI0 USB host controller on the A64. Fix up some minor 64-bit hiccups on the way. Add the bare minimum DT bits to the A64 .dtsi and enable the controllers and the PHY on the Pine64. This is limited to the first USB controller at the moment, which is connected to the lower USB socket on the Pine64 board. [Andre: remove unneeded defines, enable OHCI, add commit message] Signed-off-by: Amit Singh Tomar <amittomer25@gmail.com> Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: Update DRAM clock for Olimex A20 boardsStefan Mavrodiev
Originally dram clock was set to 480MHz, but this behaves unstable. To improve stability the clock is reduced to 384MHz Signed-off-by: Stefan Mavrodiev <stefan.mavrodiev@gmail.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: dts: Pine64: add Ethernet aliasAndre Przywara
The sun8i-emac driver works fine with the A64 Ethernet IP, but we are missing an alias entry to trigger the driver instantiation by U-Boot. Add the line to point U-Boot to the Ethernet DT node. This enables TFTP boot on the Pine64. Signed-off-by: Andre Przywara <andre.przywara@arm.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: remove unneeded CONFIG_USB_MAX_CONTROLLER_COUNT definesMasahiro Yamada
ARCH_SUNXI selects DM_USB, where CONFIG_USB_MAX_CONTROLLER_COUNT is not used. Signed-off-by: Masahiro Yamada <yamada.masahiro@socionext.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-30sunxi: Rename CONFIG_SUNXI to CONFIG_ARCH_SUNXIJagan Teki
CONFIG_SUNXI -> CONFIG_ARCH_SUNXI and removed CONFIG_SUNIX from config_whitelist.txt Cc: Simon Glass <sjg@chromium.org> Cc: Ian Campbell <ijc@hellion.org.uk> Cc: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Jagan Teki <jteki@openedev.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
2016-10-29configs/chromebox_panther_defconfig: Re-enable CONFIG_DM_PCITom Rini
This was turned off by accident, re-enble. Signed-off-by: Tom Rini <trini@konsulko.com>
2016-10-29MAINTAINERS: Update Jagan's emailJagan Teki
Signed-off-by: Jagan Teki <jagan@openedev.com>
2016-10-29travis-ci: build Tegra boardsStephen Warren
ARMv7 Tegra boards aren't currently covered by any other travis-ci jobs. Add a new job to build them. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Tom Rini <trini@konsulko.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-29travis-ci: compile with buildman when running test/pyStephen Warren
Use buildman to compile any U-Boot binary tested by test/py. This re-uses all the work done elsewhere to make buildman work within Travis-CI, in particular related to toolchain downloading and buildman config file creation. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-29travis-ci: don't invoke exit on successStephen Warren
Invoking exit prevents any subsequent build commands from running, and future patches will add extra commands. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-29travis-ci: use buildman -P everywhereStephen Warren
This places build results into a board-specific directory rather than a buildman-thread-specific directory. This is required so that we can access the directory from test.py, and there's no risk of a particular build's results being over-written by another build performed by the same thread. In theory, this can lead to slower builds when building many different boards in a single buildman thread, since it removes the possibility of incremental builds between boards. In practice however I didn't notice longer build times when when enabling this option; if anything build times decreased although I suspect that's simply due to general variations in build performance across different machines within the Travis CI infra-structure. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-29travis-ci: centralize ~/.buildman editingStephen Warren
Any time an x86 toolchain is used, we need to edit ~/.buildman to reference it. Move the editing logic into a central place so that it doesn't have to be duplicated everywhere that uses the x86 toolchain; future patches will add additional cases where it's used. It would be nice if we could unconditionally write all of ~/.buildman at once. Unfortunately, buildman fails if any toolchain mentioned in a toolchain-prefix entry doesn't exist, even if it doesn't need to use it for the current build. The sandbox/x86 build definition currently does nothing more than edit ~/.buildman; no builds are run. Fix this by not defining a custom script for this build, and hence preventing that stanza from replacing the default script. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-29travis-ci: use correct exit code on errorsStephen Warren
The phrase "if [ $? -ne 0 ]; then exit $?; fi" doesn't work correctly; by the time the "exit" statement runs, $? has already been over-written by the result of the [ command. Fix this by explicitly storing $? and then using that stored value in both the test and the error-case exit statement. This change also converts from textual comparison to integer comparison, since the exit code is an integer and there's no need to convert it to a string for comparison. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-29travis-ci: Use = not : when writing ~/.buildmanStephen Warren
Travis CI seems to be confused when there's a colon in an echo command, and this is currently worked around using a variable that contains the text we want to echo. Use = syntax instead so that we can remove the work-around; it's rather confusing until you find out what it's for. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-29travis-ci: remove duplicate buildStephen Warren
There were two sub-jobs to build arm1136. Remove the duplicate. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2016-10-29travis-ci: set env vars to name jobsStephen Warren
Travis CI names sub-jobs after the first environment variable that is set for a script. This doesn't produce meaningful results for any of the non- buildman jobs. Add a dummy variable to give the jobs meaningful names. Signed-off-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Tom Rini <trini@konsulko.com>
2016-10-28Merge branch 'master' of git://git.denx.de/u-boot-atmelTom Rini
2016-10-28dm: at91: Add driver model support for the spi driverWenyou Yang
Add driver model support while retaining the existing legacy code. This allows the driver to support boards that have converted to driver model as well as those that have not. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org> Acked-by: Stephen Warren <swarren@nvidia.com>
2016-10-28board: sama5d2_xplained: Enable an early debug UARTWenyou Yang
Enable an early debug UART to debug problems when an ICE or other debug mechanism is not available. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Andreas Bießmann <andreas.devel@googlemail.com>
2016-10-28board: sama5d2_xplained: Set 'ethaddr' got from AT24MACWenyou Yang
If 'ethaddr' is not set, we will get the ethernet address from AT24MAC, and set it to 'ethaddr' variable. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Signed-off-by: Songjun Wu <songjun.wu@microchip.com> Reviewed-by: Andreas Bießmann <biessmann@corscience.de>
2016-10-28board: sama5d2_xplained: Clean up codeWenyou Yang
Since the introduction of pinctrl and clk driver, and the dts file, remove unneeded the pin configurations and the clock enabling code. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Andreas Bießmann <andreas.devel@googlemail.com>
2016-10-28board: sama5d2_xplained: Move config options to defconfigsWenyou Yang
Move the config options from the include/configs/sama5d2_xplained.h to configs/sama5d2_xplained_*_defconfig. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Andreas Bießmann <andreas.devel@googlemail.com>
2016-10-28serial: atmel_usart: Support enable an early debug UARTWenyou Yang
Add support to enable an early debug UART for debugging. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
2016-10-28serial: Kconfig: Add ATMEL_USART optionWenyou Yang
Add ATMEL_USART option to support to enable the Atmel usart driver from Kconfig. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
2016-10-28mmc: atmel_sdhci: Remove unnecessary clock callingWenyou Yang
Due to the peripheral and generated clock driver improvement, remove the unnecessary clock calling. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Jaehoon Chung <jh80.chung@samsung.com>
2016-10-28usb: ehci-atmel: Remove unnecessary clock callingWenyou Yang
Due to the peripheral clock driver improvement, remove the unnecessary clock calling. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
2016-10-28i2c: at91_i2c: Change error return -ENODEV to -EINVALWenyou Yang
Change the error return value -ENODEV from to -EINVAL for more reasonable. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-28i2c: at91_i2c: Remove unnecessary clock callingWenyou Yang
Due to the peripheral clock driver improvement, remove the unnecessary clock calling. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Heiko Schocher <hs@denx.de>
2016-10-28gpio: atmel_pio4: Remove unnecessary clock callingWenyou Yang
Due to the peripheral clock driver improvement, remove the unnecessary clock calling. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Acked-by: Stephen Warren <swarren@nvidia.com>
2016-10-28clk: at91: Improve the clock implementationWenyou Yang
For the peripheral clock, provide the clock ops for the clock provider, such as spi0_clk. The .of_xlate is to get the clk->id, the .enable is to enable the spi0 peripheral clock, the .get_rate is to get the clock frequency. The driver for periph32ck node is responsible for recursively binding its children as clk devices, not provide the clock ops. So do the generated clock and system clock. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Acked-by: Stephen Warren <swarren@nvidia.com>
2016-10-28clk: clk-uclass: Assign clk->dev before call .of_xlateWenyou Yang
In order to make clk->dev available in ops->of_xlate() to get the clock ID from the 'reg' property of the clock node, assign the clk->dev before calling ops->of_xlate(). Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Acked-by: Stephen Warren <swarren@nvidia.com> Acked-by: Simon Glass <sjg@chromium.org>
2016-10-28ARM: at91/dt: sama5d2: Fix the warning from dtcWenyou Yang
Fix the warning from dtc like, ---8<---- Warning (unit_address_vs_reg): Node /ahb/apb/pmc@f0014000/periph64ck/sdmmc0_hclk has a reg or ranges property, but no unit name --->8---- Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Acked-by: Stephen Warren <swarren@nvidia.com>
2016-10-28clk: at91: Fix at91-pmc and at91-sckc's class IDWenyou Yang
The at91-pmc and at91-sckc aren't the clock providers, change their class ID from UCLASS_CLK to UCLASS_SIMPLE_BUS, they also don't need to bind the child nodes explicitly, the .post_bind callback of simple_bus uclass will do it for them. Signed-off-by: Wenyou Yang <wenyou.yang@atmel.com> Acked-by: Stephen Warren <swarren@nvidia.com> Reviewed-by: Simon Glass <sjg@chromium.org>
2016-10-28AT91: Correct misspelling of "redundent" in partition namesRobert P. J. Day
Signed-off-by: Robert P. J. Day <rpjday@crashcourse.ca> Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
2016-10-28arm, at91: add icache supportHeiko Schocher
add at least icache support for at91 based boards. This speeds up NOR flash access on an at91sam9g15 based board from 15.2 seconds reading 8 MiB from a SPI NOR flash to 5.7 seconds. Signed-off-by: Heiko Schocher <hs@denx.de> Reviewed-by: Simon Glass <sjg@chromium.org> Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
2016-10-28ARM: at91: clock: correct PRES offset for at91sam9x5Heiko Schocher
on at91sam9x5 PRES offset is 4 in the PMC master clock register. Signed-off-by: Heiko Schocher <hs@denx.de> Acked-by: Wenyou Yang <wenyou.yang@atmel.com> Acked-by: Andreas Bießmann <andreas@biessmann.org>
2016-10-28arm: at91: mpddrc: add missing MPDDRC_MD definesHeiko Schocher
add missing MPDDRC_MD defines Signed-off-by: Heiko Schocher <hs@denx.de> Acked-by: Wenyou Yang <wenyou.yang@atmel.com> Reviewed-by: Andreas Bießmann <andreas@biessmann.org>
2016-10-28Merge branch 'master' of git://www.denx.de/git/u-boot-imxTom Rini
Signed-off-by: Tom Rini <trini@konsulko.com> Conflicts: common/Kconfig configs/dms-ba16_defconfig
2016-10-28Merge branch 'master' of http://git.denx.de/u-boot-mmcTom Rini