]> git.ipfire.org Git - thirdparty/kernel/linux.git/commitdiff
drm/amd/display: Read resource_straps from registers for DCE12
authorLeo (Sunpeng) Li <sunpeng.li@amd.com>
Wed, 1 Nov 2017 14:24:51 +0000 (10:24 -0400)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 2 Nov 2017 17:06:26 +0000 (13:06 -0400)
Now that the registers exist, assign them to the resource_straps struct.

v2: Fix indentation
v3: Fix trailing whitespace and checkpatch warnings.

bug: https://bugs.freedesktop.org/show_bug.cgi?id=103404
Reviewed-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Leo (Sunpeng) Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dce120/dce120_resource.c

index 3ed28a870e207b4fa53e77f50dc5fabf0a02579c..5c48c22d9d98ef5ba9b72620311f9fddd915070c 100644 (file)
@@ -501,12 +501,19 @@ static void read_dce_straps(
        struct dc_context *ctx,
        struct resource_straps *straps)
 {
-       /* TODO: Registers are missing */
-       /*REG_GET_2(CC_DC_HDMI_STRAPS,
-                       HDMI_DISABLE, &straps->hdmi_disable,
-                       AUDIO_STREAM_NUMBER, &straps->audio_stream_number);
-
-       REG_GET(DC_PINSTRAPS, DC_PINSTRAPS_AUDIO, &straps->dc_pinstraps_audio);*/
+       uint32_t reg_val = dm_read_reg_soc15(ctx, mmCC_DC_MISC_STRAPS, 0);
+
+       straps->audio_stream_number = get_reg_field_value(reg_val,
+                                                         CC_DC_MISC_STRAPS,
+                                                         AUDIO_STREAM_NUMBER);
+       straps->hdmi_disable = get_reg_field_value(reg_val,
+                                                  CC_DC_MISC_STRAPS,
+                                                  HDMI_DISABLE);
+
+       reg_val = dm_read_reg_soc15(ctx, mmDC_PINSTRAPS, 0);
+       straps->dc_pinstraps_audio = get_reg_field_value(reg_val,
+                                                        DC_PINSTRAPS,
+                                                        DC_PINSTRAPS_AUDIO);
 }
 
 static struct audio *create_audio(