[PATCH 1/3] drm/radeon/kms/DCE4.1: fix dig encoder to transmitter mapping

2011-10-12 Thread alexdeuc...@gmail.com
From: Alex Deucher 

llano has fully routeable dig encoders similar to DCE3.2 while
ontario has a hardcoded mapping similar to DCE4.0.

Signed-off-by: Alex Deucher 
---
 drivers/gpu/drm/radeon/radeon_encoders.c |   13 +
 1 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c 
b/drivers/gpu/drm/radeon/radeon_encoders.c
index 8a171b2..a90d9ee 100644
--- a/drivers/gpu/drm/radeon/radeon_encoders.c
+++ b/drivers/gpu/drm/radeon/radeon_encoders.c
@@ -1756,10 +1756,15 @@ static int radeon_atom_pick_dig_encoder(struct 
drm_encoder *encoder)
if (ASIC_IS_DCE4(rdev)) {
dig = radeon_encoder->enc_priv;
if (ASIC_IS_DCE41(rdev)) {
-   if (dig->linkb)
-   return 1;
-   else
-   return 0;
+   /* ontario follows DCE4 */
+   if (rdev->family == CHIP_PALM) {
+   if (dig->linkb)
+   return 1;
+   else
+   return 0;
+   } else
+   /* llano follows DCE3.2 */
+   return radeon_crtc->crtc_id;
} else {
switch (radeon_encoder->encoder_id) {
case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
-- 
1.7.1.1



[PATCH 1/3] drm/radeon/kms/DCE4.1: fix dig encoder to transmitter mapping

2011-10-12 Thread alexdeucher
From: Alex Deucher alexander.deuc...@amd.com

llano has fully routeable dig encoders similar to DCE3.2 while
ontario has a hardcoded mapping similar to DCE4.0.

Signed-off-by: Alex Deucher alexander.deuc...@amd.com
---
 drivers/gpu/drm/radeon/radeon_encoders.c |   13 +
 1 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/drivers/gpu/drm/radeon/radeon_encoders.c 
b/drivers/gpu/drm/radeon/radeon_encoders.c
index 8a171b2..a90d9ee 100644
--- a/drivers/gpu/drm/radeon/radeon_encoders.c
+++ b/drivers/gpu/drm/radeon/radeon_encoders.c
@@ -1756,10 +1756,15 @@ static int radeon_atom_pick_dig_encoder(struct 
drm_encoder *encoder)
if (ASIC_IS_DCE4(rdev)) {
dig = radeon_encoder-enc_priv;
if (ASIC_IS_DCE41(rdev)) {
-   if (dig-linkb)
-   return 1;
-   else
-   return 0;
+   /* ontario follows DCE4 */
+   if (rdev-family == CHIP_PALM) {
+   if (dig-linkb)
+   return 1;
+   else
+   return 0;
+   } else
+   /* llano follows DCE3.2 */
+   return radeon_crtc-crtc_id;
} else {
switch (radeon_encoder-encoder_id) {
case ENCODER_OBJECT_ID_INTERNAL_UNIPHY:
-- 
1.7.1.1

___
dri-devel mailing list
dri-devel@lists.freedesktop.org
http://lists.freedesktop.org/mailman/listinfo/dri-devel