OMAP2 clockdomain: add virt_opp_clkdm
authorPaul Walmsley <paul@pwsan.com>
Wed, 10 Sep 2008 16:48:04 +0000 (10:48 -0600)
committerTony Lindgren <tony@atomide.com>
Fri, 12 Sep 2008 18:17:11 +0000 (11:17 -0700)
Every OMAP2/3 clock will need to be associated with a clockdomain.
However, the "virt_prcm_set" clock has no clockdomain, since it is a
virtual clock without any hardware referents.  So, create a new
clockdomain, "virt_clkdm", for this clock.  This clockdomain should be
reusable for OMAP3 virtual clock nodes.

Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Tony Lindgren <tony@atomide.com>
arch/arm/mach-omap2/clock24xx.h
arch/arm/mach-omap2/clockdomains.h

index e339f6d..63349fa 100644 (file)
@@ -2666,6 +2666,7 @@ static struct clk virt_prcm_set = {
        .name           = "virt_prcm_set",
        .flags          = CLOCK_IN_OMAP242X | CLOCK_IN_OMAP243X |
                                VIRTUAL_CLOCK | ALWAYS_ENABLED | DELAYED_APP,
+       .clkdm          = { .name = "virt_opp_clkdm" },
        .parent         = &mpu_ck,      /* Indexed by mpu speed, no parent */
        .recalc         = &omap2_table_mpu_recalc,      /* sets are keyed on mpu rate */
        .set_rate       = &omap2_select_table_rate,
index 5234be1..bafa650 100644 (file)
@@ -33,6 +33,16 @@ static struct clockdomain cm_clkdm = {
        .omap_chip      = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430),
 };
 
+/*
+ * virt_opp_clkdm is intended solely for use with virtual OPP clocks,
+ * e.g., virt_prcm_set, until OPP handling is rationalized.
+ */
+static struct clockdomain virt_opp_clkdm = {
+       .name           = "virt_opp_clkdm",
+       .pwrdm          = { .name = "wkup_pwrdm" },
+       .omap_chip      = OMAP_CHIP_INIT(CHIP_IS_OMAP24XX),
+};
+
 /*
  * 2420-only clockdomains
  */
@@ -307,6 +317,7 @@ static struct clockdomain *clockdomains_omap[] = {
 
        &cm_clkdm,
        &prm_clkdm,
+       &virt_opp_clkdm,
 
 #ifdef CONFIG_ARCH_OMAP2420
        &mpu_2420_clkdm,