|
@@ -1369,9 +1369,14 @@ static struct omap_hwmod_ocp_if *omap3xxx_dss_slaves[] = {
|
|
|
};
|
|
|
|
|
|
static struct omap_hwmod_opt_clk dss_opt_clks[] = {
|
|
|
- { .role = "tv_clk", .clk = "dss_tv_fck" },
|
|
|
- { .role = "video_clk", .clk = "dss_96m_fck" },
|
|
|
+ /*
|
|
|
+ * The DSS HW needs all DSS clocks enabled during reset. The dss_core
|
|
|
+ * driver does not use these clocks.
|
|
|
+ */
|
|
|
{ .role = "sys_clk", .clk = "dss2_alwon_fck" },
|
|
|
+ { .role = "tv_clk", .clk = "dss_tv_fck" },
|
|
|
+ /* required only on OMAP3430 */
|
|
|
+ { .role = "tv_dac_clk", .clk = "dss_96m_fck" },
|
|
|
};
|
|
|
|
|
|
static struct omap_hwmod omap3430es1_dss_core_hwmod = {
|
|
@@ -1394,11 +1399,12 @@ static struct omap_hwmod omap3430es1_dss_core_hwmod = {
|
|
|
.slaves_cnt = ARRAY_SIZE(omap3430es1_dss_slaves),
|
|
|
.masters = omap3xxx_dss_masters,
|
|
|
.masters_cnt = ARRAY_SIZE(omap3xxx_dss_masters),
|
|
|
- .flags = HWMOD_NO_IDLEST,
|
|
|
+ .flags = HWMOD_NO_IDLEST | HWMOD_CONTROL_OPT_CLKS_IN_RESET,
|
|
|
};
|
|
|
|
|
|
static struct omap_hwmod omap3xxx_dss_core_hwmod = {
|
|
|
.name = "dss_core",
|
|
|
+ .flags = HWMOD_CONTROL_OPT_CLKS_IN_RESET,
|
|
|
.class = &omap2_dss_hwmod_class,
|
|
|
.main_clk = "dss1_alwon_fck", /* instead of dss_fck */
|
|
|
.sdma_reqs = omap3xxx_dss_sdma_chs,
|