]> git.karo-electronics.de Git - karo-tx-uboot.git/blobdiff - arch/arm/cpu/armv7/mx6/soc.c
imx: mx6 correct get_cpu_rev
[karo-tx-uboot.git] / arch / arm / cpu / armv7 / mx6 / soc.c
index 3447c89ad15feaf861dd428c3ec1d11ef92bdf14..fc5cce9db8ff501cfa0468bd52f5667045c5fb76 100644 (file)
@@ -87,6 +87,7 @@ u32 get_cpu_rev(void)
        struct anatop_regs *anatop = (struct anatop_regs *)ANATOP_BASE_ADDR;
        u32 reg = readl(&anatop->digprog_sololite);
        u32 type = ((reg >> 16) & 0xff);
+       u32 major;
 
        if (type != MXC_CPU_MX6SL) {
                reg = readl(&anatop->digprog);
@@ -104,8 +105,9 @@ u32 get_cpu_rev(void)
                }
 
        }
+       major = ((reg >> 8) & 0xff);
        reg &= 0xff;            /* mx6 silicon revision */
-       return (type << 12) | (reg + 0x10);
+       return (type << 12) | (reg + (0x10 * (major + 1)));
 }
 
 /*