cvbsout: add NTSC_M mode support [1/1]
authorEvoke Zhang <evoke.zhang@amlogic.com>
Wed, 22 May 2019 05:50:13 +0000 (13:50 +0800)
committerJianxin Pan <jianxin.pan@amlogic.com>
Fri, 24 May 2019 10:41:08 +0000 (03:41 -0700)
PD#OTT-3953

Problem:
need ntsc_m mode support

Solution:
add NTSC_M mode support

Verify:
u200

Change-Id: I446862a1b9405c7acc4845d1d9116492c3e0ecca
Signed-off-by: Evoke Zhang <evoke.zhang@amlogic.com>
drivers/amlogic/media/vout/cvbs/cvbs_mode.h
drivers/amlogic/media/vout/cvbs/cvbs_out.c
drivers/amlogic/media/vout/cvbs/cvbsregs.h

index 91103a6..32fd988 100644 (file)
@@ -23,6 +23,7 @@ enum cvbs_mode_e {
        MODE_576CVBS,
        MODE_PAL_M,
        MODE_PAL_N,
+       MODE_NTSC_M,
        MODE_MAX,
 };
 
index 66c4171..23c1454 100644 (file)
@@ -130,6 +130,24 @@ static struct vinfo_s cvbs_info[] = {
                .viu_mux           = VIU_MUX_ENCI,
                .vout_device       = NULL,
        },
+       { /* MODE_NTSC_M */
+               .name              = "ntsc_m",
+               .mode              = VMODE_CVBS,
+               .width             = 720,
+               .height            = 480,
+               .field_height      = 240,
+               .aspect_ratio_num  = 4,
+               .aspect_ratio_den  = 3,
+               .sync_duration_num = 60,
+               .sync_duration_den = 1,
+               .video_clk         = 27000000,
+               .htotal            = 1716,
+               .vtotal            = 525,
+               .fr_adj_type       = VOUT_FR_ADJ_NONE,
+               .viu_color_fmt     = COLOR_FMT_YUV444,
+               .viu_mux           = VIU_MUX_ENCI,
+               .vout_device       = NULL,
+       },
 };
 
 /*bit[0]: 0=vid_pll, 1=gp0_pll*/
@@ -412,6 +430,9 @@ int cvbs_out_setmode(void)
        case MODE_PAL_N:
                cvbs_log_info("SET cvbs mode: pal_n\n");
                break;
+       case MODE_NTSC_M:
+               cvbs_log_info("SET cvbs mode: ntsc_m\n");
+               break;
        default:
                cvbs_log_err("cvbs_out_setmode:invalid cvbs mode");
                break;
index 21663a6..4c72e03 100644 (file)
@@ -395,6 +395,7 @@ static struct cvbsregs_set_t cvbsregsTab[] = {
        {MODE_576CVBS, cvbsregs_576cvbs_enc},
        {MODE_PAL_M, cvbsregs_pal_m_enc},
        {MODE_PAL_N, cvbsregs_pal_n_enc},
+       {MODE_NTSC_M, cvbsregs_480cvbs_enc},
 };
 
 #endif /* TVREGS_H */