diff options
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | 1 | ||||
-rw-r--r-- | drivers/gpu/drm/amd/amdgpu/atombios_crtc.c | 4 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_combios.c | 7 | ||||
-rw-r--r-- | drivers/gpu/drm/radeon/radeon_device.c | 4 |
5 files changed, 18 insertions, 2 deletions
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c index 1cf78f4dd339..1e8e1123ddf4 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_atombios.c | |||
@@ -693,6 +693,10 @@ int amdgpu_atombios_get_clock_info(struct amdgpu_device *adev) | |||
693 | DRM_INFO("Changing default dispclk from %dMhz to 600Mhz\n", | 693 | DRM_INFO("Changing default dispclk from %dMhz to 600Mhz\n", |
694 | adev->clock.default_dispclk / 100); | 694 | adev->clock.default_dispclk / 100); |
695 | adev->clock.default_dispclk = 60000; | 695 | adev->clock.default_dispclk = 60000; |
696 | } else if (adev->clock.default_dispclk <= 60000) { | ||
697 | DRM_INFO("Changing default dispclk from %dMhz to 625Mhz\n", | ||
698 | adev->clock.default_dispclk / 100); | ||
699 | adev->clock.default_dispclk = 62500; | ||
696 | } | 700 | } |
697 | adev->clock.dp_extclk = | 701 | adev->clock.dp_extclk = |
698 | le16_to_cpu(firmware_info->info_21.usUniphyDPModeExtClkFreq); | 702 | le16_to_cpu(firmware_info->info_21.usUniphyDPModeExtClkFreq); |
diff --git a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c index f2d705e6a75a..ab6b0d0febab 100644 --- a/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c +++ b/drivers/gpu/drm/amd/amdgpu/amdgpu_drv.c | |||
@@ -449,6 +449,7 @@ static const struct pci_device_id pciidlist[] = { | |||
449 | {0x1002, 0x6986, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, | 449 | {0x1002, 0x6986, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, |
450 | {0x1002, 0x6987, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, | 450 | {0x1002, 0x6987, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, |
451 | {0x1002, 0x6995, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, | 451 | {0x1002, 0x6995, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, |
452 | {0x1002, 0x6997, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, | ||
452 | {0x1002, 0x699F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, | 453 | {0x1002, 0x699F, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_POLARIS12}, |
453 | /* Vega 10 */ | 454 | /* Vega 10 */ |
454 | {0x1002, 0x6860, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VEGA10|AMD_EXP_HW_SUPPORT}, | 455 | {0x1002, 0x6860, PCI_ANY_ID, PCI_ANY_ID, 0, 0, CHIP_VEGA10|AMD_EXP_HW_SUPPORT}, |
diff --git a/drivers/gpu/drm/amd/amdgpu/atombios_crtc.c b/drivers/gpu/drm/amd/amdgpu/atombios_crtc.c index 8c9bc75a9c2d..8a0818b23ea4 100644 --- a/drivers/gpu/drm/amd/amdgpu/atombios_crtc.c +++ b/drivers/gpu/drm/amd/amdgpu/atombios_crtc.c | |||
@@ -165,7 +165,7 @@ void amdgpu_atombios_crtc_powergate(struct drm_crtc *crtc, int state) | |||
165 | struct drm_device *dev = crtc->dev; | 165 | struct drm_device *dev = crtc->dev; |
166 | struct amdgpu_device *adev = dev->dev_private; | 166 | struct amdgpu_device *adev = dev->dev_private; |
167 | int index = GetIndexIntoMasterTable(COMMAND, EnableDispPowerGating); | 167 | int index = GetIndexIntoMasterTable(COMMAND, EnableDispPowerGating); |
168 | ENABLE_DISP_POWER_GATING_PARAMETERS_V2_1 args; | 168 | ENABLE_DISP_POWER_GATING_PS_ALLOCATION args; |
169 | 169 | ||
170 | memset(&args, 0, sizeof(args)); | 170 | memset(&args, 0, sizeof(args)); |
171 | 171 | ||
@@ -178,7 +178,7 @@ void amdgpu_atombios_crtc_powergate(struct drm_crtc *crtc, int state) | |||
178 | void amdgpu_atombios_crtc_powergate_init(struct amdgpu_device *adev) | 178 | void amdgpu_atombios_crtc_powergate_init(struct amdgpu_device *adev) |
179 | { | 179 | { |
180 | int index = GetIndexIntoMasterTable(COMMAND, EnableDispPowerGating); | 180 | int index = GetIndexIntoMasterTable(COMMAND, EnableDispPowerGating); |
181 | ENABLE_DISP_POWER_GATING_PARAMETERS_V2_1 args; | 181 | ENABLE_DISP_POWER_GATING_PS_ALLOCATION args; |
182 | 182 | ||
183 | memset(&args, 0, sizeof(args)); | 183 | memset(&args, 0, sizeof(args)); |
184 | 184 | ||
diff --git a/drivers/gpu/drm/radeon/radeon_combios.c b/drivers/gpu/drm/radeon/radeon_combios.c index 432480ff9d22..3178ba0c537c 100644 --- a/drivers/gpu/drm/radeon/radeon_combios.c +++ b/drivers/gpu/drm/radeon/radeon_combios.c | |||
@@ -3393,6 +3393,13 @@ void radeon_combios_asic_init(struct drm_device *dev) | |||
3393 | rdev->pdev->subsystem_vendor == 0x103c && | 3393 | rdev->pdev->subsystem_vendor == 0x103c && |
3394 | rdev->pdev->subsystem_device == 0x280a) | 3394 | rdev->pdev->subsystem_device == 0x280a) |
3395 | return; | 3395 | return; |
3396 | /* quirk for rs4xx Toshiba Sattellite L20-183 latop to make it resume | ||
3397 | * - it hangs on resume inside the dynclk 1 table. | ||
3398 | */ | ||
3399 | if (rdev->family == CHIP_RS400 && | ||
3400 | rdev->pdev->subsystem_vendor == 0x1179 && | ||
3401 | rdev->pdev->subsystem_device == 0xff31) | ||
3402 | return; | ||
3396 | 3403 | ||
3397 | /* DYN CLK 1 */ | 3404 | /* DYN CLK 1 */ |
3398 | table = combios_get_table_offset(dev, COMBIOS_DYN_CLK_1_TABLE); | 3405 | table = combios_get_table_offset(dev, COMBIOS_DYN_CLK_1_TABLE); |
diff --git a/drivers/gpu/drm/radeon/radeon_device.c b/drivers/gpu/drm/radeon/radeon_device.c index 6ecf42783d4b..0a6444d72000 100644 --- a/drivers/gpu/drm/radeon/radeon_device.c +++ b/drivers/gpu/drm/radeon/radeon_device.c | |||
@@ -136,6 +136,10 @@ static struct radeon_px_quirk radeon_px_quirk_list[] = { | |||
136 | * https://bugzilla.kernel.org/show_bug.cgi?id=51381 | 136 | * https://bugzilla.kernel.org/show_bug.cgi?id=51381 |
137 | */ | 137 | */ |
138 | { PCI_VENDOR_ID_ATI, 0x6840, 0x1043, 0x2122, RADEON_PX_QUIRK_DISABLE_PX }, | 138 | { PCI_VENDOR_ID_ATI, 0x6840, 0x1043, 0x2122, RADEON_PX_QUIRK_DISABLE_PX }, |
139 | /* Asus K53TK laptop with AMD A6-3420M APU and Radeon 7670m GPU | ||
140 | * https://bugs.freedesktop.org/show_bug.cgi?id=101491 | ||
141 | */ | ||
142 | { PCI_VENDOR_ID_ATI, 0x6741, 0x1043, 0x2122, RADEON_PX_QUIRK_DISABLE_PX }, | ||
139 | /* macbook pro 8.2 */ | 143 | /* macbook pro 8.2 */ |
140 | { PCI_VENDOR_ID_ATI, 0x6741, PCI_VENDOR_ID_APPLE, 0x00e2, RADEON_PX_QUIRK_LONG_WAKEUP }, | 144 | { PCI_VENDOR_ID_ATI, 0x6741, PCI_VENDOR_ID_APPLE, 0x00e2, RADEON_PX_QUIRK_LONG_WAKEUP }, |
141 | { 0, 0, 0, 0, 0 }, | 145 | { 0, 0, 0, 0, 0 }, |