Rev 3480 | Rev 4104 | Go to most recent revision | Show entire file | Regard whitespace | Details | Blame | Last modification | View Log | RSS feed
Rev 3480 | Rev 3746 | ||
---|---|---|---|
Line 446... | Line 446... | ||
446 | for (i = 0; i < ARRAY_SIZE(intel_dvo_devices); i++) { |
446 | for (i = 0; i < ARRAY_SIZE(intel_dvo_devices); i++) { |
447 | struct drm_connector *connector = &intel_connector->base; |
447 | struct drm_connector *connector = &intel_connector->base; |
448 | const struct intel_dvo_device *dvo = &intel_dvo_devices[i]; |
448 | const struct intel_dvo_device *dvo = &intel_dvo_devices[i]; |
449 | struct i2c_adapter *i2c; |
449 | struct i2c_adapter *i2c; |
450 | int gpio; |
450 | int gpio; |
- | 451 | bool dvoinit; |
|
Line 451... | Line 452... | ||
451 | 452 | ||
452 | /* Allow the I2C driver info to specify the GPIO to be used in |
453 | /* Allow the I2C driver info to specify the GPIO to be used in |
453 | * special cases, but otherwise default to what's defined |
454 | * special cases, but otherwise default to what's defined |
454 | * in the spec. |
455 | * in the spec. |
Line 465... | Line 466... | ||
465 | * on i830 laptops, which are on GPIOB (DVOA). |
466 | * on i830 laptops, which are on GPIOB (DVOA). |
466 | */ |
467 | */ |
467 | i2c = intel_gmbus_get_adapter(dev_priv, gpio); |
468 | i2c = intel_gmbus_get_adapter(dev_priv, gpio); |
Line 468... | Line 469... | ||
468 | 469 | ||
- | 470 | intel_dvo->dev = *dvo; |
|
- | 471 | ||
- | 472 | /* GMBUS NAK handling seems to be unstable, hence let the |
|
- | 473 | * transmitter detection run in bit banging mode for now. |
|
- | 474 | */ |
|
- | 475 | intel_gmbus_force_bit(i2c, true); |
|
469 | intel_dvo->dev = *dvo; |
476 | |
- | 477 | dvoinit = dvo->dev_ops->init(&intel_dvo->dev, i2c); |
|
- | 478 | ||
- | 479 | intel_gmbus_force_bit(i2c, false); |
|
- | 480 | ||
470 | if (!dvo->dev_ops->init(&intel_dvo->dev, i2c)) |
481 | if (!dvoinit) |
Line 471... | Line 482... | ||
471 | continue; |
482 | continue; |
472 | 483 | ||
473 | intel_encoder->type = INTEL_OUTPUT_DVO; |
484 | intel_encoder->type = INTEL_OUTPUT_DVO; |