diff options
| -rw-r--r-- | drivers/gpu/drm/nouveau/nouveau_connector.c | 6 |
1 files changed, 4 insertions, 2 deletions
diff --git a/drivers/gpu/drm/nouveau/nouveau_connector.c b/drivers/gpu/drm/nouveau/nouveau_connector.c index b1b22baf1428..a1473fff06ac 100644 --- a/drivers/gpu/drm/nouveau/nouveau_connector.c +++ b/drivers/gpu/drm/nouveau/nouveau_connector.c | |||
| @@ -104,7 +104,7 @@ nouveau_connector_ddc_detect(struct drm_connector *connector, | |||
| 104 | int i; | 104 | int i; |
| 105 | 105 | ||
| 106 | for (i = 0; i < DRM_CONNECTOR_MAX_ENCODER; i++) { | 106 | for (i = 0; i < DRM_CONNECTOR_MAX_ENCODER; i++) { |
| 107 | struct nouveau_i2c_chan *i2c; | 107 | struct nouveau_i2c_chan *i2c = NULL; |
| 108 | struct nouveau_encoder *nv_encoder; | 108 | struct nouveau_encoder *nv_encoder; |
| 109 | struct drm_mode_object *obj; | 109 | struct drm_mode_object *obj; |
| 110 | int id; | 110 | int id; |
| @@ -117,7 +117,9 @@ nouveau_connector_ddc_detect(struct drm_connector *connector, | |||
| 117 | if (!obj) | 117 | if (!obj) |
| 118 | continue; | 118 | continue; |
| 119 | nv_encoder = nouveau_encoder(obj_to_encoder(obj)); | 119 | nv_encoder = nouveau_encoder(obj_to_encoder(obj)); |
| 120 | i2c = nouveau_i2c_find(dev, nv_encoder->dcb->i2c_index); | 120 | |
| 121 | if (nv_encoder->dcb->i2c_index < 0xf) | ||
| 122 | i2c = nouveau_i2c_find(dev, nv_encoder->dcb->i2c_index); | ||
| 121 | 123 | ||
| 122 | if (i2c && nouveau_probe_i2c_addr(i2c, 0x50)) { | 124 | if (i2c && nouveau_probe_i2c_addr(i2c, 0x50)) { |
| 123 | *pnv_encoder = nv_encoder; | 125 | *pnv_encoder = nv_encoder; |
