Applied. Thanks, Inki Dae > -----Original Message----- > From: Rahul Sharma [mailto:rahul.sharma@xxxxxxxxxxx] > Sent: Tuesday, June 11, 2013 3:54 PM > To: linux-samsung-soc@xxxxxxxxxxxxxxx; devicetree-discuss@xxxxxxxxxxxxxxxx; > dri-devel@xxxxxxxxxxxxxxxxxxxxx > Cc: kgene.kim@xxxxxxxxxxx; sw0312.kim@xxxxxxxxxxx; inki.dae@xxxxxxxxxxx; > seanpaul@xxxxxxxxxxxx; joshi@xxxxxxxxxxx; r.sh.open@xxxxxxxxx; Rahul > Sharma > Subject: [PATCH 1/4] drm/exynos: Prepare/Unprepare HDMI subsystem clocks > > From: Sean Paul <seanpaul@xxxxxxxxxxxx> > > Change the clk_enable/clk_disable calls in mixer and hdmi drivers into > clk_prepare_enable/clk_disable_unprepare, respectively. > > Signed-off-by: Sean Paul <seanpaul@xxxxxxxxxxxx> > Signed-off-by: Rahul Sharma <rahul.sharma@xxxxxxxxxxx> > --- > drivers/gpu/drm/exynos/exynos_hdmi.c | 24 ++++++++++++------------ > drivers/gpu/drm/exynos/exynos_mixer.c | 12 ++++++------ > 2 files changed, 18 insertions(+), 18 deletions(-) > > diff --git a/drivers/gpu/drm/exynos/exynos_hdmi.c > b/drivers/gpu/drm/exynos/exynos_hdmi.c > index 04255fe..5a98194 100644 > --- a/drivers/gpu/drm/exynos/exynos_hdmi.c > +++ b/drivers/gpu/drm/exynos/exynos_hdmi.c > @@ -1117,9 +1117,9 @@ static void hdmi_v13_mode_apply(struct hdmi_context > *hdata) > hdmi_regs_dump(hdata, "timing apply"); > } > > - clk_disable(hdata->res.sclk_hdmi); > + clk_disable_unprepare(hdata->res.sclk_hdmi); > clk_set_parent(hdata->res.sclk_hdmi, hdata->res.sclk_hdmiphy); > - clk_enable(hdata->res.sclk_hdmi); > + clk_prepare_enable(hdata->res.sclk_hdmi); > > /* enable HDMI and timing generator */ > hdmi_reg_writemask(hdata, HDMI_CON_0, ~0, HDMI_EN); > @@ -1284,9 +1284,9 @@ static void hdmi_v14_mode_apply(struct hdmi_context > *hdata) > hdmi_regs_dump(hdata, "timing apply"); > } > > - clk_disable(hdata->res.sclk_hdmi); > + clk_disable_unprepare(hdata->res.sclk_hdmi); > clk_set_parent(hdata->res.sclk_hdmi, hdata->res.sclk_hdmiphy); > - clk_enable(hdata->res.sclk_hdmi); > + clk_prepare_enable(hdata->res.sclk_hdmi); > > /* enable HDMI and timing generator */ > hdmi_reg_writemask(hdata, HDMI_CON_0, ~0, HDMI_EN); > @@ -1310,9 +1310,9 @@ static void hdmiphy_conf_reset(struct hdmi_context > *hdata) > u8 buffer[2]; > u32 reg; > > - clk_disable(hdata->res.sclk_hdmi); > + clk_disable_unprepare(hdata->res.sclk_hdmi); > clk_set_parent(hdata->res.sclk_hdmi, hdata->res.sclk_pixel); > - clk_enable(hdata->res.sclk_hdmi); > + clk_prepare_enable(hdata->res.sclk_hdmi); > > /* operation mode */ > buffer[0] = 0x1f; > @@ -1701,9 +1701,9 @@ static void hdmi_poweron(struct hdmi_context *hdata) > if (regulator_bulk_enable(res->regul_count, res->regul_bulk)) > DRM_DEBUG_KMS("failed to enable regulator bulk\n"); > > - clk_enable(res->hdmiphy); > - clk_enable(res->hdmi); > - clk_enable(res->sclk_hdmi); > + clk_prepare_enable(res->hdmiphy); > + clk_prepare_enable(res->hdmi); > + clk_prepare_enable(res->sclk_hdmi); > > hdmiphy_poweron(hdata); > } > @@ -1726,9 +1726,9 @@ static void hdmi_poweroff(struct hdmi_context *hdata) > hdmiphy_conf_reset(hdata); > hdmiphy_poweroff(hdata); > > - clk_disable(res->sclk_hdmi); > - clk_disable(res->hdmi); > - clk_disable(res->hdmiphy); > + clk_disable_unprepare(res->sclk_hdmi); > + clk_disable_unprepare(res->hdmi); > + clk_disable_unprepare(res->hdmiphy); > regulator_bulk_disable(res->regul_count, res->regul_bulk); > > mutex_lock(&hdata->hdmi_mutex); > diff --git a/drivers/gpu/drm/exynos/exynos_mixer.c > b/drivers/gpu/drm/exynos/exynos_mixer.c > index b0882b3..978894e 100644 > --- a/drivers/gpu/drm/exynos/exynos_mixer.c > +++ b/drivers/gpu/drm/exynos/exynos_mixer.c > @@ -900,10 +900,10 @@ static void mixer_poweron(struct mixer_context *ctx) > ctx->powered = true; > mutex_unlock(&ctx->mixer_mutex); > > - clk_enable(res->mixer); > + clk_prepare_enable(res->mixer); > if (ctx->vp_enabled) { > - clk_enable(res->vp); > - clk_enable(res->sclk_mixer); > + clk_prepare_enable(res->vp); > + clk_prepare_enable(res->sclk_mixer); > } > > mixer_reg_write(res, MXR_INT_EN, ctx->int_en); > @@ -927,10 +927,10 @@ static void mixer_poweroff(struct mixer_context *ctx) > > ctx->int_en = mixer_reg_read(res, MXR_INT_EN); > > - clk_disable(res->mixer); > + clk_disable_unprepare(res->mixer); > if (ctx->vp_enabled) { > - clk_disable(res->vp); > - clk_disable(res->sclk_mixer); > + clk_disable_unprepare(res->vp); > + clk_disable_unprepare(res->sclk_mixer); > } > > mutex_lock(&ctx->mixer_mutex); > -- > 1.7.10.4 -- To unsubscribe from this list: send the line "unsubscribe linux-samsung-soc" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html