提交 77416187 编写于 作者: A Alex Deucher 提交者: Dave Airlie

drm/radeon/kms: legacy tv dac cleanup

- fix formatting
- clean up tv_dac_cntl handling for tv
Signed-off-by: NAlex Deucher <alexdeucher@gmail.com>
Signed-off-by: NDave Airlie <airlied@redhat.com>
上级 01a356fd
...@@ -830,8 +830,8 @@ static void radeon_legacy_tv_dac_dpms(struct drm_encoder *encoder, int mode) ...@@ -830,8 +830,8 @@ static void radeon_legacy_tv_dac_dpms(struct drm_encoder *encoder, int mode)
crtc2_gen_cntl &= ~RADEON_CRTC2_CRT2_ON; crtc2_gen_cntl &= ~RADEON_CRTC2_CRT2_ON;
if (rdev->family == CHIP_R420 || if (rdev->family == CHIP_R420 ||
rdev->family == CHIP_R423 || rdev->family == CHIP_R423 ||
rdev->family == CHIP_RV410) rdev->family == CHIP_RV410)
tv_dac_cntl |= (R420_TV_DAC_RDACPD | tv_dac_cntl |= (R420_TV_DAC_RDACPD |
R420_TV_DAC_GDACPD | R420_TV_DAC_GDACPD |
R420_TV_DAC_BDACPD | R420_TV_DAC_BDACPD |
...@@ -907,35 +907,43 @@ static void radeon_legacy_tv_dac_mode_set(struct drm_encoder *encoder, ...@@ -907,35 +907,43 @@ static void radeon_legacy_tv_dac_mode_set(struct drm_encoder *encoder,
if (rdev->family != CHIP_R200) { if (rdev->family != CHIP_R200) {
tv_dac_cntl = RREG32(RADEON_TV_DAC_CNTL); tv_dac_cntl = RREG32(RADEON_TV_DAC_CNTL);
if (rdev->family == CHIP_R420 || if (rdev->family == CHIP_R420 ||
rdev->family == CHIP_R423 || rdev->family == CHIP_R423 ||
rdev->family == CHIP_RV410) { rdev->family == CHIP_RV410) {
tv_dac_cntl &= ~(RADEON_TV_DAC_STD_MASK | tv_dac_cntl &= ~(RADEON_TV_DAC_STD_MASK |
RADEON_TV_DAC_BGADJ_MASK | RADEON_TV_DAC_BGADJ_MASK |
R420_TV_DAC_DACADJ_MASK | R420_TV_DAC_DACADJ_MASK |
R420_TV_DAC_RDACPD | R420_TV_DAC_RDACPD |
R420_TV_DAC_GDACPD | R420_TV_DAC_GDACPD |
R420_TV_DAC_BDACPD | R420_TV_DAC_BDACPD |
R420_TV_DAC_TVENABLE); R420_TV_DAC_TVENABLE);
} else { } else {
tv_dac_cntl &= ~(RADEON_TV_DAC_STD_MASK | tv_dac_cntl &= ~(RADEON_TV_DAC_STD_MASK |
RADEON_TV_DAC_BGADJ_MASK | RADEON_TV_DAC_BGADJ_MASK |
RADEON_TV_DAC_DACADJ_MASK | RADEON_TV_DAC_DACADJ_MASK |
RADEON_TV_DAC_RDACPD | RADEON_TV_DAC_RDACPD |
RADEON_TV_DAC_GDACPD | RADEON_TV_DAC_GDACPD |
RADEON_TV_DAC_BDACPD); RADEON_TV_DAC_BDACPD);
} }
/* FIXME TV */ tv_dac_cntl |= RADEON_TV_DAC_NBLANK | RADEON_TV_DAC_NHOLD;
if (tv_dac) {
struct radeon_encoder_tv_dac *tv_dac = radeon_encoder->enc_priv; if (is_tv) {
tv_dac_cntl |= (RADEON_TV_DAC_NBLANK | if (tv_dac->tv_std == TV_STD_NTSC ||
RADEON_TV_DAC_NHOLD | tv_dac->tv_std == TV_STD_NTSC_J ||
RADEON_TV_DAC_STD_PS2 | tv_dac->tv_std == TV_STD_PAL_M ||
tv_dac->ps2_tvdac_adj); tv_dac->tv_std == TV_STD_PAL_60)
tv_dac_cntl |= tv_dac->ntsc_tvdac_adj;
else
tv_dac_cntl |= tv_dac->pal_tvdac_adj;
if (tv_dac->tv_std == TV_STD_NTSC ||
tv_dac->tv_std == TV_STD_NTSC_J)
tv_dac_cntl |= RADEON_TV_DAC_STD_NTSC;
else
tv_dac_cntl |= RADEON_TV_DAC_STD_PAL;
} else } else
tv_dac_cntl |= (RADEON_TV_DAC_NBLANK | tv_dac_cntl |= (RADEON_TV_DAC_STD_PS2 |
RADEON_TV_DAC_NHOLD | tv_dac->ps2_tvdac_adj);
RADEON_TV_DAC_STD_PS2);
WREG32(RADEON_TV_DAC_CNTL, tv_dac_cntl); WREG32(RADEON_TV_DAC_CNTL, tv_dac_cntl);
} }
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册