aboutsummaryrefslogtreecommitdiff
path: root/arch/arm
AgeCommit message (Collapse)AuthorFilesLines
2014-10-26Merge http://git.denx.de/u-boot-sunxiTom Rini17-41/+749
2014-10-26Merge branch 'master' of git://git.denx.de/u-boot-usbTom Rini1-0/+14
2014-10-26Merge git://git.denx.de/u-boot-dmTom Rini14-115/+179
Fix a trivial conflict over adding <dm.h> Conflicts: arch/arm/cpu/armv7/omap3/board.c Signed-off-by: Tom Rini <trini@ti.com>
2014-10-25tegra: add proto for pin_mux_mmcJeroen Hofstee1-5/+6
while at it, fix a typo Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-25arm: vectors: provide protypes from vectors.SJeroen Hofstee2-0/+16
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl> Acked-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
2014-10-25omap3: board: add missing include and protoJeroen Hofstee3-0/+4
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-25lib: bootm: add missing includeJeroen Hofstee1-0/+1
since the vxworks weaks are reimplement make sure their prototypes are visible. Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-25leds: missing includeJeroen Hofstee2-0/+2
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-25imx: add missing includesJeroen Hofstee3-0/+4
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-25arch-mx: add missing includeJeroen Hofstee1-0/+2
mxs_wait_mask_set and friends need a declaration of struct mxs_register_32. Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-25tegra: make local functions staticJeroen Hofstee2-2/+3
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-25omap3: make local functions staticJeroen Hofstee3-3/+3
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl>
2014-10-24arm: board: use __weakJeroen Hofstee1-28/+12
Signed-off-by: Jeroen Hofstee <jeroen@myspectrum.nl> Acked-by: Albert ARIBAUD <albert.u.boot@aribaud.net>
2014-10-24sunxi: Add CONFIG_OLD_SUNXI_KERNEL_COMPAT Kconfig optionHans de Goede1-0/+4
Add a Kconfig option which users can select when they want to boot older kernels, e.g. the linux-sunxi 3.4 kernels. For now this just forces the pll5 "p" value to 1 (divide by 2) as that is what those kernels are hardcoded too, in the future this may enable further workarounds. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Reviewed-by: Tom Rini <trini@ti.com> -- Changes in v2: -s/CONFIG_OLD_KERNEL_COMPAT/CONFIG_OLD_SUNXI_KERNEL_COMPAT. -Move the code block setting P(1) for old kernels to where P gets cleared
2014-10-24sunxi: dram: Use clock_get_pll5p to calculate mbus, rather then hardcodingHans de Goede1-18/+14
This is a preparation patch for making the pll5 "p" divisor configurable through Kconfig. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24sunxi: Add clock_get_pll5p() functionHans de Goede3-0/+15
This is a preparation patch for making the pll5 "p" divisor configurable through Kconfig. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Add support for using R_UART as consoleChen-Yu Tsai4-0/+14
The A23 only has UART0 muxed with MMC0. Some of the boards we encountered expose R_UART as a set of pads. Add support for R_UART so we can have a console while using mmc. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Allow specifying module in prcm apb0 init functionChen-Yu Tsai2-6/+8
The prcm apb0 controls multiple modules. Allow specifying which modules to enable clocks and de-assert resets so the function can be reused. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Add support for R_PIO gpio banksHans de Goede1-2/+29
The A31, A23 and later SoCs have an extra pin controller, called CPUs_PIO or R_PIO, which handles pin banks L and beyond. Also add a clear description about SUNXI_GPIO_BANKS, stating it only counts the number of pin banks in the _main_ pin controller. Signed-off-by: Hans de Goede <hdegoede@redhat.com> [wens@csie.org: expanded commit message] [wens@csie.org: add pin bank M and expand comments] [wens@csie.org: add comment on SUNXI_GPIO_BANKS macro] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Add basic A23 supportChen-Yu Tsai5-2/+10
The basic blocks of the A23 are similar to the A31 (sun6i). Re-use sun6i code for initial clock, gpio, and uart setup. There is no SPL support for A23, as we do not have any documentation or sample code for DRAM initialization. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24mmc: sunxi: Add support for sun8i (A23)Chen-Yu Tsai1-1/+1
The Allwinner A23 SoC has reset controls like the A31 (sun6i). The FIFO address is also the same as sun6i. Re-use code added for sun6i. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Add support for uart0 on port F (mmc0)Chen-Yu Tsai1-1/+10
Allwinner SoCs provide uart0 muxed with mmc0, which can then be used with a micro SD breakout board. On the A23, this is the only way to use uart0. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Add sun8i (A23) UART0 pin mux supportChen-Yu Tsai1-0/+6
UART0 pin muxes on the A23 have a different function value. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Fix reset command on sun6i/sun8iChen-Yu Tsai2-0/+30
The watchdog on sun6i/sun8i has a different layout. Add the new layout and fix up the setup functions so that reset works. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk> [ ijc -- removed sun5i workaround from sun6i/sun8i codepath as discussed ]
2014-10-24ARM: sunxi: Add sun6i/sun8i timer block register definitionChen-Yu Tsai1-0/+6
The RTC hardware has been moved out of the timer block on sun6i/sun8i. In addition, there are more watchdogs available. Also note that the timer block definition is not completely accurate for sun5i/sun7i. Various blocks are missing or have been moved out. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Move watchdog register definitions to separate fileChen-Yu Tsai2-14/+27
On later Allwinner SoCs, the watchdog hardware is by all means a separate hardware block, with its own address range and interrupt line. Move the register definitions to a separate file to facilitate supporting newer SoCs. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24sunxi: Use PG3 - PG8 as io-pins for mmc1Hans de Goede1-0/+2
None of the known sunxi devices actually use mmc1 routed through PH, where as some devices do actually use mmc1 routed through PG, so change the routing of mmc1 to PG. If in the future we encounter devices with mmc1 routed through PH, we will need to change things to be a bit more flexible. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24sunxi: When we've both mmc0 and mmc2, detect from which one we're bootingHans de Goede1-1/+1
sunxi SOCs can boot from both mmc0 and mmc2, detect from which one we're booting, and make that one "mmc dev 0" so that a single u-boot binary can be used for both the onboard eMMC and for external sdcards. When we're booting from mmc2, we make it dev 0 because that is where the SPL will load the tertiary payload (the actual u-boot binary in our case) from, see: common/spl/spl_mmc.c, which has dev 0 hardcoded everywhere. Signed-off-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Add basic A31 supportMaxime Ripard2-0/+5
Add a new sun6i machine that supports UART and MMC. Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> [wens@csie.org: use SPDX labels, adapt to Kconfig system, drop ifdef around mmc and smp code, drop MACH_TYPE] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sun6i: Setup the A31 UART0 muxingMaxime Ripard1-0/+4
Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com> [wens@csie.org: commit message was "ARM: sunxi: Setup the A31 UART0 muxing"] [wens@csie.org: reorder #ifs by SUN?I] [wens@csie.org: replace magic numbers with GPIO definitions] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sun6i: Define UART0 pins for A31Chen-Yu Tsai1-0/+3
UART0 is the default debug/console UART on the A31. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi-mmc: Add mmc support for sun6i / A31Hans de Goede1-1/+4
The mmc hardware on sun6i has an extra reset control that needs to be de-asserted prior to usage. Also the FIFO address is different. Signed-off-by: Hans de Goede <hdegoede@redhat.com> [wens@csie.org: use setbits_le32 for reset control, drop obsolete changes, rewrite different FIFO address handling, add commit message] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sun6i: Add clock supportChen-Yu Tsai4-0/+280
This patch adds the basic clocks support for the Allwinner A31 (sun6i) processor. This code will not been compiled until the build is hooked up in a later patch. It has been split out to keep the patches manageable. This includes changes from the following commits from u-boot-sunxi: a92051b ARM: sunxi: Add sun6i clock controller structure 1f72c6f ARM: sun6i: Setup the UART0 clocks 5f2e712 ARM: sunxi: Enable pll6 by default on all models 2be2f2a ARM: sunxi-mmc: Add mmc support for sun6i / A31 12e1633 ARM: sun6i: Add initial clock setup for SPL 1a9c9c6 ARM: sunxi: Split clock code into common, sun4i and sun6i code 0b194ee ARM: sun6i: Properly setup the PLL LDO in clock_init_safe b54c626 sunxi: avoid sr32 for APB1 clock setup. 68fe29c sunxi: remove magic numbers from clock_get_pll{5,6} c89867d sunxi: clocks: clock_get_pll5 prototype and coding style 501ab1e ARM: sunxi: Fix sun6i PLL6 settings 37f669b ARM: sunxi: Fix macro names for mmc and uart reset offsets 61de1e6 ARM: sunxi: Correct comment for MBUS1 register in sun6i clock definitions Signed-off-by: Maxime Ripard <maxime.ripard@free-electrons.com> Signed-off-by: Ian Campbell <ijc@hellion.org.uk> Signed-off-by: Hans de Goede <hdegoede@redhat.com> [wens@csie.org: styling fixes reported by checkpatch.pl] [wens@csie.org: drop unsupported SPL code block and unused gpio.h header] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Cc: Tom Cubie <Mr.hipboi@gmail.com> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sun6i: Add support for the power reset control module found on the A31Oliver Schinagl3-0/+272
The A31 has a new module called PRCM, or Power, Reset Control Module. This module controls clocks and resets for RTC block modules, and also PLL biasing in the main clock module. This patch adds the register definitions, and also enables the clocks and resets for the RTC block PIO (pin controller) and P2WI (push-pull 2 wire interface) which is used to talk to the PMIC. Signed-off-by: Oliver Schinagl <oliver@schinagl.nl> Signed-off-by: Hans de Goede <hdegoede@redhat.com> [wens@csie.org: spacing fixes reported by checkpatch.pl] [wens@csie.org: Use setbits helper in PRCM init function] [wens@csie.org: rephrase commit message to explain what the hardware supports and what we actually enable] Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sun6i: Add base address for the new controllers in A31Oliver Schinagl1-0/+9
A31 has several new and changed memory address. This patch adds them. Signed-off-by: Oliver Schinagl <oliver@schinagl.nl> Signed-off-by: Hans de Goede <hdegoede@redhat.com> Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-24ARM: sunxi: Use macro values for setting UART GPIO pull-upsChen-Yu Tsai1-3/+3
We have already defined macros for pull-up/down values in the GPIO header. Use them instead of magic numbers when configuring the UART pins. Signed-off-by: Chen-Yu Tsai <wens@csie.org> Acked-by: Ian Campbell <ijc@hellion.org.uk>
2014-10-23dm: serial: use Driver Model for UniPhier serial driverMasahiro Yamada7-0/+72
This commit converts UniPhier on-chip serial driver to driver model. Since UniPhier SoCs do not have Device Tree support, some board files should be added under arch/arm/cpu/armv7/uniphier/ph1-*/ directories. (Device Tree support for UniPhier platform is still under way.) Now the base address and master clock frequency are passed from platform data, so CONFIG_SYS_UNIPHIER_SERIAL_BASE* and CONFIG_SYS_UNIPHIER_UART_CLK should be removed. Tested on UniPhier PH1-LD4 ref board. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Acked-by: Simon Glass <sjg@chromium.org>
2014-10-23dm: dts: Move omap device tree includes to correct placeSimon Glass3-112/+0
These ended up in arch/arm/dts/dt-bindings temporarily, but in fact the correct place is now include/dt-bindings. Move them to be consistent. Signed-off-by: Simon Glass <sjg@chromium.org>
2014-10-23dm: omap3: Move to driver model for GPIO and serialSimon Glass1-1/+25
Adjust the configuration for the am33xx boards, including beagleboard, to use driver model. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Tom Rini <trini@ti.com>
2014-10-23dm: am33xx: Provide platform data for serialSimon Glass1-0/+33
Provide suitable platform data for am33xx boards, so that these boards can use driver model for serial. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
2014-10-23dm: am33xx: Provide platform data for GPIOsSimon Glass1-0/+28
Provide suitable platform data for am33xx boards, so that these boards can use driver model for GPIO access. Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
2014-10-23dm: omap: gpio: Support driver modelSimon Glass1-2/+17
Add driver model support to this driver, while retaining support for the legacy system. Driver model GPIO support is enabled with CONFIG_DM_GPIO as usual. Since gpio_is_valid() no longer exists, we can use the -EINVAL error returned from gpio_request(). Signed-off-by: Simon Glass <sjg@chromium.org> Reviewed-by: Tom Rini <trini@ti.com>
2014-10-23dm: dts: omap: Select correct console for beagleboneSimon Glass1-0/+4
Select serial0 as the console. Signed-off-by: Simon Glass <sjg@chromium.org> Acked-by: Tom Rini <trini@ti.com>
2014-10-23Merge branch 'master' of git://git.denx.de/u-boot-tegraTom Rini12-51/+453
2014-10-23kconfig: move CONFIG_USE_PRIVATE_LIBGCC to KconfigMasahiro Yamada1-0/+3
The private libgcc is supported only on ARM, MIPS, PowerPC, SH, x86. Those architectures should "select" HAVE_PRIVATE_LIBGCC and CONFIG_USE_PRIVATE_LIBGCC should depend on it. Currently, this option is enabled on Tegra boards and x86 architecture. Move the definition from header files to Kconfig. Signed-off-by: Masahiro Yamada <yamada.m@jp.panasonic.com> Tested-by: Simon Glass <sjg@chromium.org> Acked-by: Simon Glass <sjg@chromium.org> Cc: Stephen Warren <swarren@nvidia.com> Cc: Tom Warren <twarren@nvidia.com>
2014-10-23arm: kirkwood: Remove some dead code from cpu.cStefan Roese1-55/+0
All those functions removed with this patch are not accessed at all. So lets remove them. Signed-off-by: Stefan Roese <sr@denx.de>
2014-10-23arm: armada-xp: Add basic support for the maxBCM boardStefan Roese1-0/+4
The maxBCM board is equipped with the Marvell Armada-XP MV78460 SoC. It integrates an SPI NOR flash and an Marvell 88E6185 switch. Signed-off-by: Stefan Roese <sr@denx.de>
2014-10-23arm: armada-xp: Add basic support for the Marvell DB-MV784MP-GP boardStefan Roese1-0/+4
This patch adds basic support for the Marvell DB-MV784MP-GP evaulation board. This is the first board that uses the recently created Armada XP 78460 SoC support. Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Luka Perkov <luka@openwrt.org>
2014-10-23arm: armada-xp: Add basic support for Marvell Armada XP SoCStefan Roese5-0/+446
This basic support for the Marvell Armada XP is base on the existing kirkwood support. Which has been generatized by moving some common files into common marvell locations. This is in preparation for the upcoming Armada XP MV78460 support. Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Luka Perkov <luka@openwrt.org>
2014-10-23arm: kirkwood: Change naming of dram functions from km_foo() to mvebu_foo()Stefan Roese3-29/+31
Additionally the SDRAM address decoding register address is not hard coded in the C code any more. A define is introduced for this base address. This makes is possible to use those gpio functions from other MVEBU SoC's as well. Signed-off-by: Stefan Roese <sr@denx.de> Tested-by: Luka Perkov <luka@openwrt.org> Acked-by: Prafulla Wadaskar <prafulla@marvell.com>