aboutsummaryrefslogtreecommitdiffstats
path: root/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h
diff options
context:
space:
mode:
authorRuslan V. Sushko <rsushko@ru.mvista.com>2007-04-06 10:00:31 -0400
committerRussell King <rmk+kernel@arm.linux.org.uk>2007-04-21 15:51:55 -0400
commit45fba0846f5a5a48ed3c394aa4f8ca93699e7655 (patch)
tree9c5b34c26fbb3364f2cb4dc80501abaf31458a1b /include/asm-arm/arch-ixp4xx/ixp4xx-regs.h
parent25735d10ba477d5128b1e5ccef42062bea429075 (diff)
[ARM] 4311/1: ixp4xx: add KIXRP435 platform
Add Intel KIXRP435 Reference Platform based on IXP43x processor. Fixed after review : access to cp15 removed in identification functions, used access to global processor_id instead Signed-off-by: Vladimir Barinov <vbarinov@ru.mvista.com> Signed-off-by: Ruslan Sushko <rsushko@ru.mvista.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'include/asm-arm/arch-ixp4xx/ixp4xx-regs.h')
-rw-r--r--include/asm-arm/arch-ixp4xx/ixp4xx-regs.h36
1 files changed, 32 insertions, 4 deletions
diff --git a/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h b/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h
index ed35e5c94f40..deb989950c52 100644
--- a/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h
+++ b/include/asm-arm/arch-ixp4xx/ixp4xx-regs.h
@@ -607,15 +607,43 @@
607 607
608#define DCMD_LENGTH 0x01fff /* length mask (max = 8K - 1) */ 608#define DCMD_LENGTH 0x01fff /* length mask (max = 8K - 1) */
609 609
610/* Processor id value in CP15 Register 0 */
611#define IXP425_PROCESSOR_ID_VALUE 0x690541c0
612#define IXP435_PROCESSOR_ID_VALUE 0x69054040
613#define IXP465_PROCESSOR_ID_VALUE 0x69054200
614#define IXP4XX_PROCESSOR_ID_MASK 0xfffffff0
615
610#ifndef __ASSEMBLY__ 616#ifndef __ASSEMBLY__
617static inline int cpu_is_ixp42x(void)
618{
619 extern unsigned int processor_id;
620
621 if ((processor_id & IXP4XX_PROCESSOR_ID_MASK) ==
622 IXP425_PROCESSOR_ID_VALUE )
623 return 1;
624
625 return 0;
626}
627
628static inline int cpu_is_ixp43x(void)
629{
630#ifdef CONFIG_CPU_IXP43X
631 extern unsigned int processor_id;
632
633 if ((processor_id & IXP4XX_PROCESSOR_ID_MASK) ==
634 IXP435_PROCESSOR_ID_VALUE )
635 return 1;
636#endif
637 return 0;
638}
639
611static inline int cpu_is_ixp46x(void) 640static inline int cpu_is_ixp46x(void)
612{ 641{
613#ifdef CONFIG_CPU_IXP46X 642#ifdef CONFIG_CPU_IXP46X
614 unsigned int processor_id; 643 extern unsigned int processor_id;
615
616 asm("mrc p15, 0, %0, cr0, cr0, 0;" : "=r"(processor_id) :);
617 644
618 if ((processor_id & 0xffffff00) == 0x69054200) 645 if ((processor_id & IXP4XX_PROCESSOR_ID_MASK) ==
646 IXP465_PROCESSOR_ID_VALUE )
619 return 1; 647 return 1;
620#endif 648#endif
621 return 0; 649 return 0;