Closed Bug 1291256 Opened 8 years ago Closed 8 years ago

Remove Hardware Composer on Gonk

Categories

(Firefox OS Graveyard :: GonkIntegration, defect)

ARM
Gonk (Firefox OS)
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED WONTFIX

People

(Reporter: gerard-majax, Assigned: gerard-majax)

References

Details

Attachments

(1 file)

This is a fragile bit, very device specific, and hard to maintain. Let's take some burden off gfx team :)
Okay, digging into this I could see that on Gonk we have Hwc also handling VSync. Should we also kill this ?
Flags: needinfo?(sotaro.ikeda.g)
Ok, this patch builds but effectively kills any gfx rendering after the boot animation. I have no idea why :)
On recent android, hwc always exist as final stage of composition. We can not remove HwcComposer2D. If we want to remove "full hwc composition" for "GL-hwc-mixed" composition, pref "layers.composer2d.enabled" just does it. Or we could remove HwcComposer2D::TryRenderWithHwc().

Even when composition is fully done by OpenGL(Compositor), its buffer is finally handled by hwc on android framework. In this case, HwcComposer2D::Render() is used to do it.

The following is related diagram.
 https://github.com/sotaroikeda/firefox-diagrams/blob/master/widget/widget_GonkDisplayJB_FirefoxOS_3_0.pdf
Flags: needinfo?(sotaro.ikeda.g)
(In reply to Alexandre LISSY :gerard-majax from comment #1)
> Okay, digging into this I could see that on Gonk we have Hwc also handling
> VSync. Should we also kill this ?

We can not kill vsync handling. It is important for smooth rendering. It is used by VsyncSource. The following is a related diagram.
 https://github.com/sotaroikeda/firefox-diagrams/blob/master/gfx/gfx_VsyncSource_FirefoxOS_2_5.pdf
Sounds like getting rid of HWC would be more painful than keeping it around. Could we maybe just simplify it a bit?
Status: NEW → RESOLVED
Closed: 8 years ago
Resolution: --- → WONTFIX
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: