Re: [PATCH] OMAP2/3 clockdomains: combine pwrdm, pwrdm_name into union in struct clockdomain

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



* Paul Walmsley <paul@xxxxxxxxx> [080718 11:22]:
> 
> struct clockdomain contains a struct powerdomain *pwrdm and const char
> *pwrdm_name.  The pwrdm_name is only used at initialization to look up
> the appropriate pwrdm pointer.  Combining these into a union saves
> about 100 bytes on 3430SDP.  This patch should not cause any change in
> kernel function.
> 
> Boot-tested on 3430SDP ES2.

Pushing today.

Tony

> Signed-off-by: Paul Walmsley <paul@xxxxxxxxx>
> 
> size:
>    text    data     bss     dec     hex filename
> 3391587  157104  107136 3655827  37c893 vmlinux.3430sdp.orig
> 3391555  157032  107136 3655723  37c82b vmlinux.3430sdp
> ---
> 
>  arch/arm/mach-omap2/clockdomain.c       |   58 ++++++++++++++-----------------
>  arch/arm/mach-omap2/clockdomains.h      |   54 +++++++++++++++--------------
>  include/asm-arm/arch-omap/clockdomain.h |   22 +++++++-----
>  3 files changed, 67 insertions(+), 67 deletions(-)
> 
> diff --git a/arch/arm/mach-omap2/clockdomain.c b/arch/arm/mach-omap2/clockdomain.c
> index 6e5f892..caa7992 100644
> --- a/arch/arm/mach-omap2/clockdomain.c
> +++ b/arch/arm/mach-omap2/clockdomain.c
> @@ -71,14 +71,14 @@ static void _autodep_lookup(struct clkdm_pwrdm_autodep *autodep)
>  	if (!omap_chip_is(autodep->omap_chip))
>  		return;
>  
> -	pwrdm = pwrdm_lookup(autodep->pwrdm_name);
> +	pwrdm = pwrdm_lookup(autodep->pwrdm.name);
>  	if (!pwrdm) {
>  		pr_debug("clockdomain: _autodep_lookup: powerdomain %s "
> -			 "does not exist\n", autodep->pwrdm_name);
> +			 "does not exist\n", autodep->pwrdm.name);
>  		WARN_ON(1);
>  		return;
>  	}
> -	autodep->pwrdm = pwrdm;
> +	autodep->pwrdm.ptr = pwrdm;
>  
>  	return;
>  }
> @@ -95,16 +95,13 @@ static void _clkdm_add_autodeps(struct clockdomain *clkdm)
>  {
>  	struct clkdm_pwrdm_autodep *autodep;
>  
> -	for (autodep = autodeps; autodep->pwrdm_name; autodep++) {
> -		if (!autodep->pwrdm)
> -			continue;
> -
> +	for (autodep = autodeps; autodep->pwrdm.ptr; autodep++) {
>  		pr_debug("clockdomain: adding %s sleepdep/wkdep for "
> -			 "pwrdm %s\n", autodep->pwrdm_name,
> -			 clkdm->pwrdm->name);
> +			 "pwrdm %s\n", autodep->pwrdm.ptr->name,
> +			 clkdm->pwrdm.ptr->name);
>  
> -		pwrdm_add_sleepdep(clkdm->pwrdm, autodep->pwrdm);
> -		pwrdm_add_wkdep(clkdm->pwrdm, autodep->pwrdm);
> +		pwrdm_add_sleepdep(clkdm->pwrdm.ptr, autodep->pwrdm.ptr);
> +		pwrdm_add_wkdep(clkdm->pwrdm.ptr, autodep->pwrdm.ptr);
>  	}
>  }
>  
> @@ -120,16 +117,13 @@ static void _clkdm_del_autodeps(struct clockdomain *clkdm)
>  {
>  	struct clkdm_pwrdm_autodep *autodep;
>  
> -	for (autodep = autodeps; autodep->pwrdm_name; autodep++) {
> -		if (!autodep->pwrdm)
> -			continue;
> -
> +	for (autodep = autodeps; autodep->pwrdm.ptr; autodep++) {
>  		pr_debug("clockdomain: removing %s sleepdep/wkdep for "
> -			 "pwrdm %s\n", autodep->pwrdm_name,
> -			 clkdm->pwrdm->name);
> +			 "pwrdm %s\n", autodep->pwrdm.ptr->name,
> +			 clkdm->pwrdm.ptr->name);
>  
> -		pwrdm_del_sleepdep(clkdm->pwrdm, autodep->pwrdm);
> -		pwrdm_del_wkdep(clkdm->pwrdm, autodep->pwrdm);
> +		pwrdm_del_sleepdep(clkdm->pwrdm.ptr, autodep->pwrdm.ptr);
> +		pwrdm_del_wkdep(clkdm->pwrdm.ptr, autodep->pwrdm.ptr);
>  	}
>  }
>  
> @@ -179,7 +173,7 @@ void clkdm_init(struct clockdomain **clkdms,
>  
>  	autodeps = init_autodeps;
>  	if (autodeps)
> -		for (autodep = autodeps; autodep->pwrdm_name; autodep++)
> +		for (autodep = autodeps; autodep->pwrdm.ptr; autodep++)
>  			_autodep_lookup(autodep);
>  }
>  
> @@ -202,13 +196,13 @@ int clkdm_register(struct clockdomain *clkdm)
>  	if (!omap_chip_is(clkdm->omap_chip))
>  		return -EINVAL;
>  
> -	pwrdm = pwrdm_lookup(clkdm->pwrdm_name);
> +	pwrdm = pwrdm_lookup(clkdm->pwrdm.name);
>  	if (!pwrdm) {
>  		pr_debug("clockdomain: clkdm_register %s: powerdomain %s "
> -			 "does not exist\n", clkdm->name, clkdm->pwrdm_name);
> +			 "does not exist\n", clkdm->name, clkdm->pwrdm.name);
>  		return -EINVAL;
>  	}
> -	clkdm->pwrdm = pwrdm;
> +	clkdm->pwrdm.ptr = pwrdm;
>  
>  	mutex_lock(&clkdm_mutex);
>  	/* Verify that the clockdomain is not already registered */
> @@ -242,7 +236,7 @@ int clkdm_unregister(struct clockdomain *clkdm)
>  	if (!clkdm)
>  		return -EINVAL;
>  
> -	pwrdm_del_clkdm(clkdm->pwrdm, clkdm);
> +	pwrdm_del_clkdm(clkdm->pwrdm.ptr, clkdm);
>  
>  	mutex_lock(&clkdm_mutex);
>  	list_del(&clkdm->node);
> @@ -327,7 +321,7 @@ struct powerdomain *clkdm_get_pwrdm(struct clockdomain *clkdm)
>  	if (!clkdm)
>  		return NULL;
>  
> -	return clkdm->pwrdm;
> +	return clkdm->pwrdm.ptr;
>  }
>  
>  
> @@ -348,7 +342,7 @@ static int omap2_clkdm_clktrctrl_read(struct clockdomain *clkdm)
>  	if (!clkdm)
>  		return -EINVAL;
>  
> -	v = cm_read_mod_reg(clkdm->pwrdm->prcm_offs, CM_CLKSTCTRL);
> +	v = cm_read_mod_reg(clkdm->pwrdm.ptr->prcm_offs, CM_CLKSTCTRL);
>  	v &= clkdm->clktrctrl_mask;
>  	v >>= __ffs(clkdm->clktrctrl_mask);
>  
> @@ -380,7 +374,7 @@ int omap2_clkdm_sleep(struct clockdomain *clkdm)
>  	if (cpu_is_omap24xx()) {
>  
>  		cm_set_mod_reg_bits(OMAP24XX_FORCESTATE,
> -				    clkdm->pwrdm->prcm_offs, PM_PWSTCTRL);
> +				    clkdm->pwrdm.ptr->prcm_offs, PM_PWSTCTRL);
>  
>  	} else if (cpu_is_omap34xx()) {
>  
> @@ -388,7 +382,7 @@ int omap2_clkdm_sleep(struct clockdomain *clkdm)
>  			 __ffs(clkdm->clktrctrl_mask));
>  
>  		cm_rmw_mod_reg_bits(clkdm->clktrctrl_mask, v,
> -				    clkdm->pwrdm->prcm_offs, CM_CLKSTCTRL);
> +				    clkdm->pwrdm.ptr->prcm_offs, CM_CLKSTCTRL);
>  
>  	} else {
>  		BUG();
> @@ -422,7 +416,7 @@ int omap2_clkdm_wakeup(struct clockdomain *clkdm)
>  	if (cpu_is_omap24xx()) {
>  
>  		cm_clear_mod_reg_bits(OMAP24XX_FORCESTATE,
> -				      clkdm->pwrdm->prcm_offs, PM_PWSTCTRL);
> +				      clkdm->pwrdm.ptr->prcm_offs, PM_PWSTCTRL);
>  
>  	} else if (cpu_is_omap34xx()) {
>  
> @@ -430,7 +424,7 @@ int omap2_clkdm_wakeup(struct clockdomain *clkdm)
>  			 __ffs(clkdm->clktrctrl_mask));
>  
>  		cm_rmw_mod_reg_bits(clkdm->clktrctrl_mask, v,
> -				    clkdm->pwrdm->prcm_offs, CM_CLKSTCTRL);
> +				    clkdm->pwrdm.ptr->prcm_offs, CM_CLKSTCTRL);
>  
>  	} else {
>  		BUG();
> @@ -478,7 +472,7 @@ void omap2_clkdm_allow_idle(struct clockdomain *clkdm)
>  
>  	cm_rmw_mod_reg_bits(clkdm->clktrctrl_mask,
>  			    v << __ffs(clkdm->clktrctrl_mask),
> -			    clkdm->pwrdm->prcm_offs,
> +			    clkdm->pwrdm.ptr->prcm_offs,
>  			    CM_CLKSTCTRL);
>  }
>  
> @@ -516,7 +510,7 @@ void omap2_clkdm_deny_idle(struct clockdomain *clkdm)
>  
>  	cm_rmw_mod_reg_bits(clkdm->clktrctrl_mask,
>  			    v << __ffs(clkdm->clktrctrl_mask),
> -			    clkdm->pwrdm->prcm_offs, CM_CLKSTCTRL);
> +			    clkdm->pwrdm.ptr->prcm_offs, CM_CLKSTCTRL);
>  
>  	if (atomic_read(&clkdm->usecount) > 0)
>  		_clkdm_del_autodeps(clkdm);
> diff --git a/arch/arm/mach-omap2/clockdomains.h b/arch/arm/mach-omap2/clockdomains.h
> index b5d3244..8559080 100644
> --- a/arch/arm/mach-omap2/clockdomains.h
> +++ b/arch/arm/mach-omap2/clockdomains.h
> @@ -19,7 +19,7 @@
>  /* This is an implicit clockdomain - it is never defined as such in TRM */
>  static struct clockdomain wkup_clkdm = {
>  	.name		= "wkup_clkdm",
> -	.pwrdm_name	= "wkup_pwrdm",
> +	.pwrdm		= { .name = "wkup_pwrdm" },
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP24XX | CHIP_IS_OMAP3430),
>  };
>  
> @@ -31,7 +31,7 @@ static struct clockdomain wkup_clkdm = {
>  
>  static struct clockdomain mpu_2420_clkdm = {
>  	.name		= "mpu_clkdm",
> -	.pwrdm_name	= "mpu_pwrdm",
> +	.pwrdm		= { .name = "mpu_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP,
>  	.clktrctrl_mask = OMAP24XX_AUTOSTATE_MPU_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP2420),
> @@ -39,7 +39,7 @@ static struct clockdomain mpu_2420_clkdm = {
>  
>  static struct clockdomain iva1_2420_clkdm = {
>  	.name		= "iva1_clkdm",
> -	.pwrdm_name	= "dsp_pwrdm",
> +	.pwrdm		= { .name = "dsp_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP2420_AUTOSTATE_IVA_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP2420),
> @@ -56,7 +56,7 @@ static struct clockdomain iva1_2420_clkdm = {
>  
>  static struct clockdomain mpu_2430_clkdm = {
>  	.name		= "mpu_clkdm",
> -	.pwrdm_name	= "mpu_pwrdm",
> +	.pwrdm		= { .name = "mpu_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP24XX_AUTOSTATE_MPU_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP2430),
> @@ -64,7 +64,7 @@ static struct clockdomain mpu_2430_clkdm = {
>  
>  static struct clockdomain mdm_clkdm = {
>  	.name		= "mdm_clkdm",
> -	.pwrdm_name	= "mdm_pwrdm",
> +	.pwrdm		= { .name = "mdm_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP2430_AUTOSTATE_MDM_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP2430),
> @@ -81,7 +81,7 @@ static struct clockdomain mdm_clkdm = {
>  
>  static struct clockdomain dsp_clkdm = {
>  	.name		= "dsp_clkdm",
> -	.pwrdm_name	= "dsp_pwrdm",
> +	.pwrdm		= { .name = "dsp_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP24XX_AUTOSTATE_DSP_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP24XX),
> @@ -89,7 +89,7 @@ static struct clockdomain dsp_clkdm = {
>  
>  static struct clockdomain gfx_24xx_clkdm = {
>  	.name		= "gfx_clkdm",
> -	.pwrdm_name	= "gfx_pwrdm",
> +	.pwrdm		= { .name = "gfx_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP24XX_AUTOSTATE_GFX_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP24XX),
> @@ -97,7 +97,7 @@ static struct clockdomain gfx_24xx_clkdm = {
>  
>  static struct clockdomain core_l3_24xx_clkdm = {
>  	.name		= "core_l3_clkdm",
> -	.pwrdm_name	= "core_pwrdm",
> +	.pwrdm		= { .name = "core_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP,
>  	.clktrctrl_mask = OMAP24XX_AUTOSTATE_L3_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP24XX),
> @@ -105,7 +105,7 @@ static struct clockdomain core_l3_24xx_clkdm = {
>  
>  static struct clockdomain core_l4_24xx_clkdm = {
>  	.name		= "core_l4_clkdm",
> -	.pwrdm_name	= "core_pwrdm",
> +	.pwrdm		= { .name = "core_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP,
>  	.clktrctrl_mask = OMAP24XX_AUTOSTATE_L4_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP24XX),
> @@ -113,7 +113,7 @@ static struct clockdomain core_l4_24xx_clkdm = {
>  
>  static struct clockdomain dss_24xx_clkdm = {
>  	.name		= "dss_clkdm",
> -	.pwrdm_name	= "core_pwrdm",
> +	.pwrdm		= { .name = "core_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP,
>  	.clktrctrl_mask = OMAP24XX_AUTOSTATE_DSS_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP24XX),
> @@ -130,7 +130,7 @@ static struct clockdomain dss_24xx_clkdm = {
>  
>  static struct clockdomain mpu_34xx_clkdm = {
>  	.name		= "mpu_clkdm",
> -	.pwrdm_name	= "mpu_pwrdm",
> +	.pwrdm		= { .name = "mpu_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP | CLKDM_CAN_FORCE_WAKEUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_MPU_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -138,7 +138,7 @@ static struct clockdomain mpu_34xx_clkdm = {
>  
>  static struct clockdomain neon_clkdm = {
>  	.name		= "neon_clkdm",
> -	.pwrdm_name	= "neon_pwrdm",
> +	.pwrdm		= { .name = "neon_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_NEON_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -146,7 +146,7 @@ static struct clockdomain neon_clkdm = {
>  
>  static struct clockdomain iva2_clkdm = {
>  	.name		= "iva2_clkdm",
> -	.pwrdm_name	= "iva2_pwrdm",
> +	.pwrdm		= { .name = "iva2_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_IVA2_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -154,7 +154,7 @@ static struct clockdomain iva2_clkdm = {
>  
>  static struct clockdomain gfx_3430es1_clkdm = {
>  	.name		= "gfx_clkdm",
> -	.pwrdm_name	= "gfx_pwrdm",
> +	.pwrdm		= { .name = "gfx_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430ES1_CLKTRCTRL_GFX_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES1),
> @@ -162,7 +162,7 @@ static struct clockdomain gfx_3430es1_clkdm = {
>  
>  static struct clockdomain sgx_clkdm = {
>  	.name		= "sgx_clkdm",
> -	.pwrdm_name	= "sgx_pwrdm",
> +	.pwrdm		= { .name = "sgx_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430ES2_CLKTRCTRL_SGX_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES2),
> @@ -177,7 +177,7 @@ static struct clockdomain sgx_clkdm = {
>   */
>  static struct clockdomain d2d_clkdm = {
>  	.name		= "d2d_clkdm",
> -	.pwrdm_name	= "core_pwrdm",
> +	.pwrdm		= { .name = "core_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP,
>  	.clktrctrl_mask = OMAP3430ES1_CLKTRCTRL_D2D_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -185,7 +185,7 @@ static struct clockdomain d2d_clkdm = {
>  
>  static struct clockdomain core_l3_34xx_clkdm = {
>  	.name		= "core_l3_clkdm",
> -	.pwrdm_name	= "core_pwrdm",
> +	.pwrdm		= { .name = "core_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_L3_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -193,7 +193,7 @@ static struct clockdomain core_l3_34xx_clkdm = {
>  
>  static struct clockdomain core_l4_34xx_clkdm = {
>  	.name		= "core_l4_clkdm",
> -	.pwrdm_name	= "core_pwrdm",
> +	.pwrdm		= { .name = "core_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_L4_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -201,7 +201,7 @@ static struct clockdomain core_l4_34xx_clkdm = {
>  
>  static struct clockdomain dss_34xx_clkdm = {
>  	.name		= "dss_clkdm",
> -	.pwrdm_name	= "dss_pwrdm",
> +	.pwrdm		= { .name = "dss_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_DSS_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -209,7 +209,7 @@ static struct clockdomain dss_34xx_clkdm = {
>  
>  static struct clockdomain cam_clkdm = {
>  	.name		= "cam_clkdm",
> -	.pwrdm_name	= "cam_pwrdm",
> +	.pwrdm		= { .name = "cam_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_CAM_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -217,7 +217,7 @@ static struct clockdomain cam_clkdm = {
>  
>  static struct clockdomain usbhost_clkdm = {
>  	.name		= "usbhost_clkdm",
> -	.pwrdm_name	= "usbhost_pwrdm",
> +	.pwrdm		= { .name = "usbhost_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430ES2_CLKTRCTRL_USBHOST_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430ES2),
> @@ -225,7 +225,7 @@ static struct clockdomain usbhost_clkdm = {
>  
>  static struct clockdomain per_clkdm = {
>  	.name		= "per_clkdm",
> -	.pwrdm_name	= "per_pwrdm",
> +	.pwrdm		= { .name = "per_pwrdm" },
>  	.flags		= CLKDM_CAN_HWSUP_SWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_PER_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -233,7 +233,7 @@ static struct clockdomain per_clkdm = {
>  
>  static struct clockdomain emu_clkdm = {
>  	.name		= "emu_clkdm",
> -	.pwrdm_name	= "emu_pwrdm",
> +	.pwrdm		= { .name = "emu_pwrdm" },
>  	.flags		= CLKDM_CAN_ENABLE_AUTO | CLKDM_CAN_SWSUP,
>  	.clktrctrl_mask = OMAP3430_CLKTRCTRL_EMU_MASK,
>  	.omap_chip	= OMAP_CHIP_INIT(CHIP_IS_OMAP3430),
> @@ -247,14 +247,16 @@ static struct clockdomain emu_clkdm = {
>  
>  static struct clkdm_pwrdm_autodep clkdm_pwrdm_autodeps[] = {
>  	{
> -		.pwrdm_name = "mpu_pwrdm",
> +		.pwrdm	   = { .name = "mpu_pwrdm" },
>  		.omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430)
>  	},
>  	{
> -		.pwrdm_name = "iva2_pwrdm",
> +		.pwrdm	   = { .name = "iva2_pwrdm" },
>  		.omap_chip = OMAP_CHIP_INIT(CHIP_IS_OMAP3430)
>  	},
> -	{ NULL }
> +	{
> +		.pwrdm	   = { .name = NULL },
> +	}
>  };
>  
>  /*
> diff --git a/include/asm-arm/arch-omap/clockdomain.h b/include/asm-arm/arch-omap/clockdomain.h
> index d2a4551..b58bb73 100644
> --- a/include/asm-arm/arch-omap/clockdomain.h
> +++ b/include/asm-arm/arch-omap/clockdomain.h
> @@ -48,11 +48,13 @@
>   */
>  struct clkdm_pwrdm_autodep {
>  
> -	/* Name of the powerdomain to add a wkdep/sleepdep on */
> -	const char *pwrdm_name;
> +	union {
> +		/* Name of the powerdomain to add a wkdep/sleepdep on */
> +		const char *name;
>  
> -	/* Powerdomain pointer (looked up at clkdm_init() time) */
> -	struct powerdomain *pwrdm;
> +		/* Powerdomain pointer (looked up at clkdm_init() time) */
> +		struct powerdomain *ptr;
> +	} pwrdm;
>  
>  	/* OMAP chip types that this clockdomain dep is valid on */
>  	const struct omap_chip_id omap_chip;
> @@ -64,8 +66,13 @@ struct clockdomain {
>  	/* Clockdomain name */
>  	const char *name;
>  
> -	/* Powerdomain enclosing this clockdomain */
> -	const char *pwrdm_name;
> +	union {
> +		/* Powerdomain enclosing this clockdomain */
> +		const char *name;
> +
> +		/* Powerdomain pointer assigned at clkdm_register() */
> +		struct powerdomain *ptr;
> +	} pwrdm;
>  
>  	/* CLKTRCTRL/AUTOSTATE field mask in CM_CLKSTCTRL reg */
>  	const u16 clktrctrl_mask;
> @@ -79,9 +86,6 @@ struct clockdomain {
>  	/* Usecount tracking */
>  	atomic_t usecount;
>  
> -	/* Powerdomain pointer assigned at clkdm_register() */
> -	struct powerdomain *pwrdm;
> -
>  	struct list_head node;
>  
>  };
> --
> To unsubscribe from this list: send the line "unsubscribe linux-omap" in
> the body of a message to majordomo@xxxxxxxxxxxxxxx
> More majordomo info at  http://vger.kernel.org/majordomo-info.html
--
To unsubscribe from this list: send the line "unsubscribe linux-omap" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at  http://vger.kernel.org/majordomo-info.html

[Index of Archives]     [Linux Arm (vger)]     [ARM Kernel]     [ARM MSM]     [Linux Tegra]     [Linux WPAN Networking]     [Linux Wireless Networking]     [Maemo Users]     [Linux USB Devel]     [Video for Linux]     [Linux Audio Users]     [Yosemite Trails]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux