Skip to content

Commit 221bda4

Browse files
committed
Merge branch 'drm-next-4.17' of git://people.freedesktop.org/~agd5f/linux into drm-next
- Fix a dark screen issue in DC - Fix clk/voltage dependency tracking for wattman - Update SMU interface for vega12 * 'drm-next-4.17' of git://people.freedesktop.org/~agd5f/linux: drm/amd/powerplay: header file interface to SMU update drm/amd/pp: Fix bug voltage can't be OD separately on VI drm/amd/display: Don't program bypass on linear regamma LUT
2 parents 2e1d6ea + cc9e992 commit 221bda4

File tree

3 files changed

+13
-14
lines changed

3 files changed

+13
-14
lines changed

drivers/gpu/drm/amd/display/amdgpu_dm/amdgpu_dm_color.c

Lines changed: 0 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -138,13 +138,6 @@ int amdgpu_dm_set_regamma_lut(struct dm_crtc_state *crtc)
138138
lut = (struct drm_color_lut *)blob->data;
139139
lut_size = blob->length / sizeof(struct drm_color_lut);
140140

141-
if (__is_lut_linear(lut, lut_size)) {
142-
/* Set to bypass if lut is set to linear */
143-
stream->out_transfer_func->type = TF_TYPE_BYPASS;
144-
stream->out_transfer_func->tf = TRANSFER_FUNCTION_LINEAR;
145-
return 0;
146-
}
147-
148141
gamma = dc_create_gamma();
149142
if (!gamma)
150143
return -ENOMEM;

drivers/gpu/drm/amd/powerplay/hwmgr/smu7_hwmgr.c

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -4743,23 +4743,27 @@ static void smu7_check_dpm_table_updated(struct pp_hwmgr *hwmgr)
47434743

47444744
for (i=0; i < dep_table->count; i++) {
47454745
if (dep_table->entries[i].vddc != odn_dep_table->entries[i].vddc) {
4746-
data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_VDDC;
4747-
break;
4746+
data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_VDDC | DPMTABLE_OD_UPDATE_MCLK;
4747+
return;
47484748
}
47494749
}
4750-
if (i == dep_table->count)
4750+
if (i == dep_table->count && data->need_update_smu7_dpm_table & DPMTABLE_OD_UPDATE_VDDC) {
47514751
data->need_update_smu7_dpm_table &= ~DPMTABLE_OD_UPDATE_VDDC;
4752+
data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_MCLK;
4753+
}
47524754

47534755
dep_table = table_info->vdd_dep_on_sclk;
47544756
odn_dep_table = (struct phm_ppt_v1_clock_voltage_dependency_table *)&(odn_table->vdd_dependency_on_sclk);
47554757
for (i=0; i < dep_table->count; i++) {
47564758
if (dep_table->entries[i].vddc != odn_dep_table->entries[i].vddc) {
4757-
data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_VDDC;
4758-
break;
4759+
data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_VDDC | DPMTABLE_OD_UPDATE_SCLK;
4760+
return;
47594761
}
47604762
}
4761-
if (i == dep_table->count)
4763+
if (i == dep_table->count && data->need_update_smu7_dpm_table & DPMTABLE_OD_UPDATE_VDDC) {
47624764
data->need_update_smu7_dpm_table &= ~DPMTABLE_OD_UPDATE_VDDC;
4765+
data->need_update_smu7_dpm_table |= DPMTABLE_OD_UPDATE_SCLK;
4766+
}
47634767
}
47644768

47654769
static int smu7_odn_edit_dpm_table(struct pp_hwmgr *hwmgr,

drivers/gpu/drm/amd/powerplay/inc/vega12/smu9_driver_if.h

Lines changed: 3 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -412,8 +412,10 @@ typedef struct {
412412
QuadraticInt_t ReservedEquation2;
413413
QuadraticInt_t ReservedEquation3;
414414

415+
uint16_t MinVoltageUlvGfx;
416+
uint16_t MinVoltageUlvSoc;
415417

416-
uint32_t Reserved[15];
418+
uint32_t Reserved[14];
417419

418420

419421

0 commit comments

Comments
 (0)