diff options
Diffstat (limited to 'arch/arm/mach-omap2/omap_hwmod_2420_data.c')
| -rw-r--r-- | arch/arm/mach-omap2/omap_hwmod_2420_data.c | 17 | 
1 files changed, 14 insertions, 3 deletions
diff --git a/arch/arm/mach-omap2/omap_hwmod_2420_data.c b/arch/arm/mach-omap2/omap_hwmod_2420_data.c index 6d720621352..a5409ce3f32 100644 --- a/arch/arm/mach-omap2/omap_hwmod_2420_data.c +++ b/arch/arm/mach-omap2/omap_hwmod_2420_data.c @@ -875,6 +875,10 @@ static struct omap_hwmod_ocp_if *omap2420_dss_slaves[] = {  };  static struct omap_hwmod_opt_clk dss_opt_clks[] = { +	/* +	 * The DSS HW needs all DSS clocks enabled during reset. The dss_core +	 * driver does not use these clocks. +	 */  	{ .role = "tv_clk", .clk = "dss_54m_fck" },  	{ .role = "sys_clk", .clk = "dss2_fck" },  }; @@ -899,7 +903,7 @@ static struct omap_hwmod omap2420_dss_core_hwmod = {  	.slaves_cnt	= ARRAY_SIZE(omap2420_dss_slaves),  	.masters	= omap2420_dss_masters,  	.masters_cnt	= ARRAY_SIZE(omap2420_dss_masters), -	.flags		= HWMOD_NO_IDLEST, +	.flags		= HWMOD_NO_IDLEST | HWMOD_CONTROL_OPT_CLKS_IN_RESET,  };  /* l4_core -> dss_dispc */ @@ -939,6 +943,7 @@ static struct omap_hwmod omap2420_dss_dispc_hwmod = {  	.slaves		= omap2420_dss_dispc_slaves,  	.slaves_cnt	= ARRAY_SIZE(omap2420_dss_dispc_slaves),  	.flags		= HWMOD_NO_IDLEST, +	.dev_attr	= &omap2_3_dss_dispc_dev_attr  };  /* l4_core -> dss_rfbi */ @@ -961,6 +966,10 @@ static struct omap_hwmod_ocp_if *omap2420_dss_rfbi_slaves[] = {  	&omap2420_l4_core__dss_rfbi,  }; +static struct omap_hwmod_opt_clk dss_rfbi_opt_clks[] = { +	{ .role = "ick", .clk = "dss_ick" }, +}; +  static struct omap_hwmod omap2420_dss_rfbi_hwmod = {  	.name		= "dss_rfbi",  	.class		= &omap2_rfbi_hwmod_class, @@ -972,6 +981,8 @@ static struct omap_hwmod omap2420_dss_rfbi_hwmod = {  			.module_offs = CORE_MOD,  		},  	}, +	.opt_clks	= dss_rfbi_opt_clks, +	.opt_clks_cnt	= ARRAY_SIZE(dss_rfbi_opt_clks),  	.slaves		= omap2420_dss_rfbi_slaves,  	.slaves_cnt	= ARRAY_SIZE(omap2420_dss_rfbi_slaves),  	.flags		= HWMOD_NO_IDLEST, @@ -981,7 +992,7 @@ static struct omap_hwmod omap2420_dss_rfbi_hwmod = {  static struct omap_hwmod_ocp_if omap2420_l4_core__dss_venc = {  	.master		= &omap2420_l4_core_hwmod,  	.slave		= &omap2420_dss_venc_hwmod, -	.clk		= "dss_54m_fck", +	.clk		= "dss_ick",  	.addr		= omap2_dss_venc_addrs,  	.fw = {  		.omap2 = { @@ -1001,7 +1012,7 @@ static struct omap_hwmod_ocp_if *omap2420_dss_venc_slaves[] = {  static struct omap_hwmod omap2420_dss_venc_hwmod = {  	.name		= "dss_venc",  	.class		= &omap2_venc_hwmod_class, -	.main_clk	= "dss1_fck", +	.main_clk	= "dss_54m_fck",  	.prcm		= {  		.omap2 = {  			.prcm_reg_id = 1,  |