ARM: mx35: use generic function for displaying silicon revision

update to use generic function for displaying silicon revision

Signed-off-by: Jason Liu <jason.hui@linaro.org>
Cc: Fabio Estevam <fabio.estevam@freescale.com>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
This commit is contained in:
Jason Liu 2011-08-26 13:35:22 +08:00 committed by Sascha Hauer
parent ab116a86fa
commit 8d75a2620d
3 changed files with 18 additions and 26 deletions

View file

@ -537,7 +537,8 @@ int __init mx35_clocks_init()
__raw_writel(cgr3, CCM_BASE + CCM_CGR3); __raw_writel(cgr3, CCM_BASE + CCM_CGR3);
clk_enable(&iim_clk); clk_enable(&iim_clk);
mx35_read_cpu_rev(); imx_print_silicon_rev("i.MX35", mx35_revision());
clk_disable(&iim_clk);
#ifdef CONFIG_MXC_USE_EPIT #ifdef CONFIG_MXC_USE_EPIT
epit_timer_init(&epit1_clk, epit_timer_init(&epit1_clk,

View file

@ -13,32 +13,30 @@
#include <mach/hardware.h> #include <mach/hardware.h>
#include <mach/iim.h> #include <mach/iim.h>
unsigned int mx35_cpu_rev; static int mx35_cpu_rev = -1;
EXPORT_SYMBOL(mx35_cpu_rev);
void __init mx35_read_cpu_rev(void) static int mx35_read_cpu_rev(void)
{ {
u32 rev; u32 rev;
char *srev;
rev = __raw_readl(MX35_IO_ADDRESS(MX35_IIM_BASE_ADDR + MXC_IIMSREV)); rev = __raw_readl(MX35_IO_ADDRESS(MX35_IIM_BASE_ADDR + MXC_IIMSREV));
switch (rev) { switch (rev) {
case 0x00: case 0x00:
mx35_cpu_rev = IMX_CHIP_REVISION_1_0; return IMX_CHIP_REVISION_1_0;
srev = "1.0";
break;
case 0x10: case 0x10:
mx35_cpu_rev = IMX_CHIP_REVISION_2_0; return IMX_CHIP_REVISION_2_0;
srev = "2.0";
break;
case 0x11: case 0x11:
mx35_cpu_rev = IMX_CHIP_REVISION_2_1; return IMX_CHIP_REVISION_2_1;
srev = "2.1";
break;
default: default:
mx35_cpu_rev = IMX_CHIP_REVISION_UNKNOWN; return IMX_CHIP_REVISION_UNKNOWN;
srev = "unknown"; }
} }
printk(KERN_INFO "CPU identified as i.MX35, silicon rev %s\n", srev); int mx35_revision(void)
{
if (mx35_cpu_rev == -1)
mx35_cpu_rev = mx35_read_cpu_rev();
return mx35_cpu_rev;
} }
EXPORT_SYMBOL(mx35_revision);

View file

@ -187,14 +187,7 @@
/* Mandatory defines used globally */ /* Mandatory defines used globally */
#if !defined(__ASSEMBLY__) && !defined(__MXC_BOOT_UNCOMPRESS) #if !defined(__ASSEMBLY__) && !defined(__MXC_BOOT_UNCOMPRESS)
extern unsigned int mx35_cpu_rev; extern int mx35_revision(void);
extern void mx35_read_cpu_rev(void);
static inline int mx35_revision(void)
{
return mx35_cpu_rev;
}
extern int mx31_revision(void); extern int mx31_revision(void);
#endif #endif