]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/commitdiff
ARM: OMAP2: Fix omap 3430 ES2.0 CPU identification
authorRoman Tereshonkov <roman.tereshonkov@nokia.com>
Fri, 18 Jan 2008 18:41:52 +0000 (10:41 -0800)
committerTony Lindgren <tony@atomide.com>
Fri, 18 Jan 2008 18:41:52 +0000 (10:41 -0800)
ARM: OMAP2: Fix omap 3430 ES2.0 CPU identification

Signed-off-by: Roman Tereshonkov <roman.tereshonkov@nokia.com>
arch/arm/mach-omap2/id.c

index 1ac504bb7e72a4a93caf4fe48ceea0978047dbc3..beb9d9d17e0eb4ed8af631c1fa4d7c2c0a7daa02 100644 (file)
@@ -62,6 +62,7 @@ static struct omap_id omap_ids[] __initdata = {
        { .hawkeye = 0xb68a, .dev = 0x0, .type = 0x24300000 },
        { .hawkeye = 0xb7ae, .dev = 0xf, .type = 0x34300000 },
        { .hawkeye = 0xb7ae, .dev = 0x0, .type = 0x34301000 },
+       { .hawkeye = 0xb7ae, .dev = 0xe, .type = 0x34302000 },
 };
 
 static u32 __init read_tap_reg(int reg)
@@ -88,6 +89,16 @@ static u32 __init read_tap_reg(int reg)
                case OMAP_TAP_DIE_ID_2: regval = 0x00000000; break;
                case OMAP_TAP_DIE_ID_3: regval = 0x2d2c0000; break;
                }
+       } else if ((((cpuid >> 4) & 0xFFF) == 0xC08) && ((cpuid & 0xF) == 0x1)) {
+               switch (reg) {
+               case OMAP_TAP_IDCODE  : regval = 0x1b7ae02f; break;
+               /* Making DevType as 0xE in ES2 to differ from other ESx */
+               case OMAP_TAP_PROD_ID : regval = 0x000E00F0; break;
+               case OMAP_TAP_DIE_ID_0: regval = 0x0400800f; break;
+               case OMAP_TAP_DIE_ID_1: regval = 0x04013d1d; break;
+               case OMAP_TAP_DIE_ID_2: regval = 0x00000000; break;
+               case OMAP_TAP_DIE_ID_3: regval = 0x1fe80001; break;
+               }
        } else
                regval = __raw_readl(TAP_BASE + reg);