OMAP3+: voltage: add scalable flag to voltagedomain
authorKevin Hilman <khilman@ti.com>
Thu, 24 Mar 2011 00:00:21 +0000 (17:00 -0700)
committerKevin Hilman <khilman@ti.com>
Thu, 15 Sep 2011 18:39:09 +0000 (11:39 -0700)
Add a 'bool scalable' flag to the struct powerdomain and set it for
the scalable domains on OMAP3 and OMAP4.

Signed-off-by: Kevin Hilman <khilman@ti.com>
arch/arm/mach-omap2/voltage.c
arch/arm/mach-omap2/voltage.h
arch/arm/mach-omap2/voltagedomains3xxx_data.c
arch/arm/mach-omap2/voltagedomains44xx_data.c

index 4f0361a23ff68765bfc413e158486f7a87d386ee..48a2593878c6b4ce5e3b67e4afde78aa318c6a48 100644 (file)
@@ -1054,6 +1054,9 @@ int __init omap_voltage_late_init(void)
                pr_err("%s: Unable to create voltage debugfs main dir\n",
                        __func__);
        list_for_each_entry(voltdm, &voltdm_list, node) {
+               if (!voltdm->scalable)
+                       continue;
+
                if (voltdm->vdd) {
                        if (omap_vdd_data_configure(voltdm))
                                continue;
index 544029896265e5ae6024daf7016a0406b0d9e84e..25cfb5c8f06bfcecf90da8af8231e59665350ded 100644 (file)
@@ -53,11 +53,13 @@ struct omap_vfsm_instance_data {
 /**
  * struct voltagedomain - omap voltage domain global structure.
  * @name: Name of the voltage domain which can be used as a unique identifier.
+ * @scalable: Whether or not this voltage domain is scalable
  * @node: list_head linking all voltage domains
  * @vdd: to be removed
  */
 struct voltagedomain {
        char *name;
+       bool scalable;
        struct list_head node;
        struct omap_vdd_info *vdd;
 };
index 42d0b112978b9912be9477dcb34001098deee432..d7e1052d2cdbad535e01e32648a75474b392f1a4 100644 (file)
@@ -61,11 +61,13 @@ static struct omap_vdd_info omap3_vdd2_info = {
 
 static struct voltagedomain omap3_voltdm_mpu = {
        .name = "mpu_iva",
+       .scalable = true,
        .vdd = &omap3_vdd1_info,
 };
 
 static struct voltagedomain omap3_voltdm_core = {
        .name = "core",
+       .scalable = true,
        .vdd = &omap3_vdd2_info,
 };
 
index 245fdf9cb4a57ae710f1a5a849c9a8ca1dc2da14..95e1ce5822ca2681ec68944349479c5cfda64c36 100644 (file)
@@ -70,16 +70,19 @@ static struct omap_vdd_info omap4_vdd_core_info = {
 
 static struct voltagedomain omap4_voltdm_mpu = {
        .name = "mpu",
+       .scalable = true,
        .vdd = &omap4_vdd_mpu_info,
 };
 
 static struct voltagedomain omap4_voltdm_iva = {
        .name = "iva",
+       .scalable = true,
        .vdd = &omap4_vdd_iva_info,
 };
 
 static struct voltagedomain omap4_voltdm_core = {
        .name = "core",
+       .scalable = true,
        .vdd = &omap4_vdd_core_info,
 };