diff options
author | Santosh Shilimkar <santosh.shilimkar@ti.com> | 2010-02-04 13:42:42 -0500 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2010-02-15 16:39:55 -0500 |
commit | 9e65582a8e8715f883a34eea66e0643778ce878d (patch) | |
tree | 36fd7010f69175fa6296a6eb14ead145c54c16e7 /arch/arm/Kconfig | |
parent | d309427e792ea750cdd312e7a92cf6047ae44962 (diff) |
ARM: 5919/1: ARM: L2 : Errata 588369: Clean & Invalidate do not invalidate clean lines
This patch implements the work-around for the errata 588369.The secure
API is used to alter L2 debug register because of trust-zone.
This version updated with comments from Russell and Catalin and
generated against 2.6.33-rc6 mainline kernel. Detail
comments can be found:
http://www.spinics.net/lists/linux-omap/msg23431.html
Signed-off-by: Woodruff Richard <r-woodruff2@ti.com>
Signed-off-by: Santosh Shilimkar <santosh.shilimkar@ti.com>
Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'arch/arm/Kconfig')
-rw-r--r-- | arch/arm/Kconfig | 13 |
1 files changed, 13 insertions, 0 deletions
diff --git a/arch/arm/Kconfig b/arch/arm/Kconfig index 762ae536f909..0f1ad743ccdd 100644 --- a/arch/arm/Kconfig +++ b/arch/arm/Kconfig | |||
@@ -924,6 +924,19 @@ config ARM_ERRATA_460075 | |||
924 | ACTLR register. Note that setting specific bits in the ACTLR register | 924 | ACTLR register. Note that setting specific bits in the ACTLR register |
925 | may not be available in non-secure mode. | 925 | may not be available in non-secure mode. |
926 | 926 | ||
927 | config PL310_ERRATA_588369 | ||
928 | bool "Clean & Invalidate maintenance operations do not invalidate clean lines" | ||
929 | depends on CACHE_L2X0 && ARCH_OMAP4 | ||
930 | help | ||
931 | The PL310 L2 cache controller implements three types of Clean & | ||
932 | Invalidate maintenance operations: by Physical Address | ||
933 | (offset 0x7F0), by Index/Way (0x7F8) and by Way (0x7FC). | ||
934 | They are architecturally defined to behave as the execution of a | ||
935 | clean operation followed immediately by an invalidate operation, | ||
936 | both performing to the same memory location. This functionality | ||
937 | is not correctly implemented in PL310 as clean lines are not | ||
938 | invalidated as a result of these operations. Note that this errata | ||
939 | uses Texas Instrument's secure monitor api. | ||
927 | endmenu | 940 | endmenu |
928 | 941 | ||
929 | source "arch/arm/common/Kconfig" | 942 | source "arch/arm/common/Kconfig" |