Skip to content

Commit

Permalink
drm/omap: fix max fclk divider for omap36xx
Browse files Browse the repository at this point in the history
commit e2c4ed1 upstream.

The OMAP36xx and AM/DM37x TRMs say that the maximum divider for DSS fclk
(in CM_CLKSEL_DSS) is 32. Experimentation shows that this is not
correct, and using divider of 32 breaks DSS with a flood or underflows
and sync losts. Dividers up to 31 seem to work fine.

There is another patch to the DT files to limit the divider correctly,
but as the DSS driver also needs to know the maximum divider to be able
to iteratively find good rates, we also need to do the fix in the DSS
driver.

Signed-off-by: Tomi Valkeinen <tomi.valkeinen@ti.com>
Cc: Adam Ford <aford173@gmail.com>
Link: https://patchwork.freedesktop.org/patch/msgid/20191002122542.8449-1-tomi.valkeinen@ti.com
Tested-by: Adam Ford <aford173@gmail.com>
Reviewed-by: Jyri Sarha <jsarha@ti.com>
[bwh: Backported to 3.16: adjust filename, context]
Signed-off-by: Ben Hutchings <ben@decadent.org.uk>
  • Loading branch information
Tomi Valkeinen authored and Ben Hutchings committed Dec 19, 2019
1 parent 099a8d6 commit 4b91110
Showing 1 changed file with 1 addition and 1 deletion.
2 changes: 1 addition & 1 deletion drivers/video/fbdev/omap2/dss/dss.c
Original file line number Diff line number Diff line change
Expand Up @@ -708,7 +708,7 @@ static const struct dss_features omap34xx_dss_feats __initconst = {
};

static const struct dss_features omap3630_dss_feats __initconst = {
.fck_div_max = 32,
.fck_div_max = 31,
.dss_fck_multiplier = 1,
.parent_clk_name = "dpll4_ck",
.dpi_select_source = &dss_dpi_select_source_omap2_omap3,
Expand Down

0 comments on commit 4b91110

Please sign in to comment.