!pipe->top_pipe && !pipe->prev_odm_pipe &&
                                        pipe->stream->mall_stream_config.type == SUBVP_MAIN) {
                                populate_subvp_cmd_pipe_info(dc, context, &cmd, pipe, cmd_pipe_index++);
-                       } else if (pipe->plane_state && pipe->stream->mall_stream_config.type == SUBVP_NONE) {
+                       } else if (pipe->plane_state && pipe->stream->mall_stream_config.type == SUBVP_NONE &&
+                                   !pipe->top_pipe && !pipe->prev_odm_pipe) {
                                // Don't need to check for ActiveDRAMClockChangeMargin < 0, not valid in cases where
                                // we run through DML without calculating "natural" P-state support
                                populate_subvp_cmd_vblank_pipe_info(dc, context, &cmd, pipe, cmd_pipe_index++);