tdm_error tdm_output_get_available_size(tdm_output *output, int *min_w, int *min_h, int *max_w, int *max_h, int *preferred_align);
tdm_error tdm_output_get_physical_size(tdm_output *output, unsigned int *mmWidth, unsigned int *mmHeight);
tdm_error tdm_output_get_subpixel(tdm_output *output, unsigned int *subpixel);
+tdm_error tdm_output_get_pipe(tdm_output *output, unsigned int *pipe);
tdm_error tdm_output_set_property(tdm_output *output, unsigned int id, tdm_value value);
tdm_error tdm_output_get_property(tdm_output *output, unsigned int id, tdm_value *value);
}
static tdm_error
-_tdm_display_update_output(tdm_private_display *private_display, tdm_output *output)
+_tdm_display_update_output(tdm_private_display *private_display, tdm_output *output, int pipe)
{
tdm_func_display *func_display = &private_display->func_display;
tdm_private_output *private_output = NULL;
private_output->func_display = func_display;
private_output->private_display = private_display;
private_output->output = output;
+ private_output->pipe = pipe;
LIST_INITHEAD(&private_output->layer_list);
LIST_INITHEAD(&private_output->capture_list);
for (i = 0; i < output_count; i++)
{
- ret = _tdm_display_update_output(private_display, outputs[i]);
+ ret = _tdm_display_update_output(private_display, outputs[i], i);
if (ret != TDM_ERROR_NONE)
goto failed_update;
}
}
EXTERN tdm_error
+tdm_output_get_pipe(tdm_output *output, unsigned int *pipe)
+{
+ OUTPUT_FUNC_ENTRY();
+ TDM_RETURN_VAL_IF_FAIL(pipe != NULL, TDM_ERROR_INVALID_PARAMETER);
+
+ pthread_mutex_lock(&private_display->lock);
+
+ *pipe = private_output->pipe;
+
+ pthread_mutex_unlock(&private_display->lock);
+
+ return ret;
+}
+
+
+EXTERN tdm_error
tdm_output_set_property(tdm_output *output, unsigned int id, tdm_value value)
{
tdm_func_display *func_display;
tdm_caps_output caps;
tdm_output *output;
+ unsigned int pipe;
+
int regist_vblank_cb;
int regist_commit_cb;