From: Tzachi Perelstein Date: Tue, 6 Nov 2007 08:35:40 +0000 (+0200) Subject: [ARM] Feroceon: support old cores with ARM926 ID X-Git-Tag: upstream/snapshot3+hdmi~28356^2~1^2~22 X-Git-Url: http://review.tizen.org/git/?a=commitdiff_plain;h=d910a0aa21c9c6e824744d0139bbe6a9ae676e2d;p=platform%2Fadaptation%2Frenesas_rcar%2Frenesas_kernel.git [ARM] Feroceon: support old cores with ARM926 ID 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 Signed-off-by: Nicolas Pitre Acked-by: Russell King --- diff --git a/arch/arm/mm/Kconfig b/arch/arm/mm/Kconfig index 378fb74..9cdc74f 100644 --- a/arch/arm/mm/Kconfig +++ b/arch/arm/mm/Kconfig @@ -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" diff --git a/arch/arm/mm/proc-feroceon.S b/arch/arm/mm/proc-feroceon.S index 8ad341a..fa0dc7e 100644 --- a/arch/arm/mm/proc-feroceon.S +++ b/arch/arm/mm/proc-feroceon.S @@ -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