u-boot/arch/arm
Nishanth Menon c616a0df29 ARM: Introduce erratum workaround for 798870
Add workaround for Cortex-A15 ARM erratum 798870 which says
"If back-to-back speculative cache line fills (fill A and fill B) are
issued from the L1 data cache of a CPU to the L2 cache, the second
request (fill B) is then cancelled, and the second request would have
detected a hazard against a recent write or eviction (write B) to the
same cache line as fill B then the L2 logic might deadlock."

Implementations for SoC families such as Exynos, OMAP5/DRA7 etc
will be widely different.

Every SoC has slightly different manner of setting up access to L2ACLR
and similar registers since the Secure Monitor handling of Secure
Monitor Call(smc) is diverse. Hence an weak function is introduced
which may be overriden to implement SoC specific accessor implementation.

Based on ARM errata Document revision 18.0 (22 Nov 2013)

Signed-off-by: Nishanth Menon <nm@ti.com>
Tested-by: Matt Porter <mporter@konsulko.com>
Reviewed-by: Tom Rini <trini@konsulko.com>
2015-03-13 09:28:29 -04:00
..
cpu ARM: Introduce erratum workaround for 798870 2015-03-13 09:28:29 -04:00
dts Merge branch 'master' of git://git.denx.de/u-boot-tegra 2015-03-10 19:09:18 -04:00
imx-common imx6: Added DEK blob generator command 2015-03-02 09:57:06 +01:00
include ARM: Introduce erratum workaround for 798870 2015-03-13 09:28:29 -04:00
lib Merge branch 'master' of git://git.denx.de/u-boot-tegra 2015-03-10 19:09:18 -04:00
mach-at91 ARM: at91: move SoC headers to mach-at91/include/mach 2015-02-21 08:23:52 -05:00
mach-davinci ARM: davinci: remove hawkboard support 2015-02-24 17:07:29 -05:00
mach-highbank ARM: highbank: move SoC sources to mach-highbank 2015-02-21 08:23:51 -05:00
mach-keystone ARM: keystone: move SoC headers to mach-keystone/include/mach 2015-02-21 08:23:52 -05:00
mach-kirkwood ARM: kirkwood: move SoC headers to mach-kirkwood/include/mach 2015-02-21 08:23:52 -05:00
mach-nomadik ARM: nomadik: move SoC headers to mach-nomadik/include/mach 2015-02-21 08:23:52 -05:00
mach-orion5x edminiv2: switch to SPL 2015-02-25 07:59:50 +01:00
mach-tegra Merge branch 'master' of git://git.denx.de/u-boot-tegra 2015-03-10 19:09:18 -04:00
mach-uniphier ARM: UniPhier: remove SSC_WAY_SIZE and SSC_NUM_ENTRIES macros 2015-03-01 00:03:21 +09:00
mach-versatile ARM: versatile: move SoC sources to mach-versatile 2015-02-21 08:23:51 -05:00
mvebu-common arm: mvebu: Add Serdes PHY config code 2015-02-06 17:24:59 +01:00
config.mk arm: build arch memset/memcpy in Thumb2 mode 2015-01-09 10:20:22 -05:00
Kconfig armv8/vexpress64: make multientry conditional 2015-03-09 11:13:29 -04:00
Kconfig.debug arm: debug: add Kconfig entries for lowlevel debug 2014-10-26 22:23:12 +01:00
Makefile ARM: UniPhier: move SoC sources to mach-uniphier 2015-03-01 00:01:56 +09:00