diff options
Diffstat (limited to 'drivers/gpu/drm/i915/intel_sdvo.c')
-rw-r--r-- | drivers/gpu/drm/i915/intel_sdvo.c | 10 |
1 files changed, 4 insertions, 6 deletions
diff --git a/drivers/gpu/drm/i915/intel_sdvo.c b/drivers/gpu/drm/i915/intel_sdvo.c index 4324f33212d6..754086f83941 100644 --- a/drivers/gpu/drm/i915/intel_sdvo.c +++ b/drivers/gpu/drm/i915/intel_sdvo.c | |||
@@ -2544,21 +2544,19 @@ bool intel_sdvo_init(struct drm_device *dev, int sdvo_reg) | |||
2544 | if (!intel_sdvo) | 2544 | if (!intel_sdvo) |
2545 | return false; | 2545 | return false; |
2546 | 2546 | ||
2547 | intel_sdvo->sdvo_reg = sdvo_reg; | ||
2548 | intel_sdvo->slave_addr = intel_sdvo_get_slave_addr(dev, sdvo_reg) >> 1; | ||
2549 | intel_sdvo_select_i2c_bus(dev_priv, intel_sdvo, sdvo_reg); | ||
2547 | if (!intel_sdvo_init_ddc_proxy(intel_sdvo, dev)) { | 2550 | if (!intel_sdvo_init_ddc_proxy(intel_sdvo, dev)) { |
2548 | kfree(intel_sdvo); | 2551 | kfree(intel_sdvo); |
2549 | return false; | 2552 | return false; |
2550 | } | 2553 | } |
2551 | 2554 | ||
2552 | intel_sdvo->sdvo_reg = sdvo_reg; | 2555 | /* encoder type will be decided later */ |
2553 | |||
2554 | intel_encoder = &intel_sdvo->base; | 2556 | intel_encoder = &intel_sdvo->base; |
2555 | intel_encoder->type = INTEL_OUTPUT_SDVO; | 2557 | intel_encoder->type = INTEL_OUTPUT_SDVO; |
2556 | /* encoder type will be decided later */ | ||
2557 | drm_encoder_init(dev, &intel_encoder->base, &intel_sdvo_enc_funcs, 0); | 2558 | drm_encoder_init(dev, &intel_encoder->base, &intel_sdvo_enc_funcs, 0); |
2558 | 2559 | ||
2559 | intel_sdvo->slave_addr = intel_sdvo_get_slave_addr(dev, sdvo_reg) >> 1; | ||
2560 | intel_sdvo_select_i2c_bus(dev_priv, intel_sdvo, sdvo_reg); | ||
2561 | |||
2562 | /* Read the regs to test if we can talk to the device */ | 2560 | /* Read the regs to test if we can talk to the device */ |
2563 | for (i = 0; i < 0x40; i++) { | 2561 | for (i = 0; i < 0x40; i++) { |
2564 | u8 byte; | 2562 | u8 byte; |