OSDN Git Service

drm/amd/display: clean up dml_init_instance
authorDmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Mon, 11 Feb 2019 22:18:41 +0000 (17:18 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Tue, 19 Mar 2019 20:36:49 +0000 (15:36 -0500)
Get rid of DV style dml init in favour of the cleaner DC
style.

Signed-off-by: Dmytro Laktyushkin <Dmytro.Laktyushkin@amd.com>
Reviewed-by: Charlene Liu <Charlene.Liu@amd.com>
Acked-by: Leo Li <sunpeng.li@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_resource.c
drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.c
drivers/gpu/drm/amd/display/dc/dml/display_mode_lib.h
drivers/gpu/drm/amd/display/dc/dml/display_mode_structs.h
drivers/gpu/drm/amd/display/dc/dml/display_rq_dlg_helpers.c

index 9f1a009..3d82fdd 100644 (file)
@@ -1360,7 +1360,7 @@ static bool construct(
                goto fail;
        }
 
-       dml_init_instance(&dc->dml, DML_PROJECT_RAVEN1);
+       dml_init_instance(&dc->dml, &dcn1_0_soc, &dcn1_0_ip, DML_PROJECT_RAVEN1);
        memcpy(dc->dcn_ip, &dcn10_ip_defaults, sizeof(dcn10_ip_defaults));
        memcpy(dc->dcn_soc, &dcn10_soc_defaults, sizeof(dcn10_soc_defaults));
 
index a2bd3a6..80ffd7d 100644 (file)
 #include "display_mode_lib.h"
 #include "dc_features.h"
 
-extern const struct _vcs_dpi_ip_params_st dcn1_0_ip;
-extern const struct _vcs_dpi_soc_bounding_box_st dcn1_0_soc;
-
-static void set_soc_bounding_box_v2(struct display_mode_lib *lib,
-       const struct _vcs_dpi_soc_bounding_box_st *soc_bb)
-{
-       lib->soc =  *soc_bb;
-}
-
-static void set_soc_bounding_box(struct _vcs_dpi_soc_bounding_box_st *soc, enum dml_project project)
-{
-       switch (project) {
-       case DML_PROJECT_RAVEN1:
-               *soc = dcn1_0_soc;
-               break;
-       default:
-               ASSERT(0);
-               break;
-       }
-}
-
-static void set_ip_params_v2(struct display_mode_lib *lib,
-       const struct _vcs_dpi_ip_params_st *ip_params)
-{
-       lib->ip =  *ip_params;
-}
-
-static void set_ip_params(struct _vcs_dpi_ip_params_st *ip, enum dml_project project)
-{
-       switch (project) {
-       case DML_PROJECT_RAVEN1:
-               *ip = dcn1_0_ip;
-               break;
-       default:
-               ASSERT(0);
-               break;
-       }
-}
-
-void dml_init_instance(struct display_mode_lib *lib, enum dml_project project)
-{
-       if (lib->project != project) {
-               set_soc_bounding_box(&lib->soc, project);
-               set_ip_params(&lib->ip, project);
-               lib->project = project;
-       }
-}
-
-void dml_init_instance_v2(struct display_mode_lib *lib,
+void dml_init_instance(struct display_mode_lib *lib,
                const struct _vcs_dpi_soc_bounding_box_st *soc_bb,
                const struct _vcs_dpi_ip_params_st *ip_params,
                enum dml_project project)
 {
-       if (lib->project != project) {
-               set_soc_bounding_box_v2(lib, soc_bb);
-               set_ip_params_v2(lib, ip_params);
-               lib->project = project;
-       }
+       lib->soc = *soc_bb;
+       lib->ip = *ip_params;
+       lib->project = project;
 }
 
 const char *dml_get_status_message(enum dm_validation_status status)
index 93c0197..1b546db 100644 (file)
@@ -41,9 +41,7 @@ struct display_mode_lib {
        struct dal_logger *logger;
 };
 
-void dml_init_instance(struct display_mode_lib *lib, enum dml_project project);
-
-void dml_init_instance_v2(struct display_mode_lib *lib,
+void dml_init_instance(struct display_mode_lib *lib,
                const struct _vcs_dpi_soc_bounding_box_st *soc_bb,
                const struct _vcs_dpi_ip_params_st *ip_params,
                enum dml_project project);
index 391183e..d1771e3 100644 (file)
@@ -416,6 +416,7 @@ struct _vcs_dpi_display_dlg_regs_st {
        unsigned int refcyc_per_vm_group_flip;
        unsigned int refcyc_per_vm_req_vblank;
        unsigned int refcyc_per_vm_req_flip;
+       unsigned int refcyc_per_vm_dmdata;
 };
 
 struct _vcs_dpi_display_ttu_regs_st {
index 48400d6..e2d82aa 100644 (file)
@@ -321,6 +321,9 @@ void print__dlg_regs_st(struct display_mode_lib *mode_lib, display_dlg_regs_st d
        dml_print(
                        "DML_RQ_DLG_CALC:    xfc_reg_remote_surface_flip_latency = 0x%0x\n",
                        dlg_regs.xfc_reg_remote_surface_flip_latency);
+       dml_print(
+                       "DML_RQ_DLG_CALC:    refcyc_per_vm_dmdata            = 0x%0x\n",
+                       dlg_regs.refcyc_per_vm_dmdata);
 
        dml_print("DML_RQ_DLG_CALC: =====================================\n");
 }