linux-mips
[Top] [All Lists]

[PATCH 1/2] Alchemy: simple cpu subtype detector.

To: Linux-MIPS <linux-mips@linux-mips.org>, Ralf Baechle <ralf@linux-mips.org>
Subject: [PATCH 1/2] Alchemy: simple cpu subtype detector.
From: Manuel Lauss <manuel.lauss@googlemail.com>
Date: Sat, 22 Aug 2009 18:10:00 +0200
Cc: Manuel Lauss <manuel.lauss@gmail.com>
Dkim-signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=googlemail.com; s=gamma; h=domainkey-signature:received:received:from:to:cc:subject:date :message-id:x-mailer:in-reply-to:references; bh=zY2EHmdN9z4T3w79JVKY8oNIiDp8aoPqXhQb4LQSuGQ=; b=milZSKJ5Qi6cY6Dle1LxUkLPlKbRhPZ4jApwBlQL7LuV17pxuCnOFcbo7RKxNxcNKA 07K+crZHG+aCf3Cf3WU4kJahtxk5UfflZHC7ofKd7bMcG2EE81jLB4Q1b9zlnMV4sYyC hUSxECQ9KM2rKB7PfYlUkXLO2AtybdxNYlhtE=
Domainkey-signature: a=rsa-sha1; c=nofws; d=googlemail.com; s=gamma; h=from:to:cc:subject:date:message-id:x-mailer:in-reply-to:references; b=Y5MrbpcR4E6uLTocKd5YoWzXo2bMYUb6oCXI9ghtHHlu8DSKua57q6cAiSiOiMgEnn eacFxOwTell7aTs8ks/4UqyyJXKxORa/CI+aFb1hgUXzbJm+lRG9lNq8cCLRZhaEPPnH V+pW35gPM+s6ZuCzPiUGPdAejTB4To2oaOiZI=
In-reply-to: <1250957401-14447-1-git-send-email-manuel.lauss@gmail.com>
Original-recipient: rfc822;linux-mips@linux-mips.org
References: <1250957401-14447-1-git-send-email-manuel.lauss@gmail.com>
Sender: linux-mips-bounce@linux-mips.org
Signed-off-by: Manuel Lauss <manuel.lauss@gmail.com>
---
 arch/mips/include/asm/mach-au1x00/au1000.h |   34 ++++++++++++++++++++++++++++
 1 files changed, 34 insertions(+), 0 deletions(-)

diff --git a/arch/mips/include/asm/mach-au1x00/au1000.h 
b/arch/mips/include/asm/mach-au1x00/au1000.h
index 854e95f..85713f8 100644
--- a/arch/mips/include/asm/mach-au1x00/au1000.h
+++ b/arch/mips/include/asm/mach-au1x00/au1000.h
@@ -130,6 +130,40 @@ static inline int au1xxx_cpu_needs_config_od(void)
        return 0;
 }
 
+#define ALCHEMY_CPU_UNKNOWN    -1
+#define ALCHEMY_CPU_AU1000     0
+#define ALCHEMY_CPU_AU1500     1
+#define ALCHEMY_CPU_AU1100     2
+#define ALCHEMY_CPU_AU1550     3
+#define ALCHEMY_CPU_AU1200     4
+#define ALCHEMY_CPU_AU1300     5
+
+static inline int alchemy_get_cputype(void)
+{
+       switch (read_c0_prid() & 0xffff0000) {
+       case 0x00030000:
+               return ALCHEMY_CPU_AU1000;
+               break;
+       case 0x01030000:
+               return ALCHEMY_CPU_AU1500;
+               break;
+       case 0x02030000:
+               return ALCHEMY_CPU_AU1100;
+               break;
+       case 0x03030000:
+               return ALCHEMY_CPU_AU1550;
+               break;
+       case 0x04030000:
+               return ALCHEMY_CPU_AU1200;
+               break;
+       case 0x800c0000:
+               return ALCHEMY_CPU_AU1300;
+               break;
+       }
+
+       return ALCHEMY_CPU_UNKNOWN;
+}
+
 /* arch/mips/au1000/common/clocks.c */
 extern void set_au1x00_speed(unsigned int new_freq);
 extern unsigned int get_au1x00_speed(void);
-- 
1.6.4


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