u-boot/arch/arm/mach-tegra
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
..
tegra20 ARM: Rework and correct barrier definitions 2016-08-05 07:23:57 -04:00
tegra30 Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
tegra114 Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
tegra124 ARM: tegra: parameterize common XUSB code 2015-11-12 09:21:06 -07:00
tegra186 ARM: tegra: pick up actual memory size 2016-07-21 09:31:30 -07:00
tegra210 ARM: tegra210: set PLLE_PTS bit when enabling PLLE 2016-03-29 09:57:57 -07:00
ap.c bug.h: move BUILD_BUG_* defines to include/linux/bug.h 2016-01-25 10:39:59 -05:00
arm64-mmu.c armv8: mmu: Add support of non-identical mapping 2016-07-15 09:01:43 -07:00
board.c dm: tegra: Provide serial platform data for SPL 2015-12-05 18:22:38 -05:00
board2.c ARM: tegra: enable GPU node by compatible value 2016-05-04 13:31:03 -07:00
board186.c ARM: tegra: pick up actual memory size 2016-07-21 09:31:30 -07:00
cache.c Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
clock.c Various, unrelated tree-wide typo fixes. 2016-07-16 09:43:12 -04:00
cmd_enterrcm.c ARM: tegra: collect SoC sources into mach-tegra 2015-02-21 08:23:51 -05:00
cpu.c Add more SPDX-License-Identifier tags 2016-01-19 08:31:21 -05:00
cpu.h ARM: Tegra210: Add support to common Tegra source/config files 2015-07-28 10:30:20 -07:00
emc.c ARM: tegra: move NVIDIA common files to arch/arm/mach-tegra 2015-05-13 09:46:19 -07:00
emc.h ARM: tegra: move NVIDIA common files to arch/arm/mach-tegra 2015-05-13 09:46:19 -07:00
gpu.c ARM: tegra: enable GPU node by compatible value 2016-05-04 13:31:03 -07:00
ivc.c ARM: tegra: add IVC protocol implementation 2016-07-21 09:31:30 -07:00
Kconfig ARM: tegra: add IVC protocol implementation 2016-07-21 09:31:30 -07:00
lowlevel_init.S ARM: Tegra210: Add support to common Tegra source/config files 2015-07-28 10:30:20 -07:00
Makefile ARM: tegra: add IVC protocol implementation 2016-07-21 09:31:30 -07:00
pinmux-common.c ARM: tegra: Build warning fixes for 64-bit 2015-07-27 15:54:18 -07:00
powergate.c tegra: Introduce SRAM repair on tegra124 2015-06-09 09:56:14 -07:00
psci.S ARM: PSCI: Switch to per-CPU target PC storage in secure data section 2016-07-15 15:54:58 +02:00
spl.c ARM: tegra: collect SoC sources into mach-tegra 2015-02-21 08:23:51 -05:00
sys_info.c ARM: tegra: collect SoC sources into mach-tegra 2015-02-21 08:23:51 -05:00
xusb-padctl-common.c ARM: tegra: create common XUSB padctl driver file 2015-11-12 09:21:06 -07:00
xusb-padctl-common.h ARM: tegra: add lane tables to Tegra210 XUSB padctl 2015-11-12 09:21:07 -07:00
xusb-padctl-dummy.c ARM: tegra: rename dummy XUSB padctl implementation 2015-11-12 09:21:06 -07:00