diff options
| -rw-r--r-- | drivers/gpu/drm/bridge/dw_hdmi.c | 16 |
1 files changed, 8 insertions, 8 deletions
diff --git a/drivers/gpu/drm/bridge/dw_hdmi.c b/drivers/gpu/drm/bridge/dw_hdmi.c index b75922d4901e..cca1c3d165e2 100644 --- a/drivers/gpu/drm/bridge/dw_hdmi.c +++ b/drivers/gpu/drm/bridge/dw_hdmi.c | |||
| @@ -182,20 +182,20 @@ static void hdmi_mask_writeb(struct dw_hdmi *hdmi, u8 data, unsigned int reg, | |||
| 182 | static void hdmi_set_cts_n(struct dw_hdmi *hdmi, unsigned int cts, | 182 | static void hdmi_set_cts_n(struct dw_hdmi *hdmi, unsigned int cts, |
| 183 | unsigned int n) | 183 | unsigned int n) |
| 184 | { | 184 | { |
| 185 | hdmi_writeb(hdmi, n & 0xff, HDMI_AUD_N1); | 185 | /* Must be set/cleared first */ |
| 186 | hdmi_writeb(hdmi, (n >> 8) & 0xff, HDMI_AUD_N2); | 186 | hdmi_modb(hdmi, 0, HDMI_AUD_CTS3_CTS_MANUAL, HDMI_AUD_CTS3); |
| 187 | hdmi_writeb(hdmi, (n >> 16) & 0x0f, HDMI_AUD_N3); | ||
| 188 | 187 | ||
| 189 | /* nshift factor = 0 */ | 188 | /* nshift factor = 0 */ |
| 190 | hdmi_modb(hdmi, 0, HDMI_AUD_CTS3_N_SHIFT_MASK, HDMI_AUD_CTS3); | 189 | hdmi_modb(hdmi, 0, HDMI_AUD_CTS3_N_SHIFT_MASK, HDMI_AUD_CTS3); |
| 191 | 190 | ||
| 192 | /* Must be set/cleared first */ | ||
| 193 | hdmi_modb(hdmi, 0, HDMI_AUD_CTS3_CTS_MANUAL, HDMI_AUD_CTS3); | ||
| 194 | |||
| 195 | hdmi_writeb(hdmi, cts & 0xff, HDMI_AUD_CTS1); | ||
| 196 | hdmi_writeb(hdmi, (cts >> 8) & 0xff, HDMI_AUD_CTS2); | ||
| 197 | hdmi_writeb(hdmi, ((cts >> 16) & HDMI_AUD_CTS3_AUDCTS19_16_MASK) | | 191 | hdmi_writeb(hdmi, ((cts >> 16) & HDMI_AUD_CTS3_AUDCTS19_16_MASK) | |
| 198 | HDMI_AUD_CTS3_CTS_MANUAL, HDMI_AUD_CTS3); | 192 | HDMI_AUD_CTS3_CTS_MANUAL, HDMI_AUD_CTS3); |
| 193 | hdmi_writeb(hdmi, (cts >> 8) & 0xff, HDMI_AUD_CTS2); | ||
| 194 | hdmi_writeb(hdmi, cts & 0xff, HDMI_AUD_CTS1); | ||
| 195 | |||
| 196 | hdmi_writeb(hdmi, (n >> 16) & 0x0f, HDMI_AUD_N3); | ||
| 197 | hdmi_writeb(hdmi, (n >> 8) & 0xff, HDMI_AUD_N2); | ||
| 198 | hdmi_writeb(hdmi, n & 0xff, HDMI_AUD_N1); | ||
| 199 | } | 199 | } |
| 200 | 200 | ||
| 201 | static unsigned int hdmi_compute_n(unsigned int freq, unsigned long pixel_clk, | 201 | static unsigned int hdmi_compute_n(unsigned int freq, unsigned long pixel_clk, |
