u-boot-brain/arch/arm
Tom Rini a78cd86132 ARM: Rework and correct barrier definitions
As part of testing booting Linux kernels on Rockchip devices, it was
discovered by Ziyuan Xu and Sandy Patterson that we had multiple and for
some cases incomplete isb definitions.  This was causing a failure to
boot of the Linux kernel.

In order to solve this problem as well as cover any corner cases that we
may also have had a number of changes are made in order to consolidate
things.  First, <asm/barriers.h> now becomes the source of isb/dsb/dmb
definitions.  This however introduces another complexity.  Due to
needing to build SPL for 32bit tegra with -march=armv4 we need to borrow
the __LINUX_ARM_ARCH__ logic from the Linux Kernel in a more complete
form.  Move this from arch/arm/lib/Makefile to arch/arm/Makefile and add
a comment about it.  Now that we can always know what the target CPU is
capable off we can get always do the correct thing for the barrier.  The
final part of this is that need to be consistent everywhere and call
isb()/dsb()/dmb() and NOT call ISB/DSB/DMB in some cases and the
function names in others.

Reviewed-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Acked-by: Sandy Patterson <apatterson@sightlogix.com>
Reported-by: Ziyuan Xu <xzy.xu@rock-chips.com>
Reported-by: Sandy Patterson <apatterson@sightlogix.com>
Signed-off-by: Tom Rini <trini@konsulko.com>
2016-08-05 07:23:57 -04:00
..
cpu ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00
dts ARM64: zynqmp: Add u-boot,dm-pre-reloc to clk nodes 2016-08-01 08:35:02 +02:00
imx-common mx7dsabresd_secure_defconfig: Use CONFIG_ARMV7_BOOT_SEC_DEFAULT 2016-07-28 12:08:22 +02:00
include ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00
lib ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00
mach-at91 arm: at91: taurus/axm: add DM and DTS support 2016-06-26 20:17:22 +02:00
mach-bcm283x rpi: remove redundant board files 2016-04-11 20:48:23 -04:00
mach-davinci common: Pass the boot device into spl_boot_mode() 2016-06-26 20:17:22 +02:00
mach-exynos ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00
mach-highbank ARM: highbank: move SoC sources to mach-highbank 2015-02-21 08:23:51 -05:00
mach-integrator integrator: switch to DM serial port 2015-08-12 20:47:49 -04:00
mach-keystone keystone: k2h/e/l: Fix DMA coherency for QM PDSP 2016-07-25 12:00:05 -04:00
mach-kirkwood configs: Re-sync with cmd/Kconfig 2016-04-25 15:09:47 -04:00
mach-meson armv8: mmu: Add support of non-identical mapping 2016-07-15 09:01:43 -07:00
mach-mvebu common: Pass the boot device into spl_boot_mode() 2016-06-26 20:17:22 +02:00
mach-orion5x Use correct spelling of "U-Boot" 2016-02-06 12:00:59 +01:00
mach-rockchip rockchip: add support for rk3288 PopMetal board 2016-07-31 07:24:20 -06:00
mach-s5pc1xx arm: s5pc1xx: move SoC to mach-s5pc1xx 2015-11-30 17:17:01 +09:00
mach-snapdragon armv8: mmu: Add support of non-identical mapping 2016-07-15 09:01:43 -07:00
mach-socfpga common: Pass the boot device into spl_boot_mode() 2016-06-26 20:17:22 +02:00
mach-stm32 Revert "stm32: Change USART port to USART6 for stm32f746 discovery board" 2016-07-21 15:38:13 -04:00
mach-sunxi ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00
mach-tegra ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00
mach-uniphier ARM: uniphier: add clock/reset settings for xHCI of ProXstream2 2016-07-24 00:44:55 +09:00
mach-versatile arm: Remove versatileab board 2015-09-11 15:01:25 -04:00
mach-zynq zynq: Increase the early malloc() size 2016-07-27 14:15:54 -06:00
thumb1/include/asm/proc-armv arm: support Thumb-1 with CONFIG_SYS_THUMB_BUILD 2015-11-10 15:03:48 +01:00
config.mk ARM: Add secure section for initialized data 2016-07-15 15:54:58 +02:00
Kconfig ARM64: zynqmp: Do not enable DM_MMC by default 2016-08-02 07:19:09 +02:00
Kconfig.debug arm: debug: add Kconfig entries for lowlevel debug 2014-10-26 22:23:12 +01:00
Makefile ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00