.. | .. |
---|
39 | 39 | SRII(MPCC_BG_G_Y, MPCC, inst),\ |
---|
40 | 40 | SRII(MPCC_BG_R_CR, MPCC, inst),\ |
---|
41 | 41 | SRII(MPCC_BG_B_CB, MPCC, inst),\ |
---|
42 | | - SRII(MPCC_BG_B_CB, MPCC, inst),\ |
---|
43 | | - SRII(MPCC_SM_CONTROL, MPCC, inst) |
---|
| 42 | + SRII(MPCC_SM_CONTROL, MPCC, inst),\ |
---|
| 43 | + SRII(MPCC_UPDATE_LOCK_SEL, MPCC, inst) |
---|
44 | 44 | |
---|
45 | 45 | #define MPC_OUT_MUX_COMMON_REG_LIST_DCN1_0(inst) \ |
---|
46 | | - SRII(MUX, MPC_OUT, inst) |
---|
| 46 | + SRII(MUX, MPC_OUT, inst),\ |
---|
| 47 | + VUPDATE_SRII(CUR, VUPDATE_LOCK_SET, inst) |
---|
47 | 48 | |
---|
48 | 49 | #define MPC_COMMON_REG_VARIABLE_LIST \ |
---|
49 | 50 | uint32_t MPCC_TOP_SEL[MAX_MPCC]; \ |
---|
.. | .. |
---|
55 | 56 | uint32_t MPCC_BG_R_CR[MAX_MPCC]; \ |
---|
56 | 57 | uint32_t MPCC_BG_B_CB[MAX_MPCC]; \ |
---|
57 | 58 | uint32_t MPCC_SM_CONTROL[MAX_MPCC]; \ |
---|
58 | | - uint32_t MUX[MAX_OPP]; |
---|
| 59 | + uint32_t MUX[MAX_OPP]; \ |
---|
| 60 | + uint32_t MPCC_UPDATE_LOCK_SEL[MAX_MPCC]; \ |
---|
| 61 | + uint32_t CUR[MAX_OPP]; |
---|
59 | 62 | |
---|
60 | 63 | #define MPC_COMMON_MASK_SH_LIST_DCN1_0(mask_sh)\ |
---|
61 | 64 | SF(MPCC0_MPCC_TOP_SEL, MPCC_TOP_SEL, mask_sh),\ |
---|
.. | .. |
---|
78 | 81 | SF(MPCC0_MPCC_SM_CONTROL, MPCC_SM_FIELD_ALT, mask_sh),\ |
---|
79 | 82 | SF(MPCC0_MPCC_SM_CONTROL, MPCC_SM_FORCE_NEXT_FRAME_POL, mask_sh),\ |
---|
80 | 83 | SF(MPCC0_MPCC_SM_CONTROL, MPCC_SM_FORCE_NEXT_TOP_POL, mask_sh),\ |
---|
81 | | - SF(MPC_OUT0_MUX, MPC_OUT_MUX, mask_sh) |
---|
| 84 | + SF(MPC_OUT0_MUX, MPC_OUT_MUX, mask_sh),\ |
---|
| 85 | + SF(MPCC0_MPCC_UPDATE_LOCK_SEL, MPCC_UPDATE_LOCK_SEL, mask_sh) |
---|
82 | 86 | |
---|
83 | 87 | #define MPC_REG_FIELD_LIST(type) \ |
---|
84 | 88 | type MPCC_TOP_SEL;\ |
---|
.. | .. |
---|
101 | 105 | type MPCC_SM_FIELD_ALT;\ |
---|
102 | 106 | type MPCC_SM_FORCE_NEXT_FRAME_POL;\ |
---|
103 | 107 | type MPCC_SM_FORCE_NEXT_TOP_POL;\ |
---|
104 | | - type MPC_OUT_MUX; |
---|
| 108 | + type MPC_OUT_MUX;\ |
---|
| 109 | + type MPCC_UPDATE_LOCK_SEL;\ |
---|
| 110 | + type CUR_VUPDATE_LOCK_SET; |
---|
105 | 111 | |
---|
106 | 112 | struct dcn_mpc_registers { |
---|
107 | 113 | MPC_COMMON_REG_VARIABLE_LIST |
---|
.. | .. |
---|
149 | 155 | void mpc1_mpc_init( |
---|
150 | 156 | struct mpc *mpc); |
---|
151 | 157 | |
---|
| 158 | +void mpc1_mpc_init_single_inst( |
---|
| 159 | + struct mpc *mpc, |
---|
| 160 | + unsigned int mpcc_id); |
---|
| 161 | + |
---|
152 | 162 | void mpc1_assert_idle_mpcc( |
---|
153 | 163 | struct mpc *mpc, |
---|
154 | 164 | int id); |
---|
.. | .. |
---|
188 | 198 | int mpcc_inst, |
---|
189 | 199 | struct mpcc_state *s); |
---|
190 | 200 | |
---|
| 201 | +void mpc1_cursor_lock(struct mpc *mpc, int opp_id, bool lock); |
---|
| 202 | + |
---|
191 | 203 | #endif |
---|