OSDN Git Service

drm/amd/display: use REG_UPDATE for MPC mux
authorEric Bernstein <eric.bernstein@amd.com>
Mon, 27 Nov 2017 15:55:52 +0000 (10:55 -0500)
committerAlex Deucher <alexander.deucher@amd.com>
Thu, 14 Dec 2017 15:57:43 +0000 (10:57 -0500)
Use REG_UPDATE instead of REG_SET for programming MPC out mux.

Signed-off-by: Eric Bernstein <eric.bernstein@amd.com>
Reviewed-by: Tony Cheng <Tony.Cheng@amd.com>
Acked-by: Harry Wentland <harry.wentland@amd.com>
Signed-off-by: Alex Deucher <alexander.deucher@amd.com>
drivers/gpu/drm/amd/display/dc/dcn10/dcn10_mpc.c

index 1e72bd4..179890b 100644 (file)
@@ -218,7 +218,7 @@ struct mpcc *mpc1_insert_plane(
        if (tree->opp_list == insert_above_mpcc) {
                /* insert the toppest mpcc */
                tree->opp_list = new_mpcc;
-               REG_SET(MUX[tree->opp_id], 0, MPC_OUT_MUX, mpcc_id);
+               REG_UPDATE(MUX[tree->opp_id], MPC_OUT_MUX, mpcc_id);
        } else {
                /* find insert position */
                struct mpcc *temp_mpcc = tree->opp_list;
@@ -275,11 +275,11 @@ void mpc1_remove_mpcc(
                if (mpcc_to_remove->mpcc_bot) {
                        /* set the next MPCC in list to be the top MPCC */
                        tree->opp_list = mpcc_to_remove->mpcc_bot;
-                       REG_SET(MUX[tree->opp_id], 0, MPC_OUT_MUX, tree->opp_list->mpcc_id);
+                       REG_UPDATE(MUX[tree->opp_id], MPC_OUT_MUX, tree->opp_list->mpcc_id);
                } else {
                        /* there are no other MPCC is list */
                        tree->opp_list = NULL;
-                       REG_SET(MUX[tree->opp_id], 0, MPC_OUT_MUX, 0xf);
+                       REG_UPDATE(MUX[tree->opp_id], MPC_OUT_MUX, 0xf);
                }
        } else {
                /* find mpcc to remove MPCC list */
@@ -359,7 +359,7 @@ void mpc1_mpc_init(struct mpc *mpc)
 
        for (opp_id = 0; opp_id < MAX_OPP; opp_id++) {
                if (REG(MUX[opp_id]))
-                       REG_SET(MUX[opp_id], 0, MPC_OUT_MUX, 0xf);
+                       REG_UPDATE(MUX[opp_id], MPC_OUT_MUX, 0xf);
        }
 }