diff options
author | Hemant Pedanekar <hemantp@ti.com> | 2011-02-16 11:31:39 -0500 |
---|---|---|
committer | Tony Lindgren <tony@atomide.com> | 2011-02-16 11:31:39 -0500 |
commit | 01001712c96f82e6317b1e09729d8fc4bcc66957 (patch) | |
tree | b75376536771c5dd5398733b82a509bcacba8bc8 /arch/arm/mach-omap2/id.c | |
parent | 4bd7be22f4b25fc87e236a29da3a625621699074 (diff) |
TI816X: Update common OMAP machine specific sources
This patch updates the common machine specific source files with support for
TI816X.
Signed-off-by: Hemant Pedanekar <hemantp@ti.com>
Reviewed-by: Kevin Hilman <khilman@ti.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
Diffstat (limited to 'arch/arm/mach-omap2/id.c')
-rw-r--r-- | arch/arm/mach-omap2/id.c | 33 |
1 files changed, 31 insertions, 2 deletions
diff --git a/arch/arm/mach-omap2/id.c b/arch/arm/mach-omap2/id.c index 5f9086c65e48..5c25f1b55235 100644 --- a/arch/arm/mach-omap2/id.c +++ b/arch/arm/mach-omap2/id.c | |||
@@ -191,12 +191,19 @@ static void __init omap3_check_features(void) | |||
191 | if (!cpu_is_omap3505() && !cpu_is_omap3517()) | 191 | if (!cpu_is_omap3505() && !cpu_is_omap3517()) |
192 | omap3_features |= OMAP3_HAS_IO_WAKEUP; | 192 | omap3_features |= OMAP3_HAS_IO_WAKEUP; |
193 | 193 | ||
194 | omap3_features |= OMAP3_HAS_SDRC; | ||
195 | |||
194 | /* | 196 | /* |
195 | * TODO: Get additional info (where applicable) | 197 | * TODO: Get additional info (where applicable) |
196 | * e.g. Size of L2 cache. | 198 | * e.g. Size of L2 cache. |
197 | */ | 199 | */ |
198 | } | 200 | } |
199 | 201 | ||
202 | static void __init ti816x_check_features(void) | ||
203 | { | ||
204 | omap3_features = OMAP3_HAS_NEON; | ||
205 | } | ||
206 | |||
200 | static void __init omap3_check_revision(void) | 207 | static void __init omap3_check_revision(void) |
201 | { | 208 | { |
202 | u32 cpuid, idcode; | 209 | u32 cpuid, idcode; |
@@ -287,6 +294,20 @@ static void __init omap3_check_revision(void) | |||
287 | omap_chip.oc |= CHIP_IS_OMAP3630ES1_2; | 294 | omap_chip.oc |= CHIP_IS_OMAP3630ES1_2; |
288 | } | 295 | } |
289 | break; | 296 | break; |
297 | case 0xb81e: | ||
298 | omap_chip.oc = CHIP_IS_TI816X; | ||
299 | |||
300 | switch (rev) { | ||
301 | case 0: | ||
302 | omap_revision = TI8168_REV_ES1_0; | ||
303 | break; | ||
304 | case 1: | ||
305 | omap_revision = TI8168_REV_ES1_1; | ||
306 | break; | ||
307 | default: | ||
308 | omap_revision = TI8168_REV_ES1_1; | ||
309 | } | ||
310 | break; | ||
290 | default: | 311 | default: |
291 | /* Unknown default to latest silicon rev as default*/ | 312 | /* Unknown default to latest silicon rev as default*/ |
292 | omap_revision = OMAP3630_REV_ES1_2; | 313 | omap_revision = OMAP3630_REV_ES1_2; |
@@ -372,6 +393,8 @@ static void __init omap3_cpuinfo(void) | |||
372 | /* Already set in omap3_check_revision() */ | 393 | /* Already set in omap3_check_revision() */ |
373 | strcpy(cpu_name, "AM3505"); | 394 | strcpy(cpu_name, "AM3505"); |
374 | } | 395 | } |
396 | } else if (cpu_is_ti816x()) { | ||
397 | strcpy(cpu_name, "TI816X"); | ||
375 | } else if (omap3_has_iva() && omap3_has_sgx()) { | 398 | } else if (omap3_has_iva() && omap3_has_sgx()) { |
376 | /* OMAP3430, OMAP3525, OMAP3515, OMAP3503 devices */ | 399 | /* OMAP3430, OMAP3525, OMAP3515, OMAP3503 devices */ |
377 | strcpy(cpu_name, "OMAP3430/3530"); | 400 | strcpy(cpu_name, "OMAP3430/3530"); |
@@ -386,7 +409,7 @@ static void __init omap3_cpuinfo(void) | |||
386 | strcpy(cpu_name, "OMAP3503"); | 409 | strcpy(cpu_name, "OMAP3503"); |
387 | } | 410 | } |
388 | 411 | ||
389 | if (cpu_is_omap3630()) { | 412 | if (cpu_is_omap3630() || cpu_is_ti816x()) { |
390 | switch (rev) { | 413 | switch (rev) { |
391 | case OMAP_REVBITS_00: | 414 | case OMAP_REVBITS_00: |
392 | strcpy(cpu_rev, "1.0"); | 415 | strcpy(cpu_rev, "1.0"); |
@@ -462,7 +485,13 @@ void __init omap2_check_revision(void) | |||
462 | omap24xx_check_revision(); | 485 | omap24xx_check_revision(); |
463 | } else if (cpu_is_omap34xx()) { | 486 | } else if (cpu_is_omap34xx()) { |
464 | omap3_check_revision(); | 487 | omap3_check_revision(); |
465 | omap3_check_features(); | 488 | |
489 | /* TI816X doesn't have feature register */ | ||
490 | if (!cpu_is_ti816x()) | ||
491 | omap3_check_features(); | ||
492 | else | ||
493 | ti816x_check_features(); | ||
494 | |||
466 | omap3_cpuinfo(); | 495 | omap3_cpuinfo(); |
467 | return; | 496 | return; |
468 | } else if (cpu_is_omap44xx()) { | 497 | } else if (cpu_is_omap44xx()) { |