]> git.karo-electronics.de Git - mv-sheeva.git/commitdiff
[ARM] Feroceon: support old cores with ARM926 ID
authorTzachi Perelstein <tzachi@marvell.com>
Tue, 6 Nov 2007 08:35:40 +0000 (10:35 +0200)
committerRussell King <rmk+kernel@arm.linux.org.uk>
Sat, 26 Jan 2008 15:03:41 +0000 (15:03 +0000)
This enables the usage of some old Feroceon cores
for which the CPU ID is equal to the ARM926 ID.
Relevant for Feroceon-1850 and old Feroceon-2850.

Signed-off-by: Tzachi Perelstein <tzachi@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
Acked-by: Russell King <rmk+kernel@arm.linux.org.uk>
arch/arm/mm/Kconfig
arch/arm/mm/proc-feroceon.S

index 378fb744abe26df60e8312133a0e6cfa1ceb02b1..9cdc74f94b1104e1bd214d7f2278f06e0be250b4 100644 (file)
@@ -354,6 +354,15 @@ config CPU_FEROCEON
        select CPU_COPY_V4WB if MMU
        select CPU_TLB_V4WBI if MMU
 
+config CPU_FEROCEON_OLD_ID
+       bool "Accept early Feroceon cores with an ARM926 ID"
+       depends on CPU_FEROCEON && !CPU_ARM926T
+       default y
+       help
+         This enables the usage of some old Feroceon cores
+         for which the CPU ID is equal to the ARM926 ID.
+         Relevant for Feroceon-1850 and early Feroceon-2850.
+
 # ARMv6
 config CPU_V6
        bool "Support ARM V6 processor"
index 8ad341af79065601cd762d89acc00c6d0aba9b37..fa0dc7e6f0ea6f473174ea877e54e2bb10c82d8d 100644 (file)
@@ -453,6 +453,33 @@ cpu_feroceon_name:
 
        .section ".proc.info.init", #alloc, #execinstr
 
+#ifdef CONFIG_CPU_FEROCEON_OLD_ID
+       .type   __feroceon_old_id_proc_info,#object
+__feroceon_old_id_proc_info:
+       .long   0x41069260
+       .long   0xfffffff0
+       .long   PMD_TYPE_SECT | \
+               PMD_SECT_BUFFERABLE | \
+               PMD_SECT_CACHEABLE | \
+               PMD_BIT4 | \
+               PMD_SECT_AP_WRITE | \
+               PMD_SECT_AP_READ
+       .long   PMD_TYPE_SECT | \
+               PMD_BIT4 | \
+               PMD_SECT_AP_WRITE | \
+               PMD_SECT_AP_READ
+       b       __feroceon_setup
+       .long   cpu_arch_name
+       .long   cpu_elf_name
+       .long   HWCAP_SWP|HWCAP_HALF|HWCAP_THUMB|HWCAP_FAST_MULT|HWCAP_EDSP
+       .long   cpu_feroceon_name
+       .long   feroceon_processor_functions
+       .long   v4wbi_tlb_fns
+       .long   v4wb_user_fns
+       .long   feroceon_cache_fns
+       .size   __feroceon_old_id_proc_info, . - __feroceon_old_id_proc_info
+#endif
+
        .type   __feroceon_proc_info,#object
 __feroceon_proc_info:
        .long   0x56055310