* [PATCH] mm/pg-r4k.c: Fix a typo in an R4600 v2 erratum workaround
@ 2007-10-02 13:47 Maciej W. Rozycki
2007-10-02 14:36 ` Thiemo Seufer
2007-10-03 0:04 ` Ralf Baechle
0 siblings, 2 replies; 4+ messages in thread
From: Maciej W. Rozycki @ 2007-10-02 13:47 UTC (permalink / raw)
To: Ralf Baechle, Thiemo Seufer; +Cc: linux-mips
Restore a load from KSEG1 done as a workaround for an R4600 v2
erratum, dropped with 211be16de99a7424e66c0b6c0d00e2c970508ac2.
Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
---
Thiemo,
It reverts your change of Sep 1st, 2005; given the way the code is
written, I am assuming the change was accidental, correct? At the moment
the load never happens.
Ralf, please apply.
Maciej
patch-mips-2.6.23-rc5-20070904-pg-r4k-r4600-0
diff -up --recursive --new-file linux-mips-2.6.23-rc5-20070904.macro/arch/mips/mm/pg-r4k.c linux-mips-2.6.23-rc5-20070904/arch/mips/mm/pg-r4k.c
--- linux-mips-2.6.23-rc5-20070904.macro/arch/mips/mm/pg-r4k.c 2007-02-05 16:38:47.000000000 +0000
+++ linux-mips-2.6.23-rc5-20070904/arch/mips/mm/pg-r4k.c 2007-10-02 00:15:33.000000000 +0000
@@ -209,7 +209,7 @@ static inline void build_cdex_p(void)
}
if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x())
- build_insn_word(0x3c01a000); /* lui $at, 0xa000 */
+ build_insn_word(0x8c200000); /* lw $zero, ($at) */
mi.c_format.opcode = cache_op;
mi.c_format.rs = 4; /* $a0 */
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] mm/pg-r4k.c: Fix a typo in an R4600 v2 erratum workaround
2007-10-02 13:47 [PATCH] mm/pg-r4k.c: Fix a typo in an R4600 v2 erratum workaround Maciej W. Rozycki
@ 2007-10-02 14:36 ` Thiemo Seufer
2007-10-03 0:04 ` Ralf Baechle
1 sibling, 0 replies; 4+ messages in thread
From: Thiemo Seufer @ 2007-10-02 14:36 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: Ralf Baechle, linux-mips
Maciej W. Rozycki wrote:
> Restore a load from KSEG1 done as a workaround for an R4600 v2
> erratum, dropped with 211be16de99a7424e66c0b6c0d00e2c970508ac2.
>
> Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
> ---
> Thiemo,
>
> It reverts your change of Sep 1st, 2005; given the way the code is
> written, I am assuming the change was accidental, correct? At the moment
> the load never happens.
That's correct.
Thiemo
^ permalink raw reply [flat|nested] 4+ messages in thread
* Re: [PATCH] mm/pg-r4k.c: Fix a typo in an R4600 v2 erratum workaround
2007-10-02 13:47 [PATCH] mm/pg-r4k.c: Fix a typo in an R4600 v2 erratum workaround Maciej W. Rozycki
2007-10-02 14:36 ` Thiemo Seufer
@ 2007-10-03 0:04 ` Ralf Baechle
2007-10-03 0:21 ` Ralf Baechle
1 sibling, 1 reply; 4+ messages in thread
From: Ralf Baechle @ 2007-10-03 0:04 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: Thiemo Seufer, linux-mips
On Tue, Oct 02, 2007 at 02:47:22PM +0100, Maciej W. Rozycki wrote:
> Restore a load from KSEG1 done as a workaround for an R4600 v2
> erratum, dropped with 211be16de99a7424e66c0b6c0d00e2c970508ac2.
>
> Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
> ---
> Thiemo,
>
> It reverts your change of Sep 1st, 2005; given the way the code is
> written, I am assuming the change was accidental, correct? At the moment
> the load never happens.
But it should ... So this seems to be the right thing, no?
Ralf
diff --git a/arch/mips/mm/pg-r4k.c b/arch/mips/mm/pg-r4k.c
index dc795be..66921fb 100644
--- a/arch/mips/mm/pg-r4k.c
+++ b/arch/mips/mm/pg-r4k.c
@@ -208,8 +208,10 @@ static inline void build_cdex_p(void)
build_nop();
}
- if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x())
+ if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x()) {
build_insn_word(0x3c01a000); /* lui $at, 0xa000 */
+ build_insn_word(0x8c200000); /* lw $zero, ($at) */
+ }
mi.c_format.opcode = cache_op;
mi.c_format.rs = 4; /* $a0 */
@@ -390,8 +392,10 @@ void __init build_clear_page(void)
} else
build_addiu_a2_a0(off);
- if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x())
+ if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x()) {
build_insn_word(0x3c01a000); /* lui $at, 0xa000 */
+ build_insn_word(0x8c200000); /* lw $zero, ($at) */
+ }
dest = label();
do {
@@ -452,8 +456,10 @@ void __init build_copy_page(void)
} else
build_addiu_a2_a0(off);
- if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x())
+ if (R4600_V2_HIT_CACHEOP_WAR && cpu_is_r4600_v2_x()) {
build_insn_word(0x3c01a000); /* lui $at, 0xa000 */
+ build_insn_word(0x8c200000); /* lw $zero, ($at) */
+ }
dest = label();
loop_start = store_offset;
^ permalink raw reply related [flat|nested] 4+ messages in thread
* Re: [PATCH] mm/pg-r4k.c: Fix a typo in an R4600 v2 erratum workaround
2007-10-03 0:04 ` Ralf Baechle
@ 2007-10-03 0:21 ` Ralf Baechle
0 siblings, 0 replies; 4+ messages in thread
From: Ralf Baechle @ 2007-10-03 0:21 UTC (permalink / raw)
To: Maciej W. Rozycki; +Cc: Thiemo Seufer, linux-mips
On Wed, Oct 03, 2007 at 01:04:25AM +0100, Ralf Baechle wrote:
> > Restore a load from KSEG1 done as a workaround for an R4600 v2
> > erratum, dropped with 211be16de99a7424e66c0b6c0d00e2c970508ac2.
> >
> > Signed-off-by: Maciej W. Rozycki <macro@linux-mips.org>
> > ---
> > Thiemo,
> >
> > It reverts your change of Sep 1st, 2005; given the way the code is
> > written, I am assuming the change was accidental, correct? At the moment
> > the load never happens.
>
> But it should ... So this seems to be the right thing, no?
Ah, I see. So I applied your patch.
Ralf
^ permalink raw reply [flat|nested] 4+ messages in thread
end of thread, other threads:[~2007-10-03 0:21 UTC | newest]
Thread overview: 4+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2007-10-02 13:47 [PATCH] mm/pg-r4k.c: Fix a typo in an R4600 v2 erratum workaround Maciej W. Rozycki
2007-10-02 14:36 ` Thiemo Seufer
2007-10-03 0:04 ` Ralf Baechle
2007-10-03 0:21 ` Ralf Baechle
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.