On Fri, 13 Aug 2021, Jani Nikula <jani.nikula@xxxxxxxxx> wrote: > On Fri, 13 Aug 2021, Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> wrote: >> On Fri, Aug 13, 2021 at 02:56:10PM +0300, Jani Nikula wrote: >>> Less is more, fewer lines to wonder about. >>> >>> Cc: Manasi Navare <manasi.d.navare@xxxxxxxxx> >>> Signed-off-by: Jani Nikula <jani.nikula@xxxxxxxxx> >> >> Reviewed-by: Rodrigo Vivi <rodrigo.vivi@xxxxxxxxx> > > Thanks! And pushed. BR, Jani. > >> although sometimes I get myself wondering we might get in some >> case where our check inside the rmw function, to avoid writing the >> same value, could cause some situation where we should perform >> the write operation regardless. > > Me too. I could be persuaded to change the rmw function to not optimize > the write away. > > BR, > Jani. > >> >>> --- >>> drivers/gpu/drm/i915/display/intel_dp_mst.c | 9 ++------- >>> 1 file changed, 2 insertions(+), 7 deletions(-) >>> >>> diff --git a/drivers/gpu/drm/i915/display/intel_dp_mst.c b/drivers/gpu/drm/i915/display/intel_dp_mst.c >>> index 8d13d7b26a25..9859c0334ebc 100644 >>> --- a/drivers/gpu/drm/i915/display/intel_dp_mst.c >>> +++ b/drivers/gpu/drm/i915/display/intel_dp_mst.c >>> @@ -396,7 +396,6 @@ static void intel_mst_post_disable_dp(struct intel_atomic_state *state, >>> to_intel_connector(old_conn_state->connector); >>> struct drm_i915_private *dev_priv = to_i915(connector->base.dev); >>> bool last_mst_stream; >>> - u32 val; >>> >>> intel_dp->active_mst_links--; >>> last_mst_stream = intel_dp->active_mst_links == 0; >>> @@ -412,12 +411,8 @@ static void intel_mst_post_disable_dp(struct intel_atomic_state *state, >>> >>> clear_act_sent(encoder, old_crtc_state); >>> >>> - val = intel_de_read(dev_priv, >>> - TRANS_DDI_FUNC_CTL(old_crtc_state->cpu_transcoder)); >>> - val &= ~TRANS_DDI_DP_VC_PAYLOAD_ALLOC; >>> - intel_de_write(dev_priv, >>> - TRANS_DDI_FUNC_CTL(old_crtc_state->cpu_transcoder), >>> - val); >>> + intel_de_rmw(dev_priv, TRANS_DDI_FUNC_CTL(old_crtc_state->cpu_transcoder), >>> + TRANS_DDI_DP_VC_PAYLOAD_ALLOC, 0); >>> >>> wait_for_act_sent(encoder, old_crtc_state); >>> >>> -- >>> 2.20.1 >>> -- Jani Nikula, Intel Open Source Graphics Center