All of lore.kernel.org
 help / color / mirror / Atom feed
From: Sergei Shtylyov <sshtylyov@ru.mvista.com>
To: Linux-MIPS <linux-mips@linux-mips.org>
Cc: Manish Lachwani <mlachwani@mvista.com>,
	Ralf Baechle <ralf@linux-mips.org>
Subject: [PATCH] Au1xx0 code sets incorrect mips_hpt_frequency
Date: Sun, 03 Sep 2006 22:17:10 +0400	[thread overview]
Message-ID: <44FB1C26.10402@ru.mvista.com> (raw)
In-Reply-To: <4480AB90.8020203@ru.mvista.com>

[-- Attachment #1: Type: text/plain, Size: 507 bytes --]

Alchemy CPU counter ticks at the full CPU clock speed, not at the halved one 
-- this is not an issue with the current kernel since Alchemy uses its own 
timer handler here which pays no attention to mips_hpt_frequency.

Signed-off-by: Sergei Shtylyov <sshtylyov@ru.mvista.com>

---
I joined this fix to the arch/mips/au1000/common/time.c cleanup patch 
previously but its earlier verison has been finally committed, so here's the 
recast which fixes the warning about the 'count' variable being unused...


[-- Attachment #2: Au1xx0-fix-counter-frequency.patch --]
[-- Type: text/plain, Size: 1296 bytes --]

Index: linux-mips/arch/mips/au1000/common/time.c
===================================================================
--- linux-mips.orig/arch/mips/au1000/common/time.c
+++ linux-mips/arch/mips/au1000/common/time.c
@@ -231,7 +231,6 @@ wakeup_counter0_set(int ticks)
  */
 unsigned long cal_r4koff(void)
 {
-	unsigned long count;
 	unsigned long cpu_speed;
 	unsigned long flags;
 	unsigned long counter;
@@ -258,7 +257,7 @@ unsigned long cal_r4koff(void)
 
 #if defined(CONFIG_AU1000_USE32K)
 		{
-			unsigned long start, end;
+			unsigned long start, end, count;
 
 			start = au_readl(SYS_RTCREAD);
 			start += 2;
@@ -282,7 +281,6 @@ unsigned long cal_r4koff(void)
 #else
 		cpu_speed = (au_readl(SYS_CPUPLL) & 0x0000003f) *
 			AU1000_SRC_CLK;
-		count = cpu_speed / 2;
 #endif
 	}
 	else {
@@ -291,10 +289,9 @@ unsigned long cal_r4koff(void)
 		 * NOTE: some old silicon doesn't allow reading the PLL.
 		 */
 		cpu_speed = (au_readl(SYS_CPUPLL) & 0x0000003f) * AU1000_SRC_CLK;
-		count = cpu_speed / 2;
 		no_au1xxx_32khz = 1;
 	}
-	mips_hpt_frequency = count;
+	mips_hpt_frequency = cpu_speed;
 	// Equation: Baudrate = CPU / (SD * 2 * CLKDIV * 16)
 	set_au1x00_uart_baud_base(cpu_speed / (2 * ((int)(au_readl(SYS_POWERCTRL)&0x03) + 2) * 16));
 	spin_unlock_irqrestore(&time_lock, flags);


  reply	other threads:[~2006-09-03 18:16 UTC|newest]

Thread overview: 4+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2005-11-07 20:16 [PATCH] arch/mips/au1000/time.c cleanup Sergei Shtylylov
2006-06-02 21:20 ` [PATCH] arch/mips/au1000/common/time.c cleanup (take 2) Sergei Shtylyov
2006-09-03 18:17   ` Sergei Shtylyov [this message]
2006-06-24 15:22 ` [PATCH] Alchemy counter runs at full CPU speed Sergei Shtylyov

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=44FB1C26.10402@ru.mvista.com \
    --to=sshtylyov@ru.mvista.com \
    --cc=linux-mips@linux-mips.org \
    --cc=mlachwani@mvista.com \
    --cc=ralf@linux-mips.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
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.