drm/radeon/kms: reset ddc_bus in object header parsing
Some LVDS connectors don't have a ddc bus, so reset the ddc bus to invalid before parsing the next connector to avoid using stale ddc bus data. Should fix fdo bug 28164. Signed-off-by: Alex Deucher <alexdeucher@gmail.com> Cc: stable@kernel.org Signed-off-by: Dave Airlie <airlied@redhat.com>
This commit is contained in:
committed by
Dave Airlie
parent
6fd0248939
commit
2bfcc0fc69
@@ -530,6 +530,8 @@ bool radeon_get_atom_connector_info_from_object_table(struct drm_device *dev)
|
|||||||
}
|
}
|
||||||
|
|
||||||
/* look up gpio for ddc, hpd */
|
/* look up gpio for ddc, hpd */
|
||||||
|
ddc_bus.valid = false;
|
||||||
|
hpd.hpd = RADEON_HPD_NONE;
|
||||||
if ((le16_to_cpu(path->usDeviceTag) &
|
if ((le16_to_cpu(path->usDeviceTag) &
|
||||||
(ATOM_DEVICE_TV_SUPPORT | ATOM_DEVICE_CV_SUPPORT)) == 0) {
|
(ATOM_DEVICE_TV_SUPPORT | ATOM_DEVICE_CV_SUPPORT)) == 0) {
|
||||||
for (j = 0; j < con_obj->ucNumberOfObjects; j++) {
|
for (j = 0; j < con_obj->ucNumberOfObjects; j++) {
|
||||||
@@ -585,9 +587,6 @@ bool radeon_get_atom_connector_info_from_object_table(struct drm_device *dev)
|
|||||||
break;
|
break;
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
} else {
|
|
||||||
hpd.hpd = RADEON_HPD_NONE;
|
|
||||||
ddc_bus.valid = false;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
/* needed for aux chan transactions */
|
/* needed for aux chan transactions */
|
||||||
|
Reference in New Issue
Block a user