diff mbox

drm/radeon/kms: be more pendatic about the g5 quirk

Message ID 1308064938-16319-1-git-send-email-alexdeucher@gmail.com
State Superseded
Headers show

Commit Message

Alex Deucher June 14, 2011, 3:22 p.m. UTC
I don't think Apple offered any other cards for
this mac, so I doubt this will be an issue, but just
to be on the safe side, check the pci ids as well.

Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
Cc: Joachim Henke <j-o@users.sourceforge.net>
Cc: Michel Dänzer <michel@daenzer.net>
---
 drivers/gpu/drm/radeon/radeon_combios.c |    9 ++++++---
 1 files changed, 6 insertions(+), 3 deletions(-)

Comments

Michel Dänzer June 14, 2011, 3:25 p.m. UTC | #1
On Die, 2011-06-14 at 11:22 -0400, Alex Deucher wrote: 
> I don't think Apple offered any other cards for
> this mac, so I doubt this will be an issue, but just
> to be on the safe side, check the pci ids as well.
> 
> Signed-off-by: Alex Deucher <alexdeucher@gmail.com>
> Cc: Joachim Henke <j-o@users.sourceforge.net>
> Cc: Michel Dänzer <michel@daenzer.net>
> ---
>  drivers/gpu/drm/radeon/radeon_combios.c |    9 ++++++---
>  1 files changed, 6 insertions(+), 3 deletions(-)
> 
> diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
> index 797c8bc..e459467 100644
> --- a/drivers/gpu/drm/radeon/radeon_combios.c
> +++ b/drivers/gpu/drm/radeon/radeon_combios.c
> @@ -1553,9 +1553,12 @@ bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev)
>  			   (rdev->pdev->subsystem_device == 0x4a48)) {
>  			/* Mac X800 */
>  			rdev->mode_info.connector_table = CT_MAC_X800;
> -		} else if (of_machine_is_compatible("PowerMac7,2") ||
> -			   of_machine_is_compatible("PowerMac7,3")) {
> -			/* Mac G5 9600 */
> +		} else if ((of_machine_is_compatible("PowerMac7,2") ||
> +			    of_machine_is_compatible("PowerMac7,3")) &&
> +			   (rdev->pdev->device == 0x4150) &&
> +			   (rdev->pdev->subsystem_vendor == 0x1002) &&
> +			   (rdev->pdev->subsystem_device == 0x4150)) {
> +			/* Mac G5 tower 9600 */
>  			rdev->mode_info.connector_table = CT_MAC_G5_9600;
>  		} else
>  #endif /* CONFIG_PPC_PMAC */

Reviewed-by: Michel Dänzer <michel@daenzer.net>

Thanks!
diff mbox

Patch

diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c
index 797c8bc..e459467 100644
--- a/drivers/gpu/drm/radeon/radeon_combios.c
+++ b/drivers/gpu/drm/radeon/radeon_combios.c
@@ -1553,9 +1553,12 @@  bool radeon_get_legacy_connector_info_from_table(struct drm_device *dev)
 			   (rdev->pdev->subsystem_device == 0x4a48)) {
 			/* Mac X800 */
 			rdev->mode_info.connector_table = CT_MAC_X800;
-		} else if (of_machine_is_compatible("PowerMac7,2") ||
-			   of_machine_is_compatible("PowerMac7,3")) {
-			/* Mac G5 9600 */
+		} else if ((of_machine_is_compatible("PowerMac7,2") ||
+			    of_machine_is_compatible("PowerMac7,3")) &&
+			   (rdev->pdev->device == 0x4150) &&
+			   (rdev->pdev->subsystem_vendor == 0x1002) &&
+			   (rdev->pdev->subsystem_device == 0x4150)) {
+			/* Mac G5 tower 9600 */
 			rdev->mode_info.connector_table = CT_MAC_G5_9600;
 		} else
 #endif /* CONFIG_PPC_PMAC */