ARM: OMAP4: PM: OMAP4 essential basic initialisations.
authorAbhijit Pagare <abhijitpagare@ti.com>
Wed, 27 Jan 2010 03:12:51 +0000 (20:12 -0700)
committerPaul Walmsley <paul@pwsan.com>
Wed, 27 Jan 2010 03:12:51 +0000 (20:12 -0700)
Some of the OMAP4 specific chip level initialisations are taken care of.

Signed-off-by: Abhijit Pagare <abhijitpagare@ti.com>
Cc: Benoit Cousson <b-cousson@ti.com>
Cc: Rajendra Nayak <rnayak@ti.com>
Cc: Tony Lindgren <tony@atomide.com>
[paul@pwsan.com: updated to use '4430ES1' rather than simply '4430'; updated
 to apply after the intervening cpu.h/id.c patch; thanks also to Tony
 for catching a bug in my rewrite]
Signed-off-by: Paul Walmsley <paul@pwsan.com>
arch/arm/mach-omap2/id.c
arch/arm/plat-omap/include/plat/cpu.h

index 3d65c50bd0174bba7a209b80f4b02f6edf19abb3..9e7c4aeeae0231d8648cb79192dc29e49299da9b 100644 (file)
@@ -281,6 +281,7 @@ void __init omap4_check_revision(void)
 
        if ((hawkeye == 0xb852) && (rev == 0x0)) {
                omap_revision = OMAP4430_REV_ES1_0;
+               omap_chip.oc |= CHIP_IS_OMAP4430ES1;
                pr_info("OMAP%04x %s\n", omap_rev() >> 16, rev_name);
                return;
        }
index a162f585b1e3bdf0652088eb1929aea836857aa0..ccd78fd473d1c83c1a2f7d2a1d60ff4aa6ea09db 100644 (file)
@@ -44,7 +44,7 @@
 int omap_type(void);
 
 struct omap_chip_id {
-       u8 oc;
+       u16 oc;
        u8 type;
 };
 
@@ -154,6 +154,7 @@ unsigned int omap_rev(void);
  * cpu_is_omap242x():  True for OMAP2420, OMAP2422, OMAP2423
  * cpu_is_omap243x():  True for OMAP2430
  * cpu_is_omap343x():  True for OMAP3430
+ * cpu_is_omap443x():  True for OMAP4430
  */
 #define GET_OMAP_CLASS (omap_rev() & 0xff)
 
@@ -286,6 +287,7 @@ IS_OMAP_SUBCLASS(443x, 0x443)
  * cpu_is_omap2423():  True for OMAP2423
  * cpu_is_omap2430():  True for OMAP2430
  * cpu_is_omap3430():  True for OMAP3430
+ * cpu_is_omap4430():  True for OMAP4430
  * cpu_is_omap3505():  True for OMAP3505
  * cpu_is_omap3517():  True for OMAP3517
  */
@@ -334,6 +336,7 @@ IS_OMAP_TYPE(3517, 0x3517)
 #define cpu_is_omap3505()              0
 #define cpu_is_omap3517()              0
 #define cpu_is_omap3430()              0
+#define cpu_is_omap4430()              0
 #define cpu_is_omap3630()              0
 
 /*
@@ -471,9 +474,12 @@ IS_OMAP_TYPE(3517, 0x3517)
 #define CHIP_IS_OMAP3430ES3_0          (1 << 5)
 #define CHIP_IS_OMAP3430ES3_1          (1 << 6)
 #define CHIP_IS_OMAP3630ES1            (1 << 7)
+#define CHIP_IS_OMAP4430ES1            (1 << 8)
 
 #define CHIP_IS_OMAP24XX               (CHIP_IS_OMAP2420 | CHIP_IS_OMAP2430)
 
+#define CHIP_IS_OMAP4430               (CHIP_IS_OMAP4430ES1)
+
 /*
  * "GE" here represents "greater than or equal to" in terms of ES
  * levels.  So CHIP_GE_OMAP3430ES2 is intended to match all OMAP3430