From: Martin Date: Sun, 1 May 2011 13:19:01 +0000 (+0200) Subject: setup X-Git-Url: http://rtime.felk.cvut.cz/gitweb/mcf548x/linux.git/commitdiff_plain/576d3e5b9efcf171ad6bec19b86a337e879ab694 setup --- diff --git a/arch/m68k/coldfire/config.c b/arch/m68k/coldfire/config.c index ef2c4000d21e..aac09391a04c 100644 --- a/arch/m68k/coldfire/config.c +++ b/arch/m68k/coldfire/config.c @@ -458,3 +458,11 @@ void __init config_coldfire(void) #endif } + +//no special boot record +int coldfire_parse_bootinfo(const struct bi_record *) +{ + return 1; +} + + diff --git a/arch/m68k/include/asm/setup.h b/arch/m68k/include/asm/setup.h index 4dfb3952b375..bed5b186ac6a 100644 --- a/arch/m68k/include/asm/setup.h +++ b/arch/m68k/include/asm/setup.h @@ -189,6 +189,14 @@ extern unsigned long m68k_machtype; # define MACH_TYPE (MACH_SUN3X) #endif +#if !defined(CONFIG_COLDFIRE) +# define MACH_IS_COLDFIRE (0) +#else +# define CONFIG_COLDFIRE_ONLY +# define MACH_IS_COLDFIRE (1) +# define MACH_TYPE (MACH_CFMMU) +#endif + #ifndef MACH_TYPE # define MACH_TYPE (m68k_machtype) #endif @@ -211,23 +219,31 @@ extern unsigned long m68k_machtype; #define CPUB_68030 1 #define CPUB_68040 2 #define CPUB_68060 3 +#define CPUB_CFV4E 4 #define CPU_68020 (1<size); } +#ifdef CONFIG_COLDFIRE + if (MACH_IS_COLDFIRE) + coldfire_sort_memrec(); +#endif + m68k_realnum_memory = m68k_num_memory; #ifdef CONFIG_SINGLE_MEMORY_CHUNK if (m68k_num_memory > 1) { @@ -319,6 +337,11 @@ void __init setup_arch(char **cmdline_p) case MACH_SUN3X: config_sun3x(); break; +#endif +#ifdef CONFIG_COLDFIRE + case MACH_COLDFIRE: + config_coldfire(); + break; #endif default: panic("No configuration setup"); @@ -353,6 +376,11 @@ void __init setup_arch(char **cmdline_p) #endif /* !CONFIG_SUN3 */ +#ifdef CONFIG_COLDFIRE + if (MACH_IS_COLDFIRE) + mmu_context_init(); +#endif + /* set ISA defs early as possible */ #if defined(CONFIG_ISA) && defined(MULTI_ISA) if (MACH_IS_Q40) { @@ -390,6 +418,9 @@ static int show_cpuinfo(struct seq_file *m, void *v) } else if (CPU_IS_060) { cpu = "68060"; clockfactor = LOOP_CYCLES_68060; + } else if (CPU_IS_CFV4E) { + cpu = "ColdFire V4e"; + clockfactor = LOOP_CYCLES_COLDFIRE; } else { cpu = "680x0"; clockfactor = 0; @@ -408,6 +439,8 @@ static int show_cpuinfo(struct seq_file *m, void *v) fpu = "68060"; else if (m68k_fputype & FPU_SUNFPA) fpu = "Sun FPA"; + else if (m68k_fputype & FPU_CFV4E) + fpu = "ColdFire V4e"; else fpu = "none"; #endif @@ -424,6 +457,8 @@ static int show_cpuinfo(struct seq_file *m, void *v) mmu = "Sun-3"; else if (m68k_mmutype & MMU_APOLLO) mmu = "Apollo"; + else if (m68k_mmutype & MMU_CFV4E) + mmu = "ColdFire"; else mmu = "unknown";