[9610] bts: add scenario for FHD 480fps encoding
authorTaekki Kim <taekki.kim@samsung.com>
Wed, 27 Sep 2017 10:11:40 +0000 (19:11 +0900)
committerJaehyoung Choi <jkkkkk.choi@samsung.com>
Fri, 11 May 2018 05:02:27 +0000 (14:02 +0900)
This patch adds scenario for FHD 480fps encoding.
These values are draft version.

Change-Id: Id59e614884a098083701cc771fb545744040f902
Signed-off-by: Taekki Kim <taekki.kim@samsung.com>
drivers/bts/bts-exynos9610.c
include/soc/samsung/bts.h

index 1410d97e01ee6dc8a64573e40cdd42161b4a8f3b..846c943557a5b6b5cd96f8e2646e5e258d13cf50 100644 (file)
@@ -187,6 +187,10 @@ static struct bts_info exynos_bts[] = {
                .enable = true,
                .table[BS_DEFAULT].stat.scen_en = true,
                .table[BS_DEFAULT].stat.priority = 0xC,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0xC,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x4,
        },
        [BTS_IDX_COREX] = {
                .name = "corex",
@@ -212,6 +216,13 @@ static struct bts_info exynos_bts[] = {
                .table[BS_DEFAULT].stat.timeout_en = true,
                .table[BS_DEFAULT].stat.timeout_r = 0xc,
                .table[BS_DEFAULT].stat.timeout_w = 0xc,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0xC,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x16,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x16,
+               .table[BS_FHD_480_ENCODING].stat.timeout_en = true,
+               .table[BS_FHD_480_ENCODING].stat.timeout_r = 0xc,
+               .table[BS_FHD_480_ENCODING].stat.timeout_w = 0xc,
        },
        [BTS_IDX_DPU] = {
                .name = "dpu",
@@ -267,6 +278,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_CAMERA_DEFAULT].stat.wmo = 0x8,
                .table[BS_CAMERA_DEFAULT].stat.max_rmo = 0x1,
                .table[BS_CAMERA_DEFAULT].stat.max_wmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x6,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x6,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x1,
        },
        [BTS_IDX_G3D] = {
                .name = "g3d",
@@ -287,6 +304,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_CAMERA_DEFAULT].stat.wmo = 0x4,
                .table[BS_CAMERA_DEFAULT].stat.max_rmo = 0x1,
                .table[BS_CAMERA_DEFAULT].stat.max_wmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x1,
        },
        [BTS_IDX_GNSS] = {
                .name = "gnss",
@@ -311,6 +334,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_DEFAULT].stat.wmo = 0x10,
                .table[BS_DEFAULT].stat.max_rmo = 0x4,
                .table[BS_DEFAULT].stat.max_wmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0xC,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x10,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x10,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x1,
        },
        [BTS_IDX_ISP1] = {
                .name = "isp1",
@@ -323,6 +352,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_DEFAULT].stat.wmo = 0x10,
                .table[BS_DEFAULT].stat.max_rmo = 0x4,
                .table[BS_DEFAULT].stat.max_wmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0xC,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x10,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x10,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x1,
        },
        [BTS_IDX_MFC0] = {
                .name = "mfc0",
@@ -341,6 +376,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_MFC_UHD].stat.wmo = 0x14,
                .table[BS_MFC_UHD].stat.max_rmo = 0x1,
                .table[BS_MFC_UHD].stat.max_wmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0x5,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x20,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x20,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x4,
        },
        [BTS_IDX_MFC1] = {
                .name = "mfc1",
@@ -359,6 +400,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_MFC_UHD].stat.wmo = 0x14,
                .table[BS_MFC_UHD].stat.max_rmo = 0x1,
                .table[BS_MFC_UHD].stat.max_wmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0x5,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x20,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x20,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x4,
        },
        [BTS_IDX_MODEM0] = {
                .name = "modem0",
@@ -414,6 +461,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_DEFAULT].stat.wmo = 0x10,
                .table[BS_DEFAULT].stat.max_rmo = 0x4,
                .table[BS_DEFAULT].stat.max_wmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0x8,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x1,
        },
        [BTS_IDX_VIPX2] = {
                .name = "vipx2",
@@ -426,6 +479,12 @@ static struct bts_info exynos_bts[] = {
                .table[BS_DEFAULT].stat.wmo = 0x10,
                .table[BS_DEFAULT].stat.max_rmo = 0x4,
                .table[BS_DEFAULT].stat.max_wmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.priority = 0x8,
+               .table[BS_FHD_480_ENCODING].stat.rmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.wmo = 0x4,
+               .table[BS_FHD_480_ENCODING].stat.max_rmo = 0x1,
+               .table[BS_FHD_480_ENCODING].stat.max_wmo = 0x1,
        },
        [BTS_IDX_SIREX] = {
                .name = "sirex",
@@ -491,6 +550,35 @@ static struct drex_info exynos_drex[] = {
                .table[BS_DEFAULT].stat.vc_timer_th[7] = 0x00010001,
                .table[BS_DEFAULT].stat.cutoff_con = 0x00000005,
                .table[BS_DEFAULT].stat.brb_cutoff_config = 0x00020002,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.write_flush_config[0] = 0xB4301606,
+               .table[BS_FHD_480_ENCODING].stat.write_flush_config[1] = 0x1810100A,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x0] = 0x000A0180,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x1] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x2] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x3] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x4] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x5] = 0x000A0039,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x6] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x7] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x8] = 0x000A0011,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x9] = 0x000A0060,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xA] = 0x000A0040,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xB] = 0x000A0020,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xC] = 0x000A0010,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xD] = 0x000A0008,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xE] = 0x000A0004,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xF] = 0x000A0001,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[0] = 0x00C100C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[1] = 0x00C100C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[2] = 0x001D00C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[3] = 0x00C100C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[4] = 0x00C10009,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[5] = 0x000D0022,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[6] = 0x00030007,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[7] = 0x00010001,
+               .table[BS_FHD_480_ENCODING].stat.cutoff_con = 0x00000005,
+               .table[BS_FHD_480_ENCODING].stat.brb_cutoff_config = 0x00020002,
        },
        [DREX_IDX_1] = {
                .name = "drex1",
@@ -525,6 +613,35 @@ static struct drex_info exynos_drex[] = {
                .table[BS_DEFAULT].stat.vc_timer_th[7] = 0x00010001,
                .table[BS_DEFAULT].stat.cutoff_con = 0x00000005,
                .table[BS_DEFAULT].stat.brb_cutoff_config = 0x00020002,
+               .table[BS_FHD_480_ENCODING].stat.scen_en = true,
+               .table[BS_FHD_480_ENCODING].stat.write_flush_config[0] = 0xB4301606,
+               .table[BS_FHD_480_ENCODING].stat.write_flush_config[1] = 0x1810100A,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x0] = 0x000A0180,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x1] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x2] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x3] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x4] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x5] = 0x000A0039,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x6] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x7] = 0x000A0100,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x8] = 0x000A0011,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0x9] = 0x000A0060,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xA] = 0x000A0040,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xB] = 0x000A0020,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xC] = 0x000A0010,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xD] = 0x000A0008,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xE] = 0x000A0004,
+               .table[BS_FHD_480_ENCODING].stat.drex_timeout[0xF] = 0x000A0001,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[0] = 0x00C100C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[1] = 0x00C100C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[2] = 0x001D00C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[3] = 0x00C100C1,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[4] = 0x00C10009,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[5] = 0x000D0022,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[6] = 0x00030007,
+               .table[BS_FHD_480_ENCODING].stat.vc_timer_th[7] = 0x00010001,
+               .table[BS_FHD_480_ENCODING].stat.cutoff_con = 0x00000005,
+               .table[BS_FHD_480_ENCODING].stat.brb_cutoff_config = 0x00020002,
        },
 };
 
@@ -576,6 +693,9 @@ static struct bts_scenario bts_scen[BS_MAX] = {
        [BS_CAMERA_DEFAULT] = {
                .name = "camscen",
        },
+       [BS_FHD_480_ENCODING] = {
+               .name = "fhd-480",
+       },
 };
 
 static void bts_set_ip_table(struct bts_info *bts)
index 030ef81f0edfaa14da2100f280a299faaab9c01f..fc227524b86bf6a791abf8ab59c9404dc1bd65fe 100644 (file)
@@ -21,6 +21,7 @@ enum bts_scen_type {
        BS_G3D_PERFORMANCE,
        BS_DP_DEFAULT,
        BS_CAMERA_DEFAULT,
+       BS_FHD_480_ENCODING,
        BS_MAX,
 };