Closed Bug 959719 Opened 6 years ago Closed 6 years ago

Add support for HWC_BLIT composition in HwcComposer2D.

Categories

(Firefox OS Graveyard :: General, defect, P2)

ARM
Gonk (Firefox OS)
defect

Tracking

(blocking-b2g:1.3+, firefox27 wontfix, firefox28 fixed, firefox29 fixed, b2g-v1.3 fixed, b2g-v1.3T fixed, b2g-v1.4 fixed)

RESOLVED FIXED
1.3 C2/1.4 S2(17jan)
blocking-b2g 1.3+
Tracking Status
firefox27 --- wontfix
firefox28 --- fixed
firefox29 --- fixed
b2g-v1.3 --- fixed
b2g-v1.3T --- fixed
b2g-v1.4 --- fixed

People

(Reporter: sushilchauhan, Assigned: sushilchauhan)

References

Details

(Whiteboard: [CR 595627])

Attachments

(1 file, 4 obsolete files)

HWC_BLIT composition type has been added to inform framework to flip FrameBuffer target and pass updated FB handle and acquireFenceFd in hwc set because composition will happen on FB layer (backbuffer of FrameBuffer). I have attached the patch for review.

Previously, intermediate render buffers were used in HAL for BLIT composition. So usage of such intermediate buffers is not required if correct composition type (HWC_BLIT) is being set on HWC layers by HAL.
Attachment #8359911 - Flags: review?(dwilson)
blocking-b2g: --- → 1.3?
Assignee: nobody → sushilchauhan
Blocks: 942267
blocking-b2g: 1.3? → 1.3+
Status: UNCONFIRMED → ASSIGNED
Ever confirmed: true
Whiteboard: [CR 595627]
Comment on attachment 8359911 [details] [diff] [review]
Add support for HWC_BLIT composition in HwcComposer2D.

Review of attachment 8359911 [details] [diff] [review]:
-----------------------------------------------------------------

LGTM overall, just one nit.

::: widget/gonk/HwcComposer2D.cpp
@@ +501,5 @@
> +                case HWC_FRAMEBUFFER:
> +                    gpuComposite = true;
> +                    break;
> +                case HWC_BLIT:
> +                    hwcComposite = true;

Reusing hwcComposite is a little confusing to me. Can we have a separete blitComposite var instead?
Addressed the review comment.
Attachment #8359911 - Attachment is obsolete: true
Attachment #8359911 - Flags: review?(dwilson)
Attachment #8359993 - Flags: review?(dwilson)
Attachment #8359993 - Flags: review?(dwilson) → review+
Uploaded HG friendly version of reviewed patch.
Attachment #8359993 - Attachment is obsolete: true
Attachment #8360041 - Flags: review+
Keywords: checkin-needed
Sushil,

Looks like HWC_BLIT is not defined in AOSP. I think all you'll have to define it locally.
Flags: needinfo?(sushilchauhan)
Duplicate of this bug: 957925
Shud've used try first 'eh.
Defining it locally will fix it in Gecko framework only. We need to define it in HAL as well until it lands upstream in AOSP HWC header. So we need to maintain HAL patch as well. Please let me know if it sounds good otherwise we need to keep this bug on hold until HWC_BLIT definition lands upstream.
Flags: needinfo?(sushilchauhan) → needinfo?
Flags: needinfo? → needinfo?(dwilson)
(In reply to Sushil from comment #9)
> Defining it locally will fix it in Gecko framework only. We need to define
> it in HAL as well until it lands upstream in AOSP HWC header. So we need to
> maintain HAL patch as well. Please let me know if it sounds good otherwise
> we need to keep this bug on hold until HWC_BLIT definition lands upstream.

If it's not already defined in the HAL that means the target does not use HWC_BLIT, right? So it should be safe to land this patch with HWC_BLIT defined locally until it lands on AOSP, if it lands at all.
Flags: needinfo?(dwilson) → needinfo?(sushilchauhan)
1. Tested compilation and functionality with an HWC header without HWC_BLIT.
2. Also tested compilation and functionality by removing HWC_BLIT support from HAL to make sure it takes full OVERLAY composition path in HwcComposer2D like before.
Attachment #8360041 - Attachment is obsolete: true
Attachment #8360613 - Flags: review?(dwilson)
Flags: needinfo?(sushilchauhan)
LGTM. Let me see if I can push it to the try server before we request another checkin.
Having trouble pushing to try. See bug 817631. Let's wait to see if I get it. If it takes longer than I day we can just go ahead and try landing it again.
Comment on attachment 8360613 [details] [diff] [review]
Add support for HWC_BLIT composition in HwcComposer2D.

Review of attachment 8360613 [details] [diff] [review]:
-----------------------------------------------------------------

Try build looks good
Attachment #8360613 - Flags: review?(dwilson) → review+
Uploaded HG friendly version of reviewed patch.
Attachment #8360613 - Attachment is obsolete: true
Attachment #8361183 - Flags: review+
Keywords: checkin-needed
https://hg.mozilla.org/mozilla-central/rev/dce75e24fefc
Status: ASSIGNED → RESOLVED
Closed: 6 years ago
Resolution: --- → FIXED
Target Milestone: --- → 1.3 C2/1.4 S2(17jan)
Flags: in-moztrap-
You need to log in before you can comment on or make changes to this bug.