public inbox for linux-omap@vger.kernel.org
 help / color / mirror / Atom feed
* [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags
@ 2008-08-11 20:03 Paul Walmsley
  2008-08-11 22:08 ` Russell King - ARM Linux
                   ` (2 more replies)
  0 siblings, 3 replies; 6+ messages in thread
From: Paul Walmsley @ 2008-08-11 20:03 UTC (permalink / raw)
  To: linux-omap, linux-arm-kernel; +Cc: catalin.marinas, buytenh


Commit 2ccdd1e77da52ad494e9af46bf272d816830cb28 doesn't add 
v7wbi_possible_flags and v7wbi_always_flags to possible_tlb_flags and 
always_tlb_flags.  This causes the L2 cache flush in clean_pmd_entry() 
(intended for Feroceon only) to execute on ARMv7, and the CPU hangs.

This patch is required for OMAP3 boards to boot.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Cc: <catalin.marinas@arm.com>
Cc: <buytenh@wantstofly.org>
---

 arch/arm/include/asm/tlbflush.h |    7 +++++--
 1 files changed, 5 insertions(+), 2 deletions(-)

diff --git a/arch/arm/include/asm/tlbflush.h b/arch/arm/include/asm/tlbflush.h
index 0d0d40f..b543a05 100644
--- a/arch/arm/include/asm/tlbflush.h
+++ b/arch/arm/include/asm/tlbflush.h
@@ -54,6 +54,7 @@
  *	  v4wbi - ARMv4 with write buffer with I TLB flush entry instruction
  *	  fr    - Feroceon (v4wbi with non-outer-cacheable page table walks)
  *	  v6wbi - ARMv6 with write buffer with I TLB flush entry instruction
+ *	  v7wbi - identical to v6wbi
  */
 #undef _TLB
 #undef MULTI_TLB
@@ -266,14 +267,16 @@ extern struct cpu_tlb_fns cpu_tlb;
 				 v4wbi_possible_flags | \
 				 fr_possible_flags | \
 				 v4wb_possible_flags | \
-				 v6wbi_possible_flags)
+				 v6wbi_possible_flags | \
+				 v7wbi_possible_flags)
 
 #define always_tlb_flags	(v3_always_flags & \
 				 v4_always_flags & \
 				 v4wbi_always_flags & \
 				 fr_always_flags & \
 				 v4wb_always_flags & \
-				 v6wbi_always_flags)
+				 v6wbi_always_flags & \
+				 v7wbi_always_flags)
 
 #define tlb_flag(f)	((always_tlb_flags & (f)) || (__tlb_flag & possible_tlb_flags & (f)))
 

^ permalink raw reply related	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags
  2008-08-11 20:03 [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags Paul Walmsley
@ 2008-08-11 22:08 ` Russell King - ARM Linux
  2008-08-12  8:02   ` [PATCH] ARM TLB: add v7wbi_{possible, always}_flags to {possible, always}_tlb_flags Catalin Marinas
  2008-08-11 22:08 ` [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags Lennert Buytenhek
  2008-08-12  8:01 ` Catalin Marinas
  2 siblings, 1 reply; 6+ messages in thread
From: Russell King - ARM Linux @ 2008-08-11 22:08 UTC (permalink / raw)
  To: Paul Walmsley; +Cc: linux-omap, linux-arm-kernel

On Mon, Aug 11, 2008 at 02:03:10PM -0600, Paul Walmsley wrote:
> Commit 2ccdd1e77da52ad494e9af46bf272d816830cb28 doesn't add 
> v7wbi_possible_flags and v7wbi_always_flags to possible_tlb_flags and 
> always_tlb_flags.  This causes the L2 cache flush in clean_pmd_entry() 
> (intended for Feroceon only) to execute on ARMv7, and the CPU hangs.

And this most definitely is required.  One wonders how any ARMv7
platform could boot without this.  Please submit to the patch
system, I don't think any further acks are required.

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags
  2008-08-11 20:03 [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags Paul Walmsley
  2008-08-11 22:08 ` Russell King - ARM Linux
@ 2008-08-11 22:08 ` Lennert Buytenhek
  2008-08-12  8:01 ` Catalin Marinas
  2 siblings, 0 replies; 6+ messages in thread
From: Lennert Buytenhek @ 2008-08-11 22:08 UTC (permalink / raw)
  To: Paul Walmsley; +Cc: linux-omap, linux-arm-kernel, catalin.marinas

On Mon, Aug 11, 2008 at 02:03:10PM -0600, Paul Walmsley wrote:

> Commit 2ccdd1e77da52ad494e9af46bf272d816830cb28 doesn't add 
> v7wbi_possible_flags and v7wbi_always_flags to possible_tlb_flags and 
> always_tlb_flags.  This causes the L2 cache flush in clean_pmd_entry() 
> (intended for Feroceon only) to execute on ARMv7, and the CPU hangs.
> 
> This patch is required for OMAP3 boards to boot.
> 
> Signed-off-by: Paul Walmsley <paul@pwsan.com>
> Cc: <catalin.marinas@arm.com>
> Cc: <buytenh@wantstofly.org>

Acked-by: Lennert Buytenhek <buytenh@wantstofly.org>

^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags
  2008-08-11 20:03 [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags Paul Walmsley
  2008-08-11 22:08 ` Russell King - ARM Linux
  2008-08-11 22:08 ` [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags Lennert Buytenhek
@ 2008-08-12  8:01 ` Catalin Marinas
  2008-08-12 12:42   ` Tony Lindgren
  2 siblings, 1 reply; 6+ messages in thread
From: Catalin Marinas @ 2008-08-12  8:01 UTC (permalink / raw)
  To: Paul Walmsley; +Cc: linux-omap, linux-arm-kernel, buytenh

On Mon, 2008-08-11 at 14:03 -0600, Paul Walmsley wrote:
> Commit 2ccdd1e77da52ad494e9af46bf272d816830cb28 doesn't add 
> v7wbi_possible_flags and v7wbi_always_flags to possible_tlb_flags and 
> always_tlb_flags.  This causes the L2 cache flush in clean_pmd_entry() 
> (intended for Feroceon only) to execute on ARMv7, and the CPU hangs.
> 
> This patch is required for OMAP3 boards to boot.
> 
> Signed-off-by: Paul Walmsley <paul@pwsan.com>
> Cc: <catalin.marinas@arm.com>
> Cc: <buytenh@wantstofly.org>

Acked-by me as well. I posted it last month as well but I was waiting
for the include stuff to settle down. 

http://article.gmane.org/gmane.linux.ports.arm.kernel/44729

-- 
Catalin


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM TLB: add v7wbi_{possible, always}_flags to {possible, always}_tlb_flags
  2008-08-11 22:08 ` Russell King - ARM Linux
@ 2008-08-12  8:02   ` Catalin Marinas
  0 siblings, 0 replies; 6+ messages in thread
From: Catalin Marinas @ 2008-08-12  8:02 UTC (permalink / raw)
  To: Russell King - ARM Linux; +Cc: Paul Walmsley, linux-omap, linux-arm-kernel

On Mon, 2008-08-11 at 23:08 +0100, Russell King - ARM Linux wrote:
> On Mon, Aug 11, 2008 at 02:03:10PM -0600, Paul Walmsley wrote:
> > Commit 2ccdd1e77da52ad494e9af46bf272d816830cb28 doesn't add 
> > v7wbi_possible_flags and v7wbi_always_flags to possible_tlb_flags and 
> > always_tlb_flags.  This causes the L2 cache flush in clean_pmd_entry() 
> > (intended for Feroceon only) to execute on ARMv7, and the CPU hangs.
> 
> And this most definitely is required.  One wonders how any ARMv7
> platform could boot without this.  Please submit to the patch
> system, I don't think any further acks are required.

It is a bug indeed but not visible until commit 99c6dc11
(Feroceon-specific TLB flushing which is undefined on ARMv7).

-- 
Catalin


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags
  2008-08-12  8:01 ` Catalin Marinas
@ 2008-08-12 12:42   ` Tony Lindgren
  0 siblings, 0 replies; 6+ messages in thread
From: Tony Lindgren @ 2008-08-12 12:42 UTC (permalink / raw)
  To: Catalin Marinas; +Cc: Paul Walmsley, linux-omap, linux-arm-kernel, buytenh

* Catalin Marinas <catalin.marinas@arm.com> [080812 11:02]:
> On Mon, 2008-08-11 at 14:03 -0600, Paul Walmsley wrote:
> > Commit 2ccdd1e77da52ad494e9af46bf272d816830cb28 doesn't add 
> > v7wbi_possible_flags and v7wbi_always_flags to possible_tlb_flags and 
> > always_tlb_flags.  This causes the L2 cache flush in clean_pmd_entry() 
> > (intended for Feroceon only) to execute on ARMv7, and the CPU hangs.
> > 
> > This patch is required for OMAP3 boards to boot.
> > 
> > Signed-off-by: Paul Walmsley <paul@pwsan.com>
> > Cc: <catalin.marinas@arm.com>
> > Cc: <buytenh@wantstofly.org>
> 
> Acked-by me as well. I posted it last month as well but I was waiting
> for the include stuff to settle down. 
> 
> http://article.gmane.org/gmane.linux.ports.arm.kernel/44729

I'll apply Paul's patch to l-o tree while waiting for it to fall down
from mainline.

Tony

^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2008-08-12 12:41 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2008-08-11 20:03 [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags Paul Walmsley
2008-08-11 22:08 ` Russell King - ARM Linux
2008-08-12  8:02   ` [PATCH] ARM TLB: add v7wbi_{possible, always}_flags to {possible, always}_tlb_flags Catalin Marinas
2008-08-11 22:08 ` [PATCH] ARM TLB: add v7wbi_{possible,always}_flags to {possible,always}_tlb_flags Lennert Buytenhek
2008-08-12  8:01 ` Catalin Marinas
2008-08-12 12:42   ` Tony Lindgren

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox