linux-mips
[Top] [All Lists]

Re: [PATCH] MIPS: DB1200: Set Config_OD for improved stability.

To: Manuel Lauss <manuel.lauss@googlemail.com>
Subject: Re: [PATCH] MIPS: DB1200: Set Config_OD for improved stability.
From: Sergei Shtylyov <sshtylyov@mvista.com>
Date: Thu, 10 Feb 2011 21:25:37 +0300
Cc: Linux-MIPS <linux-mips@linux-mips.org>
In-reply-to: <4D542B1D.1060407@mvista.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <1297347429-18215-1-git-send-email-manuel.lauss@googlemail.com> <1297347429-18215-2-git-send-email-manuel.lauss@googlemail.com> <4D542B1D.1060407@mvista.com>
Sender: linux-mips-bounce@linux-mips.org
User-agent: Thunderbird 2.0.0.21 (X11/20090320)
I wrote:

Setting Config_OD gets rid of a _LOT_ of spurious CPLD interrupts,
but also decreases overall performance a bit.

Signed-off-by: Manuel Lauss <manuel.lauss@googlemail.com>
[...]

diff --git a/arch/mips/alchemy/devboards/db1200/setup.c b/arch/mips/alchemy/devboards/db1200/setup.c
index 8876195..a3729c9 100644
--- a/arch/mips/alchemy/devboards/db1200/setup.c
+++ b/arch/mips/alchemy/devboards/db1200/setup.c
@@ -23,6 +23,13 @@ void __init board_setup(void)
     unsigned long freq0, clksrc, div, pfc;
     unsigned short whoami;
+ /* Set Config_OD (disable overlapping bus transaction):

   The bit is called Config[OD] by other Alchemy code.
You just should add your Au1200 revision to au1xxx_cpu_needs_config_od() in <asm/mach-au1x00.h> so that plat_mem_setup() automatically sets the bit (just after it calls board_setup()); Au1200 rev. AC should have it set already...

Forgot to add that if you don't do it, the code in plat_mem_setup() will clear the bit after you've set it.

WBR, Sergei


<Prev in Thread] Current Thread [Next in Thread>