output: drop wlr_output_state.buffer_type
This is now unconditionally set to WLR_OUTPUT_STATE_BUFFER_SCANOUT.
This commit is contained in:
		
							parent
							
								
									f211bc983a
								
							
						
					
					
						commit
						3132c0ab10
					
				|  | @ -396,7 +396,6 @@ static bool drm_connector_set_pending_fb(struct wlr_drm_connector *conn, | ||||||
| 	struct wlr_drm_plane *plane = crtc->primary; | 	struct wlr_drm_plane *plane = crtc->primary; | ||||||
| 
 | 
 | ||||||
| 	assert(state->committed & WLR_OUTPUT_STATE_BUFFER); | 	assert(state->committed & WLR_OUTPUT_STATE_BUFFER); | ||||||
| 	assert(state->buffer_type == WLR_OUTPUT_STATE_BUFFER_SCANOUT); |  | ||||||
| 
 | 
 | ||||||
| 	struct wlr_buffer *local_buf; | 	struct wlr_buffer *local_buf; | ||||||
| 	if (drm->parent) { | 	if (drm->parent) { | ||||||
|  |  | ||||||
|  | @ -261,7 +261,6 @@ static bool output_test(struct wlr_output *wlr_output) { | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	if ((wlr_output->pending.committed & WLR_OUTPUT_STATE_BUFFER) && | 	if ((wlr_output->pending.committed & WLR_OUTPUT_STATE_BUFFER) && | ||||||
| 			wlr_output->pending.buffer_type == WLR_OUTPUT_STATE_BUFFER_SCANOUT && |  | ||||||
| 			!test_buffer(output->backend, wlr_output->pending.buffer)) { | 			!test_buffer(output->backend, wlr_output->pending.buffer)) { | ||||||
| 		return false; | 		return false; | ||||||
| 	} | 	} | ||||||
|  | @ -287,9 +286,6 @@ static bool output_commit(struct wlr_output *wlr_output) { | ||||||
| 	} | 	} | ||||||
| 
 | 
 | ||||||
| 	if (wlr_output->pending.committed & WLR_OUTPUT_STATE_BUFFER) { | 	if (wlr_output->pending.committed & WLR_OUTPUT_STATE_BUFFER) { | ||||||
| 		assert(wlr_output->pending.buffer_type == |  | ||||||
| 			WLR_OUTPUT_STATE_BUFFER_SCANOUT); |  | ||||||
| 
 |  | ||||||
| 		struct wp_presentation_feedback *wp_feedback = NULL; | 		struct wp_presentation_feedback *wp_feedback = NULL; | ||||||
| 		if (output->backend->presentation != NULL) { | 		if (output->backend->presentation != NULL) { | ||||||
| 			wp_feedback = wp_presentation_feedback(output->backend->presentation, | 			wp_feedback = wp_presentation_feedback(output->backend->presentation, | ||||||
|  |  | ||||||
|  | @ -257,9 +257,6 @@ static struct wlr_x11_buffer *get_or_create_x11_buffer( | ||||||
| static bool output_commit_buffer(struct wlr_x11_output *output) { | static bool output_commit_buffer(struct wlr_x11_output *output) { | ||||||
| 	struct wlr_x11_backend *x11 = output->x11; | 	struct wlr_x11_backend *x11 = output->x11; | ||||||
| 
 | 
 | ||||||
| 	assert(output->wlr_output.pending.buffer_type == |  | ||||||
| 		WLR_OUTPUT_STATE_BUFFER_SCANOUT); |  | ||||||
| 
 |  | ||||||
| 	struct wlr_buffer *buffer = output->wlr_output.pending.buffer; | 	struct wlr_buffer *buffer = output->wlr_output.pending.buffer; | ||||||
| 	struct wlr_x11_buffer *x11_buffer = | 	struct wlr_x11_buffer *x11_buffer = | ||||||
| 		get_or_create_x11_buffer(output, buffer); | 		get_or_create_x11_buffer(output, buffer); | ||||||
|  |  | ||||||
|  | @ -63,11 +63,6 @@ enum wlr_output_state_field { | ||||||
| 	WLR_OUTPUT_STATE_GAMMA_LUT = 1 << 7, | 	WLR_OUTPUT_STATE_GAMMA_LUT = 1 << 7, | ||||||
| }; | }; | ||||||
| 
 | 
 | ||||||
| enum wlr_output_state_buffer_type { |  | ||||||
| 	WLR_OUTPUT_STATE_BUFFER_RENDER, |  | ||||||
| 	WLR_OUTPUT_STATE_BUFFER_SCANOUT, |  | ||||||
| }; |  | ||||||
| 
 |  | ||||||
| enum wlr_output_state_mode_type { | enum wlr_output_state_mode_type { | ||||||
| 	WLR_OUTPUT_STATE_MODE_FIXED, | 	WLR_OUTPUT_STATE_MODE_FIXED, | ||||||
| 	WLR_OUTPUT_STATE_MODE_CUSTOM, | 	WLR_OUTPUT_STATE_MODE_CUSTOM, | ||||||
|  | @ -85,8 +80,7 @@ struct wlr_output_state { | ||||||
| 	bool adaptive_sync_enabled; | 	bool adaptive_sync_enabled; | ||||||
| 
 | 
 | ||||||
| 	// only valid if WLR_OUTPUT_STATE_BUFFER
 | 	// only valid if WLR_OUTPUT_STATE_BUFFER
 | ||||||
| 	enum wlr_output_state_buffer_type buffer_type; | 	struct wlr_buffer *buffer; | ||||||
| 	struct wlr_buffer *buffer; // if WLR_OUTPUT_STATE_BUFFER_SCANOUT
 |  | ||||||
| 
 | 
 | ||||||
| 	// only valid if WLR_OUTPUT_STATE_MODE
 | 	// only valid if WLR_OUTPUT_STATE_MODE
 | ||||||
| 	enum wlr_output_state_mode_type mode_type; | 	enum wlr_output_state_mode_type mode_type; | ||||||
|  |  | ||||||
|  | @ -721,8 +721,7 @@ static bool output_basic_test(struct wlr_output *output) { | ||||||
| 			return false; | 			return false; | ||||||
| 		} | 		} | ||||||
| 
 | 
 | ||||||
| 		if (output->pending.buffer_type == WLR_OUTPUT_STATE_BUFFER_SCANOUT && | 		if (output->back_buffer == NULL) { | ||||||
| 				output->back_buffer == NULL) { |  | ||||||
| 			if (output->attach_render_locks > 0) { | 			if (output->attach_render_locks > 0) { | ||||||
| 				wlr_log(WLR_DEBUG, "Direct scan-out disabled by lock"); | 				wlr_log(WLR_DEBUG, "Direct scan-out disabled by lock"); | ||||||
| 				return false; | 				return false; | ||||||
|  | @ -911,7 +910,6 @@ void wlr_output_attach_buffer(struct wlr_output *output, | ||||||
| 		struct wlr_buffer *buffer) { | 		struct wlr_buffer *buffer) { | ||||||
| 	output_state_clear_buffer(&output->pending); | 	output_state_clear_buffer(&output->pending); | ||||||
| 	output->pending.committed |= WLR_OUTPUT_STATE_BUFFER; | 	output->pending.committed |= WLR_OUTPUT_STATE_BUFFER; | ||||||
| 	output->pending.buffer_type = WLR_OUTPUT_STATE_BUFFER_SCANOUT; |  | ||||||
| 	output->pending.buffer = wlr_buffer_lock(buffer); | 	output->pending.buffer = wlr_buffer_lock(buffer); | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
|  | @ -52,8 +52,7 @@ static void output_handle_precommit(struct wl_listener *listener, void *data) { | ||||||
| 	if (output->pending.committed & WLR_OUTPUT_STATE_BUFFER) { | 	if (output->pending.committed & WLR_OUTPUT_STATE_BUFFER) { | ||||||
| 		// TODO: find a better way to access this info without a precommit
 | 		// TODO: find a better way to access this info without a precommit
 | ||||||
| 		// handler
 | 		// handler
 | ||||||
| 		output_damage->pending_attach_render = output->back_buffer != NULL || | 		output_damage->pending_attach_render = output->back_buffer != NULL; | ||||||
| 			output->pending.buffer_type == WLR_OUTPUT_STATE_BUFFER_RENDER; |  | ||||||
| 	} | 	} | ||||||
| } | } | ||||||
| 
 | 
 | ||||||
|  |  | ||||||
		Loading…
	
		Reference in New Issue