dv: update el vf correctly [1/1]
authorBrian Zhu <brian.zhu@amlogic.com>
Sat, 24 Aug 2019 14:05:11 +0000 (22:05 +0800)
committerTao Zeng <tao.zeng@amlogic.com>
Mon, 26 Aug 2019 05:34:55 +0000 (22:34 -0700)
PD#SWPL-12849

Problem:
Update meta and el function was called incorrectly. It
will cause the BL and EL mismatch.

Solution:
Correct the calling sequence to get correct EL frame

Verify:
Verified by AC211

Change-Id: I6c9f0221a9facd361fcd18dcda55cc3967593c1c
Signed-off-by: Brian Zhu <brian.zhu@amlogic.com>
drivers/amlogic/media/video_sink/video.c

index ce2fda36971a40aaa1b902373d55d473d96c08ae..e95d8cb03c0a452160081accb93e5dfb445257e9 100644 (file)
@@ -6007,6 +6007,7 @@ struct vframe_s *dolby_vision_toggle_frame(struct vframe_s *vf)
        int height_bl, height_el;
        int ret;
 
+       ret = dolby_vision_update_metadata(vf);
        if (!is_dolby_vision_el_disable() || for_dolby_vision_certification())
                cur_dispbuf2 = dolby_vision_vf_peek_el(vf);
        if (cur_dispbuf2) {
@@ -6069,7 +6070,6 @@ struct vframe_s *dolby_vision_toggle_frame(struct vframe_s *vf)
                return NULL;
        };
 
-       ret = dolby_vision_update_metadata(vf);
        if (ret == 0) {
                /* setting generated for this frame */
                /* or DOVI in bypass mode */