Message ID | 1382140868-29750-1-git-send-email-alexander.deucher@amd.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
2013/10/19 Alex Deucher <alexdeucher@gmail.com>: > It causes hangs on some asics. Disable on DCE6+ as well > just to be on the safe side. Did you get any reports about that? Or is that based only on mine comment: > I noticed some hangs on BARTS too, let me test this solution on DCE5. > Maybe it's not just DCE3.2. (After some testing that hangs were not likely related to the HDMI/audio stuff).
> -----Original Message----- > From: Rafa? Mi?ecki [mailto:zajec5@gmail.com] > Sent: Monday, October 28, 2013 5:24 AM > To: Alex Deucher > Cc: dri-devel; Deucher, Alexander > Subject: Re: [PATCH] drm/radeon/audio: don't set speaker allocation on > DCE4+ > > 2013/10/19 Alex Deucher <alexdeucher@gmail.com>: > > It causes hangs on some asics. Disable on DCE6+ as well > > just to be on the safe side. > > Did you get any reports about that? Or is that based only on mine comment: Yes, I had some reports of hangs on newer chips for some people as well. I'm not sure if it was directly correlated, but seemed like the safe thing to at this point in the kernel cycle. Alex > > > I noticed some hangs on BARTS too, let me test this solution on DCE5. > > Maybe it's not just DCE3.2. > > (After some testing that hangs were not likely related to the HDMI/audio > stuff).
2013/10/28 Deucher, Alexander <Alexander.Deucher@amd.com>: >> -----Original Message----- >> From: Rafa? Mi?ecki [mailto:zajec5@gmail.com] >> Sent: Monday, October 28, 2013 5:24 AM >> To: Alex Deucher >> Cc: dri-devel; Deucher, Alexander >> Subject: Re: [PATCH] drm/radeon/audio: don't set speaker allocation on >> DCE4+ >> >> 2013/10/19 Alex Deucher <alexdeucher@gmail.com>: >> > It causes hangs on some asics. Disable on DCE6+ as well >> > just to be on the safe side. >> >> Did you get any reports about that? Or is that based only on mine comment: > > Yes, I had some reports of hangs on newer chips for some people as well. I'm not sure if it was directly correlated, but seemed like the safe thing to at this point in the kernel cycle. Too bad :( I'll see what I can reproduce with my cards.
diff --git a/drivers/gpu/drm/radeon/dce6_afmt.c b/drivers/gpu/drm/radeon/dce6_afmt.c index 85a69d2..9fcd338 100644 --- a/drivers/gpu/drm/radeon/dce6_afmt.c +++ b/drivers/gpu/drm/radeon/dce6_afmt.c @@ -113,6 +113,9 @@ void dce6_afmt_write_speaker_allocation(struct drm_encoder *encoder) u8 *sadb; int sad_count; + /* XXX: setting this register causes hangs on some asics */ + return; + if (!dig->afmt->pin) return; diff --git a/drivers/gpu/drm/radeon/evergreen_hdmi.c b/drivers/gpu/drm/radeon/evergreen_hdmi.c index f815c20..fe1de85 100644 --- a/drivers/gpu/drm/radeon/evergreen_hdmi.c +++ b/drivers/gpu/drm/radeon/evergreen_hdmi.c @@ -67,6 +67,9 @@ static void dce4_afmt_write_speaker_allocation(struct drm_encoder *encoder) u8 *sadb; int sad_count; + /* XXX: setting this register causes hangs on some asics */ + return; + list_for_each_entry(connector, &encoder->dev->mode_config.connector_list, head) { if (connector->encoder == encoder) radeon_connector = to_radeon_connector(connector);
It causes hangs on some asics. Disable on DCE6+ as well just to be on the safe side. Signed-off-by: Alex Deucher <alexander.deucher@amd.com> --- drivers/gpu/drm/radeon/dce6_afmt.c | 3 +++ drivers/gpu/drm/radeon/evergreen_hdmi.c | 3 +++ 2 files changed, 6 insertions(+)