From 03030ee8d53141a2d15e3b8716553abcce5ac635 Mon Sep 17 00:00:00 2001 From: Nanxin Qin Date: Tue, 24 Apr 2018 20:41:43 +0800 Subject: [PATCH] vc1: supports teeload of vc1 for g12a. PD#161616: supports teeload of vc1 for g12a. Change-Id: I35869ed9aaf0a7d12f63cd3d5a84a531e8afe429 Signed-off-by: Nanxin Qin --- .../frame_provider/decoder/vc1/vvc1.c | 18 ++++++++++++------ 1 file changed, 12 insertions(+), 6 deletions(-) diff --git a/drivers/amlogic/media_modules/frame_provider/decoder/vc1/vvc1.c b/drivers/amlogic/media_modules/frame_provider/decoder/vc1/vvc1.c index 74851098ba06..72e88495715a 100644 --- a/drivers/amlogic/media_modules/frame_provider/decoder/vc1/vvc1.c +++ b/drivers/amlogic/media_modules/frame_provider/decoder/vc1/vvc1.c @@ -41,6 +41,7 @@ #include #include #include "../utils/firmware.h" +#include #define DRIVER_NAME "amvdec_vc1" #define MODULE_NAME "amvdec_vc1" @@ -1058,12 +1059,17 @@ static s32 vvc1_init(void) if (get_cpu_type() >= MESON_CPU_MAJOR_ID_G12A) fw_type = VIDEO_DEC_VC1_G12A; - size = get_firmware_data(fw_type, buf); - if (size < 0) { - amvdec_disable(); - pr_err("get firmware fail."); - vfree(buf); - return -1; + if (get_cpu_type() >= MESON_CPU_MAJOR_ID_G12A && tee_enabled()) { + ret = tee_load_video_fw((u32)fw_type, 1); + size = 1; + } else { + size = get_firmware_data(fw_type, buf); + if (size < 0) { + amvdec_disable(); + pr_err("get firmware fail."); + vfree(buf); + return -1; + } } if (size == 1)