}
if (layer.compositionType == HWC_FRAMEBUFFER_TARGET) {
- if (!layer.handle)
- continue;
+ if (pdev->hdmi_fb_needed && layer.handle) {
+ ALOGV("HDMI FB layer:");
+ dump_layer(&layer);
- ALOGV("HDMI FB layer:");
- dump_layer(&layer);
+ private_handle_t *h = private_handle_t::dynamicCast(layer.handle);
+ hdmi_show_layer(pdev, pdev->hdmi_layers[1]);
+ hdmi_output(pdev, pdev->hdmi_layers[1], layer, h, layer.acquireFenceFd,
+ &layer.releaseFenceFd);
+
- private_handle_t *h = private_handle_t::dynamicCast(layer.handle);
- hdmi_output(pdev, pdev->hdmi_layers[1], layer, h, layer.acquireFenceFd,
- &layer.releaseFenceFd);
- fb_layer = &layer;
- if (contents->retireFenceFd < 0)
- contents->retireFenceFd = dup_or_warn(layer.releaseFenceFd);
- else {
- int merged = merge_or_warn("hdmi",
- contents->retireFenceFd, layer.releaseFenceFd);
- close(contents->retireFenceFd);
- contents->retireFenceFd = merged;
++ if (contents->retireFenceFd < 0)
++ contents->retireFenceFd = dup_or_warn(layer.releaseFenceFd);
++ else {
++ int merged = merge_or_warn("hdmi",
++ contents->retireFenceFd, layer.releaseFenceFd);
++ close(contents->retireFenceFd);
++ contents->retireFenceFd = merged;
++ }
+ } else {
+ hdmi_hide_layer(pdev, pdev->hdmi_layers[1]);
}
}
}