Skip to content

Commit 9555152

Browse files
committed
Merge tag 'amd-drm-next-5.9-2020-07-01' of git://people.freedesktop.org/~agd5f/linux into drm-next
amd-drm-next-5.9-2020-07-01: amdgpu: - DC DMUB updates - HDCP fixes - Thermal interrupt fixes - Add initial support for Sienna Cichlid GPU - Add support for unique id on Arcturus - Major swSMU code cleanup - Skip BAR resizing if the bios already did id - Fixes for DCN bandwidth calculations - Runtime PM reference count fixes - Add initial UVD support for SI - Add support for ASSR on eDP links - Lots of misc fixes and cleanups - Enable runtime PM on vega10 boards that support BACO - RAS fixes - SR-IOV fixes - Use IP discovery table on renoir - DC stream synchronization fixes amdkfd: - Track SDMA usage per process - Fix GCC10 compiler warnings - Locking fix radeon: - Default to on chip GART for AGP boards on all arches - Runtime PM reference count fixes UAPI: - Update comments to clarify MTYPE From: Alex Deucher <[email protected]> Link: https://patchwork.freedesktop.org/patch/msgid/[email protected] Signed-off-by: Dave Airlie <[email protected]>
2 parents f75020f + 7808363 commit 9555152

File tree

358 files changed

+222324
-8576
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

358 files changed

+222324
-8576
lines changed

drivers/gpu/drm/amd/amdgpu/Makefile

Lines changed: 18 additions & 12 deletions
Original file line numberDiff line numberDiff line change
@@ -63,12 +63,13 @@ amdgpu-$(CONFIG_PERF_EVENTS) += amdgpu_pmu.o
6363
amdgpu-$(CONFIG_DRM_AMDGPU_CIK)+= cik.o cik_ih.o kv_smc.o kv_dpm.o \
6464
dce_v8_0.o gfx_v7_0.o cik_sdma.o uvd_v4_2.o vce_v2_0.o
6565

66-
amdgpu-$(CONFIG_DRM_AMDGPU_SI)+= si.o gmc_v6_0.o gfx_v6_0.o si_ih.o si_dma.o dce_v6_0.o si_dpm.o si_smc.o
66+
amdgpu-$(CONFIG_DRM_AMDGPU_SI)+= si.o gmc_v6_0.o gfx_v6_0.o si_ih.o si_dma.o dce_v6_0.o si_dpm.o si_smc.o \
67+
uvd_v3_1.o
6768

6869
amdgpu-y += \
6970
vi.o mxgpu_vi.o nbio_v6_1.o soc15.o emu_soc.o mxgpu_ai.o nbio_v7_0.o vega10_reg_init.o \
7071
vega20_reg_init.o nbio_v7_4.o nbio_v2_3.o nv.o navi10_reg_init.o navi14_reg_init.o \
71-
arct_reg_init.o navi12_reg_init.o mxgpu_nv.o
72+
arct_reg_init.o navi12_reg_init.o mxgpu_nv.o sienna_cichlid_reg_init.o
7273

7374
# add DF block
7475
amdgpu-y += \
@@ -80,7 +81,7 @@ amdgpu-y += \
8081
gmc_v7_0.o \
8182
gmc_v8_0.o \
8283
gfxhub_v1_0.o mmhub_v1_0.o gmc_v9_0.o gfxhub_v1_1.o mmhub_v9_4.o \
83-
gfxhub_v2_0.o mmhub_v2_0.o gmc_v10_0.o
84+
gfxhub_v2_0.o mmhub_v2_0.o gmc_v10_0.o gfxhub_v2_1.o
8485

8586
# add UMC block
8687
amdgpu-y += \
@@ -129,7 +130,8 @@ amdgpu-y += \
129130
sdma_v2_4.o \
130131
sdma_v3_0.o \
131132
sdma_v4_0.o \
132-
sdma_v5_0.o
133+
sdma_v5_0.o \
134+
sdma_v5_2.o
133135

134136
# add MES block
135137
amdgpu-y += \
@@ -154,15 +156,18 @@ amdgpu-y += \
154156
vcn_v1_0.o \
155157
vcn_v2_0.o \
156158
vcn_v2_5.o \
159+
vcn_v3_0.o \
157160
amdgpu_jpeg.o \
158161
jpeg_v1_0.o \
159162
jpeg_v2_0.o \
160-
jpeg_v2_5.o
163+
jpeg_v2_5.o \
164+
jpeg_v3_0.o
161165

162166
# add ATHUB block
163167
amdgpu-y += \
164168
athub_v1_0.o \
165-
athub_v2_0.o
169+
athub_v2_0.o \
170+
athub_v2_1.o
166171

167172
# add amdkfd interfaces
168173
amdgpu-y += amdgpu_amdkfd.o
@@ -172,12 +177,13 @@ AMDKFD_PATH := ../amdkfd
172177
include $(FULL_AMD_PATH)/amdkfd/Makefile
173178
amdgpu-y += $(AMDKFD_FILES)
174179
amdgpu-y += \
175-
amdgpu_amdkfd_fence.o \
176-
amdgpu_amdkfd_gpuvm.o \
177-
amdgpu_amdkfd_gfx_v8.o \
178-
amdgpu_amdkfd_gfx_v9.o \
179-
amdgpu_amdkfd_arcturus.o \
180-
amdgpu_amdkfd_gfx_v10.o
180+
amdgpu_amdkfd_fence.o \
181+
amdgpu_amdkfd_gpuvm.o \
182+
amdgpu_amdkfd_gfx_v8.o \
183+
amdgpu_amdkfd_gfx_v9.o \
184+
amdgpu_amdkfd_arcturus.o \
185+
amdgpu_amdkfd_gfx_v10.o \
186+
amdgpu_amdkfd_gfx_v10_3.o
181187

182188
ifneq ($(CONFIG_DRM_AMDGPU_CIK),)
183189
amdgpu-y += amdgpu_amdkfd_gfx_v7.o

drivers/gpu/drm/amd/amdgpu/amdgpu.h

Lines changed: 6 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -186,8 +186,10 @@ extern int amdgpu_noretry;
186186
extern int amdgpu_force_asic_type;
187187
#ifdef CONFIG_HSA_AMD
188188
extern int sched_policy;
189+
extern bool debug_evictions;
189190
#else
190191
static const int sched_policy = KFD_SCHED_POLICY_HWS;
192+
static const bool debug_evictions; /* = false */
191193
#endif
192194

193195
extern int amdgpu_tmz;
@@ -652,10 +654,6 @@ struct amdgpu_fw_vram_usage {
652654
u64 size;
653655
struct amdgpu_bo *reserved_bo;
654656
void *va;
655-
656-
/* GDDR6 training support flag.
657-
*/
658-
bool mem_train_support;
659657
};
660658

661659
/*
@@ -990,9 +988,12 @@ struct amdgpu_device {
990988
/* Chip product information */
991989
char product_number[16];
992990
char product_name[32];
993-
char serial[16];
991+
char serial[20];
994992

995993
struct amdgpu_autodump autodump;
994+
995+
atomic_t throttling_logging_enabled;
996+
struct ratelimit_state throttling_logging_rs;
996997
};
997998

998999
static inline struct amdgpu_device *amdgpu_ttm_adev(struct ttm_bo_device *bdev)

drivers/gpu/drm/amd/amdgpu/amdgpu_acpi.c

Lines changed: 30 additions & 43 deletions
Original file line numberDiff line numberDiff line change
@@ -64,7 +64,9 @@ struct amdgpu_atif {
6464
struct amdgpu_atif_notifications notifications;
6565
struct amdgpu_atif_functions functions;
6666
struct amdgpu_atif_notification_cfg notification_cfg;
67-
struct amdgpu_encoder *encoder_for_bl;
67+
#if defined(CONFIG_BACKLIGHT_CLASS_DEVICE) || defined(CONFIG_BACKLIGHT_CLASS_DEVICE_MODULE)
68+
struct backlight_device *bd;
69+
#endif
6870
struct amdgpu_dm_backlight_caps backlight_caps;
6971
};
7072

@@ -444,45 +446,21 @@ static int amdgpu_atif_handler(struct amdgpu_device *adev,
444446

445447
DRM_DEBUG_DRIVER("ATIF: %d pending SBIOS requests\n", count);
446448

447-
if ((req.pending & ATIF_PANEL_BRIGHTNESS_CHANGE_REQUEST) &&
448-
!amdgpu_device_has_dc_support(adev)) {
449-
struct amdgpu_encoder *enc = atif->encoder_for_bl;
450-
451-
if (enc) {
452-
struct amdgpu_encoder_atom_dig *dig = enc->enc_priv;
453-
454-
DRM_DEBUG_DRIVER("Changing brightness to %d\n",
455-
req.backlight_level);
456-
457-
amdgpu_display_backlight_set_level(adev, enc, req.backlight_level);
458-
459-
#if defined(CONFIG_BACKLIGHT_CLASS_DEVICE) || defined(CONFIG_BACKLIGHT_CLASS_DEVICE_MODULE)
460-
backlight_force_update(dig->bl_dev,
461-
BACKLIGHT_UPDATE_HOTKEY);
462-
#endif
463-
}
464-
}
465-
#if defined(CONFIG_DRM_AMD_DC)
449+
if (req.pending & ATIF_PANEL_BRIGHTNESS_CHANGE_REQUEST) {
466450
#if defined(CONFIG_BACKLIGHT_CLASS_DEVICE) || defined(CONFIG_BACKLIGHT_CLASS_DEVICE_MODULE)
467-
if ((req.pending & ATIF_PANEL_BRIGHTNESS_CHANGE_REQUEST) &&
468-
amdgpu_device_has_dc_support(adev)) {
469-
struct amdgpu_display_manager *dm = &adev->dm;
470-
struct backlight_device *bd = dm->backlight_dev;
471-
472-
if (bd) {
451+
if (atif->bd) {
473452
DRM_DEBUG_DRIVER("Changing brightness to %d\n",
474453
req.backlight_level);
475-
476454
/*
477455
* XXX backlight_device_set_brightness() is
478456
* hardwired to post BACKLIGHT_UPDATE_SYSFS.
479457
* It probably should accept 'reason' parameter.
480458
*/
481-
backlight_device_set_brightness(bd, req.backlight_level);
459+
backlight_device_set_brightness(atif->bd, req.backlight_level);
482460
}
483-
}
484-
#endif
485461
#endif
462+
}
463+
486464
if (req.pending & ATIF_DGPU_DISPLAY_EVENT) {
487465
if (adev->flags & AMD_IS_PX) {
488466
pm_runtime_get_sync(adev->ddev->dev);
@@ -829,23 +807,32 @@ int amdgpu_acpi_init(struct amdgpu_device *adev)
829807
adev->atif = atif;
830808

831809
if (atif->notifications.brightness_change) {
832-
struct drm_encoder *tmp;
833-
834-
/* Find the encoder controlling the brightness */
835-
list_for_each_entry(tmp, &adev->ddev->mode_config.encoder_list,
836-
head) {
837-
struct amdgpu_encoder *enc = to_amdgpu_encoder(tmp);
838-
839-
if ((enc->devices & (ATOM_DEVICE_LCD_SUPPORT)) &&
840-
enc->enc_priv) {
841-
struct amdgpu_encoder_atom_dig *dig = enc->enc_priv;
842-
if (dig->bl_dev) {
843-
atif->encoder_for_bl = enc;
844-
break;
810+
#if defined(CONFIG_BACKLIGHT_CLASS_DEVICE) || defined(CONFIG_BACKLIGHT_CLASS_DEVICE_MODULE)
811+
if (amdgpu_device_has_dc_support(adev)) {
812+
#if defined(CONFIG_DRM_AMD_DC)
813+
struct amdgpu_display_manager *dm = &adev->dm;
814+
atif->bd = dm->backlight_dev;
815+
#endif
816+
} else {
817+
struct drm_encoder *tmp;
818+
819+
/* Find the encoder controlling the brightness */
820+
list_for_each_entry(tmp, &adev->ddev->mode_config.encoder_list,
821+
head) {
822+
struct amdgpu_encoder *enc = to_amdgpu_encoder(tmp);
823+
824+
if ((enc->devices & (ATOM_DEVICE_LCD_SUPPORT)) &&
825+
enc->enc_priv) {
826+
struct amdgpu_encoder_atom_dig *dig = enc->enc_priv;
827+
if (dig->bl_dev) {
828+
atif->bd = dig->bl_dev;
829+
break;
830+
}
845831
}
846832
}
847833
}
848834
}
835+
#endif
849836

850837
if (atif->functions.sbios_requests && !atif->functions.system_params) {
851838
/* XXX check this workraround, if sbios request function is

0 commit comments

Comments
 (0)