+tdm_output_cb_dpms(tdm_output *output_backend, tdm_output_dpms dpms,
+ void *user_data);
+INTERN tdm_error
+tdm_output_cb_need_validate(tdm_private_output *private_output);
+
+tdm_error
+tdm_output_wait_vblank_add_front(tdm_output *output, int interval, int sync,
+ tdm_output_vblank_handler func, void *user_data);
+tdm_error
+tdm_output_commit_internal(tdm_output *output, int sync, tdm_output_commit_handler func, void *user_data);
+tdm_error
+tdm_output_get_dpms_internal(tdm_output *output, tdm_output_dpms *dpms_value);
+
+tdm_error
+tdm_output_need_validate_event_init(tdm_output *output);
+tdm_error
+tdm_output_choose_commit_per_vblank_mode(tdm_private_output *private_output, int mode);
+
+void
+tdm_output_remove_vblank_handler_internal(tdm_output *output, tdm_output_vblank_handler func, void *user_data);
+void
+tdm_output_remove_commit_handler_internal(tdm_output *output, tdm_output_commit_handler func, void *user_data);
+void
+tdm_layer_remove_commit_handler_internal(tdm_layer *layer, tdm_layer_commit_handler func, void *user_data);
+
+tdm_error
+tdm_layer_commit_pending_data(tdm_private_layer *private_layer);
+void
+tdm_layer_committed(tdm_private_layer *private_layer, tdm_private_layer_buffer **committed_buffer);
+
+void