Skip to content

Commit

Permalink
MIPS: Alchemy: MIPS hazard workarounds are not required.
Browse files Browse the repository at this point in the history
The Alchemy manuals state:

"All pipeline hazards and dependencies are enforced by hardware interlocks
 so that any sequence of instructions is guaranteed to execute correctly.
 Therefore, it is not necessary to pad legacy MIPS hazards (such as
 load delay slots and coprocessor accesses) with NOPs."

Run-tested on Au12x0, without any ill effects.

Signed-off-by: Manuel Lauss <mano@roarinelk.homelinux.net>
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
  • Loading branch information
Manuel Lauss authored and Ralf Baechle committed Mar 30, 2009
1 parent 32647e0 commit 2f794d0
Show file tree
Hide file tree
Showing 2 changed files with 3 additions and 3 deletions.
4 changes: 2 additions & 2 deletions arch/mips/include/asm/hazards.h
Original file line number Diff line number Diff line change
Expand Up @@ -87,7 +87,7 @@ do { \
: "=r" (tmp)); \
} while (0)

#elif defined(CONFIG_CPU_MIPSR1)
#elif defined(CONFIG_CPU_MIPSR1) && !defined(CONFIG_MACH_ALCHEMY)

/*
* These are slightly complicated by the fact that we guarantee R1 kernels to
Expand Down Expand Up @@ -139,7 +139,7 @@ do { \
} while (0)

#elif defined(CONFIG_CPU_R10000) || defined(CONFIG_CPU_CAVIUM_OCTEON) || \
defined(CONFIG_CPU_R5500)
defined(CONFIG_CPU_R5500) || defined(CONFIG_MACH_ALCHEMY)

/*
* R10000 rocks - all hazards handled in hardware, so this becomes a nobrainer.
Expand Down
2 changes: 1 addition & 1 deletion arch/mips/mm/tlbex.c
Original file line number Diff line number Diff line change
Expand Up @@ -292,7 +292,6 @@ static void __cpuinit build_tlb_write_entry(u32 **p, struct uasm_label **l,
case CPU_R4300:
case CPU_5KC:
case CPU_TX49XX:
case CPU_ALCHEMY:
case CPU_PR4450:
uasm_i_nop(p);
tlbw(p);
Expand All @@ -315,6 +314,7 @@ static void __cpuinit build_tlb_write_entry(u32 **p, struct uasm_label **l,
case CPU_R5500:
if (m4kc_tlbp_war())
uasm_i_nop(p);
case CPU_ALCHEMY:
tlbw(p);
break;

Expand Down

0 comments on commit 2f794d0

Please sign in to comment.