Loading drivers/gpu/drm/radeon/radeon.h +1 −0 Original line number Diff line number Diff line Loading @@ -1694,6 +1694,7 @@ struct radeon_device { int num_crtc; /* number of crtcs */ struct mutex dc_hw_i2c_mutex; /* display controller hw i2c mutex */ bool audio_enabled; bool has_uvd; struct r600_audio audio_status; /* audio stuff */ struct notifier_block acpi_nb; /* only one userspace can use Hyperz features or CMASK at a time */ Loading drivers/gpu/drm/radeon/radeon_asic.c +17 −0 Original line number Diff line number Diff line Loading @@ -1935,6 +1935,8 @@ int radeon_asic_init(struct radeon_device *rdev) else rdev->num_crtc = 2; rdev->has_uvd = false; switch (rdev->family) { case CHIP_R100: case CHIP_RV100: Loading Loading @@ -1999,16 +2001,22 @@ int radeon_asic_init(struct radeon_device *rdev) case CHIP_RV635: case CHIP_RV670: rdev->asic = &r600_asic; if (rdev->family == CHIP_R600) rdev->has_uvd = false; else rdev->has_uvd = true; break; case CHIP_RS780: case CHIP_RS880: rdev->asic = &rs780_asic; rdev->has_uvd = true; break; case CHIP_RV770: case CHIP_RV730: case CHIP_RV710: case CHIP_RV740: rdev->asic = &rv770_asic; rdev->has_uvd = true; break; case CHIP_CEDAR: case CHIP_REDWOOD: Loading @@ -2021,11 +2029,13 @@ int radeon_asic_init(struct radeon_device *rdev) else rdev->num_crtc = 6; rdev->asic = &evergreen_asic; rdev->has_uvd = true; break; case CHIP_PALM: case CHIP_SUMO: case CHIP_SUMO2: rdev->asic = &sumo_asic; rdev->has_uvd = true; break; case CHIP_BARTS: case CHIP_TURKS: Loading @@ -2036,16 +2046,19 @@ int radeon_asic_init(struct radeon_device *rdev) else rdev->num_crtc = 6; rdev->asic = &btc_asic; rdev->has_uvd = true; break; case CHIP_CAYMAN: rdev->asic = &cayman_asic; /* set num crtcs */ rdev->num_crtc = 6; rdev->has_uvd = true; break; case CHIP_ARUBA: rdev->asic = &trinity_asic; /* set num crtcs */ rdev->num_crtc = 4; rdev->has_uvd = true; break; case CHIP_TAHITI: case CHIP_PITCAIRN: Loading @@ -2060,6 +2073,10 @@ int radeon_asic_init(struct radeon_device *rdev) rdev->num_crtc = 2; else rdev->num_crtc = 6; if (rdev->family == CHIP_HAINAN) rdev->has_uvd = false; else rdev->has_uvd = true; break; default: /* FIXME: not supported yet */ Loading Loading
drivers/gpu/drm/radeon/radeon.h +1 −0 Original line number Diff line number Diff line Loading @@ -1694,6 +1694,7 @@ struct radeon_device { int num_crtc; /* number of crtcs */ struct mutex dc_hw_i2c_mutex; /* display controller hw i2c mutex */ bool audio_enabled; bool has_uvd; struct r600_audio audio_status; /* audio stuff */ struct notifier_block acpi_nb; /* only one userspace can use Hyperz features or CMASK at a time */ Loading
drivers/gpu/drm/radeon/radeon_asic.c +17 −0 Original line number Diff line number Diff line Loading @@ -1935,6 +1935,8 @@ int radeon_asic_init(struct radeon_device *rdev) else rdev->num_crtc = 2; rdev->has_uvd = false; switch (rdev->family) { case CHIP_R100: case CHIP_RV100: Loading Loading @@ -1999,16 +2001,22 @@ int radeon_asic_init(struct radeon_device *rdev) case CHIP_RV635: case CHIP_RV670: rdev->asic = &r600_asic; if (rdev->family == CHIP_R600) rdev->has_uvd = false; else rdev->has_uvd = true; break; case CHIP_RS780: case CHIP_RS880: rdev->asic = &rs780_asic; rdev->has_uvd = true; break; case CHIP_RV770: case CHIP_RV730: case CHIP_RV710: case CHIP_RV740: rdev->asic = &rv770_asic; rdev->has_uvd = true; break; case CHIP_CEDAR: case CHIP_REDWOOD: Loading @@ -2021,11 +2029,13 @@ int radeon_asic_init(struct radeon_device *rdev) else rdev->num_crtc = 6; rdev->asic = &evergreen_asic; rdev->has_uvd = true; break; case CHIP_PALM: case CHIP_SUMO: case CHIP_SUMO2: rdev->asic = &sumo_asic; rdev->has_uvd = true; break; case CHIP_BARTS: case CHIP_TURKS: Loading @@ -2036,16 +2046,19 @@ int radeon_asic_init(struct radeon_device *rdev) else rdev->num_crtc = 6; rdev->asic = &btc_asic; rdev->has_uvd = true; break; case CHIP_CAYMAN: rdev->asic = &cayman_asic; /* set num crtcs */ rdev->num_crtc = 6; rdev->has_uvd = true; break; case CHIP_ARUBA: rdev->asic = &trinity_asic; /* set num crtcs */ rdev->num_crtc = 4; rdev->has_uvd = true; break; case CHIP_TAHITI: case CHIP_PITCAIRN: Loading @@ -2060,6 +2073,10 @@ int radeon_asic_init(struct radeon_device *rdev) rdev->num_crtc = 2; else rdev->num_crtc = 6; if (rdev->family == CHIP_HAINAN) rdev->has_uvd = false; else rdev->has_uvd = true; break; default: /* FIXME: not supported yet */ Loading