diff options
Diffstat (limited to 'drivers/gpu/drm/omapdrm/dss/hdmi5.c')
| -rw-r--r-- | drivers/gpu/drm/omapdrm/dss/hdmi5.c | 22 |
1 files changed, 7 insertions, 15 deletions
diff --git a/drivers/gpu/drm/omapdrm/dss/hdmi5.c b/drivers/gpu/drm/omapdrm/dss/hdmi5.c index a43f7b10e113..0c0a5139a301 100644 --- a/drivers/gpu/drm/omapdrm/dss/hdmi5.c +++ b/drivers/gpu/drm/omapdrm/dss/hdmi5.c | |||
| @@ -38,9 +38,10 @@ | |||
| 38 | #include <linux/gpio.h> | 38 | #include <linux/gpio.h> |
| 39 | #include <linux/regulator/consumer.h> | 39 | #include <linux/regulator/consumer.h> |
| 40 | #include <linux/component.h> | 40 | #include <linux/component.h> |
| 41 | #include <video/omapdss.h> | 41 | #include <linux/of.h> |
| 42 | #include <sound/omap-hdmi-audio.h> | 42 | #include <sound/omap-hdmi-audio.h> |
| 43 | 43 | ||
| 44 | #include "omapdss.h" | ||
| 44 | #include "hdmi5_core.h" | 45 | #include "hdmi5_core.h" |
| 45 | #include "dss.h" | 46 | #include "dss.h" |
| 46 | #include "dss_features.h" | 47 | #include "dss_features.h" |
| @@ -119,7 +120,6 @@ static irqreturn_t hdmi_irq_handler(int irq, void *data) | |||
| 119 | 120 | ||
| 120 | static int hdmi_init_regulator(void) | 121 | static int hdmi_init_regulator(void) |
| 121 | { | 122 | { |
| 122 | int r; | ||
| 123 | struct regulator *reg; | 123 | struct regulator *reg; |
| 124 | 124 | ||
| 125 | if (hdmi.vdda_reg != NULL) | 125 | if (hdmi.vdda_reg != NULL) |
| @@ -131,15 +131,6 @@ static int hdmi_init_regulator(void) | |||
| 131 | return PTR_ERR(reg); | 131 | return PTR_ERR(reg); |
| 132 | } | 132 | } |
| 133 | 133 | ||
| 134 | if (regulator_can_change_voltage(reg)) { | ||
| 135 | r = regulator_set_voltage(reg, 1800000, 1800000); | ||
| 136 | if (r) { | ||
| 137 | devm_regulator_put(reg); | ||
| 138 | DSSWARN("can't set the regulator voltage\n"); | ||
| 139 | return r; | ||
| 140 | } | ||
| 141 | } | ||
| 142 | |||
| 143 | hdmi.vdda_reg = reg; | 134 | hdmi.vdda_reg = reg; |
| 144 | 135 | ||
| 145 | return 0; | 136 | return 0; |
| @@ -198,7 +189,11 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev) | |||
| 198 | if (p->double_pixel) | 189 | if (p->double_pixel) |
| 199 | pc *= 2; | 190 | pc *= 2; |
| 200 | 191 | ||
| 201 | hdmi_pll_compute(&hdmi.pll, pc, &hdmi_cinfo); | 192 | /* DSS_HDMI_TCLK is bitclk / 10 */ |
| 193 | pc *= 10; | ||
| 194 | |||
| 195 | dss_pll_calc_b(&hdmi.pll.pll, clk_get_rate(hdmi.pll.pll.clkin), | ||
| 196 | pc, &hdmi_cinfo); | ||
| 202 | 197 | ||
| 203 | /* disable and clear irqs */ | 198 | /* disable and clear irqs */ |
| 204 | hdmi_wp_clear_irqenable(&hdmi.wp, 0xffffffff); | 199 | hdmi_wp_clear_irqenable(&hdmi.wp, 0xffffffff); |
| @@ -230,9 +225,6 @@ static int hdmi_power_on_full(struct omap_dss_device *dssdev) | |||
| 230 | 225 | ||
| 231 | hdmi5_configure(&hdmi.core, &hdmi.wp, &hdmi.cfg); | 226 | hdmi5_configure(&hdmi.core, &hdmi.wp, &hdmi.cfg); |
| 232 | 227 | ||
| 233 | /* bypass TV gamma table */ | ||
| 234 | dispc_enable_gamma_table(0); | ||
| 235 | |||
| 236 | /* tv size */ | 228 | /* tv size */ |
| 237 | dss_mgr_set_timings(channel, p); | 229 | dss_mgr_set_timings(channel, p); |
| 238 | 230 | ||
