| From: Alex Deucher <alexander.deucher@amd.com> |
| Date: Thu, 11 Apr 2013 12:45:34 -0400 |
| Subject: drm/radeon/evergreen+: don't enable HPD interrupts on eDP/LVDS |
| |
| commit 2e97be73e5f74a317232740ae82eb8f95326a660 upstream. |
| |
| Avoids potential interrupt storms when the display is disabled. |
| |
| May fix: |
| https://bugzilla.kernel.org/show_bug.cgi?id=56041 |
| |
| Signed-off-by: Alex Deucher <alexander.deucher@amd.com> |
| Signed-off-by: Ben Hutchings <ben@decadent.org.uk> |
| --- |
| drivers/gpu/drm/radeon/evergreen.c | 10 ++++++++++ |
| 1 file changed, 10 insertions(+) |
| |
| --- a/drivers/gpu/drm/radeon/evergreen.c |
| +++ b/drivers/gpu/drm/radeon/evergreen.c |
| @@ -412,6 +412,16 @@ void evergreen_hpd_init(struct radeon_de |
| |
| list_for_each_entry(connector, &dev->mode_config.connector_list, head) { |
| struct radeon_connector *radeon_connector = to_radeon_connector(connector); |
| + |
| + if (connector->connector_type == DRM_MODE_CONNECTOR_eDP || |
| + connector->connector_type == DRM_MODE_CONNECTOR_LVDS) { |
| + /* don't try to enable hpd on eDP or LVDS avoid breaking the |
| + * aux dp channel on imac and help (but not completely fix) |
| + * https://bugzilla.redhat.com/show_bug.cgi?id=726143 |
| + * also avoid interrupt storms during dpms. |
| + */ |
| + continue; |
| + } |
| switch (radeon_connector->hpd.hpd) { |
| case RADEON_HPD_1: |
| WREG32(DC_HPD1_CONTROL, tmp); |