diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c b/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c index 911bead4e31c..a8e3e127c504 100644 --- a/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c +++ b/drivers/amlogic/media/vout/hdmitx/hdmi_common/hdmi_parameters.c @@ -1358,892 +1358,6 @@ static struct hdmi_format_para fmt_para_4096x2160p60_256x135_y420 = { }, }; -/* new display modes for odroid-n2 */ -static struct hdmi_format_para fmt_para_2560x1600p60_8x5 = { - .vic = HDMI_2560x1600p60_8x5, - .name = "2560x1600p60hz", - .sname = "2560x1600p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 268500, - .timing = { - .pixel_freq = 268500, - .frac_freq = 268500, - .h_freq = 98700, - .v_freq = 60000, - .vsync_polarity = 0, - .hsync_polarity = 1, - .h_active = 2560, - .h_total = 2720, - .h_blank = 160, - .h_front = 48, - .h_sync = 32, - .h_back = 80, - .v_active = 1600, - .v_total = 1646, - .v_blank = 46, - .v_front = 3, - .v_sync = 6, - .v_back = 38, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "2560x1600p60hz", - .mode = VMODE_HDMI, - .width = 2560, - .height = 1600, - .field_height = 1600, - .aspect_ratio_num = 8, - .aspect_ratio_den = 5, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 268500000, - .htotal = 2720, - .vtotal = 1646, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_2560x1440p60_16x9 = { - .vic = HDMI_2560x1440p60_16x9, - .name = "2560x1440p60hz", - .sname = "2560x1440p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 241500, - .timing = { - .pixel_freq = 241500, - .frac_freq = 241500, - .h_freq = 88790, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 2560, - .h_total = 2720, - .h_blank = 160, - .h_front = 48, - .h_sync = 32, - .h_back = 80, - .v_active = 1440, - .v_total = 1481, - .v_blank = 41, - .v_front = 2, - .v_sync = 5, - .v_back = 34, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "2560x1440p60hz", - .mode = VMODE_HDMI, - .width = 2560, - .height = 1440, - .field_height = 1440, - .aspect_ratio_num = 16, - .aspect_ratio_den = 9, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 241500000, - .htotal = 2720, - .vtotal = 1481, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_2560x1080p60_64x27 = { - .vic = HDMI_2560x1080p60_64x27, - .name = "2560x1080p60hz", - .sname = "2560x1080p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 185580, - .timing = { - .pixel_freq = 185580, - .frac_freq = 185580, - .h_freq = 66659, - .v_freq = 60000, - .vsync_polarity = 0, - .hsync_polarity = 1, - .h_active = 2560, - .h_total = 2784, - .h_blank = 224, - .h_front = 64, - .h_sync = 64, - .h_back = 96, - .v_active = 1080, - .v_total = 1111, - .v_blank = 31, - .v_front = 3, - .v_sync = 10, - .v_back = 18, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "2560x1080p60hz", - .mode = VMODE_HDMI, - .width = 2560, - .height = 1080, - .field_height = 1080, - .aspect_ratio_num = 64, - .aspect_ratio_den = 27, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 185580000, - .htotal = 2784, - .vtotal = 1111, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1920x1200p60_8x5 = { - .vic = HDMI_1920x1200p60_8x5, - .name = "1920x1200p60hz", - .sname = "1920x1200p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 154000, - .timing = { - .pixel_freq = 154000, - .frac_freq = 154000, - .h_freq = 74040, - .v_freq = 60000, - .vsync_polarity = 0, - .hsync_polarity = 1, - .h_active = 1920, - .h_total = 2080, - .h_blank = 160, - .h_front = 48, - .h_sync = 32, - .h_back = 80, - .v_active = 1200, - .v_total = 1235, - .v_blank = 35, - .v_front = 3, - .v_sync = 6, - .v_back = 26, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1920x1200p60hz", - .mode = VMODE_HDMI, - .width = 1920, - .height = 1200, - .field_height = 1200, - .aspect_ratio_num = 8, - .aspect_ratio_den = 5, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 154000000, - .htotal = 2080, - .vtotal = 1235, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1680x1050p60_8x5 = { - .vic = HDMI_1680x1050p60_8x5, - .name = "1680x1050p60hz", - .sname = "1680x1050p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 146250, - .timing = { - .pixel_freq = 146250, - .frac_freq = 146250, - .h_freq = 65340, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1680, - .h_total = 2240, - .h_blank = 560, - .h_front = 104, - .h_sync = 176, - .h_back = 280, - .v_active = 1050, - .v_total = 1089, - .v_blank = 39, - .v_front = 3, - .v_sync = 6, - .v_back = 30, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1680x1050p60hz", - .mode = VMODE_HDMI, - .width = 1680, - .height = 1050, - .field_height = 1050, - .aspect_ratio_num = 8, - .aspect_ratio_den = 5, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 146250000, - .htotal = 2240, - .vtotal = 1089, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1600x1200p60_4x3 = { - .vic = HDMI_1600x1200p60_4x3, - .name = "1600x1200p60hz", - .sname = "1600x1200p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 156000, - .timing = { - .pixel_freq = 156000, - .frac_freq = 156000, - .h_freq = 76200, - .v_freq = 60000, - .vsync_polarity = 0, - .hsync_polarity = 0, - .h_active = 1600, - .h_total = 2048, - .h_blank = 448, - .h_front = 32, - .h_sync = 160, - .h_back = 256, - .v_active = 1200, - .v_total = 1270, - .v_blank = 70, - .v_front = 10, - .v_sync = 8, - .v_back = 52, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1600x1200p60hz", - .mode = VMODE_HDMI, - .width = 1600, - .height = 1200, - .field_height = 1200, - .aspect_ratio_num = 4, - .aspect_ratio_den = 3, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 156000000, - .htotal = 2048, - .vtotal = 1270, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1600x900p60_16x9 = { - .vic = HDMI_1600x900p60_16x9, - .name = "1600x900p60hz", - .sname = "1600x900p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 108000, - .timing = { - .pixel_freq = 108000, - .frac_freq = 108000, - .h_freq = 60000, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1600, - .h_total = 1800, - .h_blank = 200, - .h_front = 24, - .h_sync = 80, - .h_back = 96, - .v_active = 900, - .v_total = 1000, - .v_blank = 100, - .v_front = 1, - .v_sync = 3, - .v_back = 96, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1600x900p60hz", - .mode = VMODE_HDMI, - .width = 1600, - .height = 900, - .field_height = 900, - .aspect_ratio_num = 16, - .aspect_ratio_den = 9, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 108000000, - .htotal = 1800, - .vtotal = 1000, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1440x900p60_8x5 = { - .vic = HDMI_1440x900p60_8x5, - .name = "1440x900p60hz", - .sname = "1440x900p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 106500, - .timing = { - .pixel_freq = 106500, - .frac_freq = 106500, - .h_freq = 56040, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1440, - .h_total = 1904, - .h_blank = 464, - .h_front = 80, - .h_sync = 152, - .h_back = 232, - .v_active = 900, - .v_total = 934, - .v_blank = 34, - .v_front = 3, - .v_sync = 6, - .v_back = 25, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1440x900p60hz", - .mode = VMODE_HDMI, - .width = 1440, - .height = 900, - .field_height = 900, - .aspect_ratio_num = 8, - .aspect_ratio_den = 5, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 106500000, - .htotal = 1904, - .vtotal = 934, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1360x768p60_16x9 = { - .vic = HDMI_1360x768p60_16x9, - .name = "1360x768p60hz", - .sname = "1360x768p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 85500, - .timing = { - .pixel_freq = 85500, - .frac_freq = 85500, - .h_freq = 47700, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1360, - .h_total = 1792, - .h_blank = 432, - .h_front = 64, - .h_sync = 112, - .h_back = 256, - .v_active = 768, - .v_total = 795, - .v_blank = 27, - .v_front = 3, - .v_sync = 6, - .v_back = 18, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1360x768p60hz", - .mode = VMODE_HDMI, - .width = 1360, - .height = 768, - .field_height = 768, - .aspect_ratio_num = 16, - .aspect_ratio_den = 9, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 85500000, - .htotal = 1792, - .vtotal = 795, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1280x1024p60_5x4 = { - .vic = HDMI_1280x1024p60_5x4, - .name = "1280x1024p60hz", - .sname = "1280x1024p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 108000, - .timing = { - .pixel_freq = 108000, - .frac_freq = 108000, - .h_freq = 64080, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1280, - .h_total = 1688, - .h_blank = 408, - .h_front = 48, - .h_sync = 112, - .h_back = 248, - .v_active = 1024, - .v_total = 1068, - .v_blank = 42, - .v_front = 1, - .v_sync = 3, - .v_back = 38, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1280x1024p60hz", - .mode = VMODE_HDMI, - .width = 1280, - .height = 1024, - .field_height = 1024, - .aspect_ratio_num = 5, - .aspect_ratio_den = 4, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 108000000, - .htotal = 1688, - .vtotal = 1068, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1280x800p60_8x5 = { - .vic = HDMI_1280x800p60_8x5, - .name = "1280x800p60hz", - .sname = "1280x800p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 83500, - .timing = { - .pixel_freq = 83500, - .frac_freq = 83500, - .h_freq = 49380, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1280, - .h_total = 1440, - .h_blank = 160, - .h_front = 48, - .h_sync = 32, - .h_back = 80, - .v_active = 800, - .v_total = 823, - .v_blank = 23, - .v_front = 3, - .v_sync = 6, - .v_back = 14, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1280x800p60hz", - .mode = VMODE_HDMI, - .width = 1280, - .height = 800, - .field_height = 800, - .aspect_ratio_num = 8, - .aspect_ratio_den = 5, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 83500000, - .htotal = 1440, - .vtotal = 823, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1024x768p60_4x3 = { - .vic = HDMI_1024x768p60_4x3, - .name = "1024x768p60hz", - .sname = "1024x768p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 79500, - .timing = { - .pixel_freq = 79500, - .frac_freq = 79500, - .h_freq = 48360, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1024, - .h_total = 1344, - .h_blank = 320, - .h_front = 24, - .h_sync = 136, - .h_back = 160, - .v_active = 768, - .v_total = 806, - .v_blank = 38, - .v_front = 3, - .v_sync = 6, - .v_back = 29, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1024x768p60hz", - .mode = VMODE_HDMI, - .width = 1024, - .height = 768, - .field_height = 768, - .aspect_ratio_num = 4, - .aspect_ratio_den = 3, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 79500000, - .htotal = 1344, - .vtotal = 806, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_1024x600p60_16x9 = { - .vic = HDMI_1024x600p60_16x9, - .name = "1024x600p60hz", - .sname = "1024x600p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 50400, - .timing = { - .pixel_freq = 50400, - .frac_freq = 50400, - .h_freq = 38280, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 1024, - .h_total = 1344, - .h_blank = 320, - .h_front = 24, - .h_sync = 136, - .h_back = 160, - .v_active = 600, - .v_total = 638, - .v_blank = 38, - .v_front = 3, - .v_sync = 6, - .v_back = 29, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "1024x600p60hz", - .mode = VMODE_HDMI, - .width = 1024, - .height = 600, - .field_height = 600, - .aspect_ratio_num = 16, - .aspect_ratio_den = 9, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 50400000, - .htotal = 1344, - .vtotal = 638, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_800x600p60_4x3 = { - .vic = HDMI_800x600p60_4x3, - .name = "800x600p60hz", - .sname = "800x600p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 39790, - .timing = { - .pixel_freq = 39790, - .frac_freq = 39790, - .h_freq = 37879, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 800, - .h_total = 1056, - .h_blank = 256, - .h_front = 40, - .h_sync = 128, - .h_back = 88, - .v_active = 600, - .v_total = 628, - .v_blank = 28, - .v_front = 1, - .v_sync = 4, - .v_back = 23, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "800x600p60hz", - .mode = VMODE_HDMI, - .width = 800, - .height = 600, - .field_height = 600, - .aspect_ratio_num = 4, - .aspect_ratio_den = 3, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 40000000, - .htotal = 1056, - .vtotal = 628, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_800x480p60_5x3 = { - .vic = HDMI_800x480p60_5x3, - .name = "800x480p60hz", - .sname = "800x480p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 29760, - .timing = { - .pixel_freq = 29760, - .frac_freq = 29760, - .h_freq = 30000, - .v_freq = 60000, - .vsync_polarity = 1, - .hsync_polarity = 1, - .h_active = 800, - .h_total = 992, - .h_blank = 192, - .h_front = 24, - .h_sync = 72, - .h_back = 96, - .v_active = 480, - .v_total = 500, - .v_blank = 20, - .v_front = 3, - .v_sync = 7, - .v_back = 10, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "800x480p60hz", - .mode = VMODE_HDMI, - .width = 800, - .height = 480, - .field_height = 480, - .aspect_ratio_num = 5, - .aspect_ratio_den = 3, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 29760000, - .htotal = 992, - .vtotal = 500, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_640x480p60_4x3 = { - .vic = HDMI_640x480p60_4x3, - .name = "640x480p60hz", - .sname = "640x480p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 25175, - .timing = { - .pixel_freq = 25175, - .frac_freq = 25175, - .h_freq = 26218, - .v_freq = 59940, - .vsync_polarity = 0, - .hsync_polarity = 0, - .h_active = 640, - .h_total = 800, - .h_blank = 160, - .h_front = 16, - .h_sync = 96, - .h_back = 48, - .v_active = 480, - .v_total = 525, - .v_blank = 45, - .v_front = 10, - .v_sync = 2, - .v_back = 33, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "640x480p60hz", - .mode = VMODE_HDMI, - .width = 640, - .height = 480, - .field_height = 480, - .aspect_ratio_num = 4, - .aspect_ratio_den = 3, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 25175000, - .htotal = 800, - .vtotal = 525, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_480x320p60_4x3 = { - .vic = HDMI_480x320p60_4x3, - .name = "480x320p60hz", - .sname = "480x320p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 25200, - .timing = { - .pixel_freq = 25200, - .frac_freq = 25200, - .h_freq = 31500, - .v_freq = 60000, - .vsync_polarity = 0, /* -VSync */ - .hsync_polarity = 0, /* -HSync */ - .h_active = 480, - .h_total = 800, - .h_blank = 320, - .h_front = 120, - .h_sync = 100, - .h_back = 100, - .v_active = 320, - .v_total = 525, - .v_blank = 205, - .v_front = 8, - .v_sync = 8, - .v_back = 189, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "480x320p60hz", - .mode = VMODE_HDMI, - .width = 480, - .height = 320, - .field_height = 320, - .aspect_ratio_num = 4, - .aspect_ratio_den = 3, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 25200000, - .htotal = 800, - .vtotal = 525, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_480x800p60_4x3 = { - .vic = HDMI_480x800p60_4x3, - .name = "480x800p60hz", - .sname = "480x800p60hz", - .pixel_repetition_factor = 0, - .progress_mode = 1, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .tmds_clk = 32000, - .timing = { - .pixel_freq = 32000, - .frac_freq = 32000, - .h_freq = 52600, - .v_freq = 62300, - .vsync_polarity = 0, - .hsync_polarity = 0, - .h_active = 480, - .h_total = 608, - .h_blank = 128, - .h_front = 40, - .h_sync = 48, - .h_back = 40, - .v_active = 800, - .v_total = 845, - .v_blank = 45, - .v_front = 13, - .v_sync = 3, - .v_back = 29, - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "480x800p60hz", - .mode = VMODE_HDMI, - .width = 480, - .height = 800, - .field_height = 800, - .aspect_ratio_num = 4, - .aspect_ratio_den = 3, - .sync_duration_num = 60, - .sync_duration_den = 1, - .video_clk = 32000000, - .htotal = 608, - .vtotal = 845, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - -static struct hdmi_format_para fmt_para_custombuilt = { - .vic = HDMI_CUSTOMBUILT, - .name = "custombuilt", - .sname = "custombuilt", - .pixel_repetition_factor = 0, - .scrambler_en = 0, - .tmds_clk_div40 = 0, - .timing = { - .v_sync_ln = 1, - }, - .hdmitx_vinfo = { - .name = "custombuilt", - .mode = VMODE_HDMI, - .aspect_ratio_num = 16, - .aspect_ratio_den = 9, - .sync_duration_den = 1, - .viu_color_fmt = COLOR_FMT_YUV444, - .viu_mux = VIU_MUX_ENCP, - }, -}; - static struct hdmi_format_para fmt_para_non_hdmi_fmt = { .vic = HDMI_Unknown, .name = "invalid", @@ -2297,6 +1411,26 @@ static struct hdmi_format_para fmt_para_null_hdmi_fmt = { }; /* end of Y420 modes*/ +static struct hdmi_format_para fmt_para_custombuilt = { + .vic = HDMI_CUSTOMBUILT, + .name = "custombuilt", + .sname = "custombuilt", + .pixel_repetition_factor = 0, + .scrambler_en = 0, + .tmds_clk_div40 = 0, + .timing = { + .v_sync_ln = 1, + }, + .hdmitx_vinfo = { + .name = "custombuilt", + .mode = VMODE_HDMI, + .aspect_ratio_num = 16, + .aspect_ratio_den = 9, + .sync_duration_den = 1, + .viu_color_fmt = COLOR_FMT_YUV444, + .viu_mux = VIU_MUX_ENCP, + }, +}; static struct hdmi_format_para *all_fmt_paras[] = { &fmt_para_3840x2160p60_16x9, @@ -2326,24 +1460,6 @@ static struct hdmi_format_para *all_fmt_paras[] = { &fmt_para_4096x2160p60_256x135_y420, &fmt_para_3840x2160p50_16x9_y420, &fmt_para_4096x2160p50_256x135_y420, - &fmt_para_2560x1600p60_8x5, - &fmt_para_2560x1440p60_16x9, - &fmt_para_2560x1080p60_64x27, - &fmt_para_1920x1200p60_8x5, - &fmt_para_1680x1050p60_8x5, - &fmt_para_1600x1200p60_4x3, - &fmt_para_1600x900p60_16x9, - &fmt_para_1440x900p60_8x5, - &fmt_para_1360x768p60_16x9, - &fmt_para_1280x1024p60_5x4, - &fmt_para_1280x800p60_8x5, - &fmt_para_1024x768p60_4x3, - &fmt_para_1024x600p60_16x9, - &fmt_para_800x600p60_4x3, - &fmt_para_800x480p60_5x3, - &fmt_para_640x480p60_4x3, - &fmt_para_480x320p60_4x3, - &fmt_para_480x800p60_4x3, &fmt_para_custombuilt, &fmt_para_null_hdmi_fmt, &fmt_para_non_hdmi_fmt, diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c index c87fe54fbd24..db2d1bc67c51 100644 --- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c +++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_edid.c @@ -2253,24 +2253,23 @@ static struct dispmode_vic dispmode_vic_tab[] = { {"smpte60hz", HDMI_4096x2160p60_256x135}, {"2160p60hz", HDMI_4k2k_60}, {"2160p50hz", HDMI_4k2k_50}, - {"2560x1600p60hz", HDMI_2560x1600p60_8x5}, - {"2560x1440p60hz", HDMI_2560x1440p60_16x9}, - {"2560x1080p60hz", HDMI_2560x1080p60_64x27}, - {"1920x1200p60hz", HDMI_1920x1200p60_8x5}, - {"1680x1050p60hz", HDMI_1680x1050p60_8x5}, - {"1600x1200p60hz", HDMI_1600x1200p60_4x3}, - {"1600x900p60hz", HDMI_1600x900p60_16x9}, - {"1440x900p60hz", HDMI_1440x900p60_8x5}, - {"1360x768p60hz", HDMI_1360x768p60_16x9}, - {"1280x1024p60hz", HDMI_1280x1024p60_5x4}, - {"1280x800p60hz", HDMI_1280x800p60_8x5}, - {"1024x768p60hz", HDMI_1024x768p60_4x3}, - {"1024x600p60hz", HDMI_1024x600p60_16x9}, - {"800x600p60hz", HDMI_800x600p60_4x3}, - {"800x480p60hz", HDMI_800x480p60_5x3}, - {"640x480p60hz", HDMI_640x480p60_4x3}, - {"480x320p60hz", HDMI_480x320p60_4x3}, - {"480x800p60hz", HDMI_480x800p60_4x3}, + {"1152x864p75hz", HDMIV_1152x864p75hz}, + {"1280x600p60hz", HDMIV_1280x600p60hz}, + {"1280x768p60hz", HDMIV_1280x768p60hz}, + {"1280x800p60hz", HDMIV_1280x800p60hz}, + {"1280x960p60hz", HDMIV_1280x960p60hz}, + {"1280x1024p60hz", HDMIV_1280x1024p60hz}, + {"1280x1024", HDMIV_1280x1024p60hz}, /* alias of "1280x1024p60hz" */ + {"1360x768p60hz", HDMIV_1360x768p60hz}, + {"1366x768p60hz", HDMIV_1366x768p60hz}, + {"1400x1050p60hz", HDMIV_1400x1050p60hz}, + {"1440x900p60hz", HDMIV_1440x900p60hz}, + {"1440x2560p60hz", HDMIV_1440x2560p60hz}, + {"1600x900p60hz", HDMIV_1600x900p60hz}, + {"1600x1200p60hz", HDMIV_1600x1200p60hz}, + {"1680x1050p60hz", HDMIV_1680x1050p60hz}, + {"1920x1200p60hz", HDMIV_1920x1200p60hz}, + {"2560x1440p60hz", HDMIV_2560x1440p60hz}, {"custombuilt", HDMI_CUSTOMBUILT}, }; diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_video.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_video.c index bcebaf63356d..8b199640d7b4 100644 --- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_video.c +++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hdmi_tx_video.c @@ -490,204 +490,6 @@ static struct hdmitx_vidpara hdmi_tx_video_params[] = { .ss = SS_SCAN_UNDER, .sc = SC_SCALE_HORIZ_VERT, }, - { - .VIC = HDMI_2560x1600p60_8x5, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_2560x1440p60_16x9, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = TV_ASPECT_RATIO_16_9, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_2560x1080p60_64x27, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1920x1200p60_8x5, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1680x1050p60_8x5, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1600x1200p60_4x3, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = TV_ASPECT_RATIO_4_3, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1600x900p60_16x9, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = TV_ASPECT_RATIO_16_9, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1440x900p60_8x5, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1360x768p60_16x9, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = TV_ASPECT_RATIO_16_9, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1280x1024p60_5x4, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1280x800p60_8x5, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1024x768p60_4x3, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_1024x600p60_16x9, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = TV_ASPECT_RATIO_16_9, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_800x600p60_4x3, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_800x480p60_5x3, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_640x480p60_4x3, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_480x320p60_4x3, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, - { - .VIC = HDMI_480x800p60_4x3, - .color_prefer = COLORSPACE_RGB444, - .color_depth = COLORDEPTH_24B, - .bar_info = B_BAR_VERT_HORIZ, - .repeat_time = NO_REPEAT, - .aspect_ratio = ASPECT_RATIO_SAME_AS_SOURCE, - .cc = CC_ITU709, - .ss = SS_SCAN_UNDER, - .sc = SC_SCALE_HORIZ_VERT, - }, { .VIC = HDMI_CUSTOMBUILT, .color_prefer = COLORSPACE_RGB444, diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/enc_cfg_hw.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/enc_cfg_hw.c index 4bdaa219c015..ec579f177938 100644 --- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/enc_cfg_hw.c +++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/enc_cfg_hw.c @@ -688,469 +688,8 @@ static const struct reg_s tvregs_4k2k_smpte_60hz[] = { {MREG_END_MARKER, 0}, }; -static const struct reg_s tvregs_2560x1600p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - - {P_ENCP_VIDEO_MAX_PXCNT, 2719,}, - {P_ENCP_VIDEO_MAX_LNCNT, 1645,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 80,}, - {P_ENCP_VIDEO_HAVON_END, 2639,}, - {P_ENCP_VIDEO_VAVON_BLINE, 37,}, - {P_ENCP_VIDEO_VAVON_ELINE, 1636,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0,}, - {P_ENCP_VIDEO_HSO_END, 32,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x6,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0}, -}; - -static const struct reg_s tvregs_2560x1440p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - - {P_ENCP_VIDEO_MAX_PXCNT, 2719,}, - {P_ENCP_VIDEO_MAX_LNCNT, 1480,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 80,}, - {P_ENCP_VIDEO_HAVON_END, 2639,}, - {P_ENCP_VIDEO_VAVON_BLINE, 34,}, - {P_ENCP_VIDEO_VAVON_ELINE, 1473,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0,}, - {P_ENCP_VIDEO_HSO_END, 32,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x5,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0}, -}; - -static const struct reg_s tvregs_2560x1080p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - - {P_ENCP_VIDEO_MAX_PXCNT, 2783,}, - {P_ENCP_VIDEO_MAX_LNCNT, 1110,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 96,}, - {P_ENCP_VIDEO_HAVON_END, 2655,}, - {P_ENCP_VIDEO_VAVON_BLINE, 18,}, - {P_ENCP_VIDEO_VAVON_ELINE, 1097,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0,}, - {P_ENCP_VIDEO_HSO_END, 64,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0xa,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0}, -}; - -static const struct reg_s tvregs_1920x1200p_60hz[] = { - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 2079,}, - {P_ENCP_VIDEO_MAX_LNCNT, 1234,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 112,}, - {P_ENCP_VIDEO_HAVON_END, 2031,}, - {P_ENCP_VIDEO_VAVON_BLINE, 32,}, - {P_ENCP_VIDEO_VAVON_ELINE, 1231,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0,}, - {P_ENCP_VIDEO_HSO_END, 48,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0,}, - {P_ENCP_VIDEO_VSO_ELINE, 6,}, - - {P_ENCP_DACSEL_0, 0x0543,}, - {P_ENCP_DACSEL_1, 0x0000,}, - {P_ENCI_VIDEO_EN, 0}, - {P_ENCP_VIDEO_EN, 1}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1680x1050p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x8BF,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x440,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x1C8,}, - {P_ENCP_VIDEO_HAVON_END, 0x857,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x24,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x43D,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0xB0,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x6,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1600x1200p_60hz[] = { - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x7FF,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x4F5,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x1A0,}, - {P_ENCP_VIDEO_HAVON_END, 0x7DF,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x3C,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x4EB,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0xA0,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x8,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1600x900p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x707,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x3E7,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0xB0,}, - {P_ENCP_VIDEO_HAVON_END, 0x6EF,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x63,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x3E6,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x50,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x3,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1440x900p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x76F,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x3A5,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x180,}, - {P_ENCP_VIDEO_HAVON_END, 0x71F,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x1F,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x3A2,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x98,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x6,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1360x768p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x6FF,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x31A,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x170,}, - {P_ENCP_VIDEO_HAVON_END, 0x6BF,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x18,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x317,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x70,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x6,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1280x1024p_60hz[] = { - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x697,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x429,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x168,}, - {P_ENCP_VIDEO_HAVON_END, 0x667,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x29,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x428,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x70,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x3,}, - - {P_ENCI_VIDEO_EN, 0}, - {P_ENCP_VIDEO_EN, 1}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1280x800p_60hz[] = { - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x59F,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x336,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x70,}, - {P_ENCP_VIDEO_HAVON_END, 0x56F,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x14,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x333,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x20,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x6,}, - - {P_ENCI_VIDEO_EN, 0}, - {P_ENCP_VIDEO_EN, 1}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1024x768p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x53F,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x325,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x128,}, - {P_ENCP_VIDEO_HAVON_END, 0x527,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x23,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x322,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x88,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x6,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_1024x600p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x53F,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x27D,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x128,}, - {P_ENCP_VIDEO_HAVON_END, 0x527,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x23,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x27A,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x88,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x6,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_800x600p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x41F,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x273,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0xD8,}, - {P_ENCP_VIDEO_HAVON_END, 0x3F7,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x1B,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x272,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x80,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x4,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_800x480p_60hz[] = { - {P_ENCP_VIDEO_EN, 0}, - {P_ENCI_VIDEO_EN, 0}, - {P_VENC_VDAC_SETTING, 0xff}, - - {P_ENCP_VIDEO_MODE, 0x4040}, - {P_ENCP_VIDEO_MODE_ADV, 0x18}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x3DF}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x1F3}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0xA8}, - {P_ENCP_VIDEO_HAVON_END, 0x3C7}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x11}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x1F0}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0}, - {P_ENCP_VIDEO_HSO_END, 0x48}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E}, - {P_ENCP_VIDEO_VSO_END, 0x32}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0}, - {P_ENCP_VIDEO_VSO_ELINE, 0x7}, - - {P_ENCP_VIDEO_EN, 1}, - {P_ENCI_VIDEO_EN, 0}, - {MREG_END_MARKER, 0}, -}; - -static const struct reg_s tvregs_640x480p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - {P_ENCP_VIDEO_MAX_PXCNT, 0x31F,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x20C,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x90,}, - {P_ENCP_VIDEO_HAVON_END, 0x30F,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x23,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x202,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x60,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x2,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_480x320p_60hz[] = { - {P_VENC_VDAC_SETTING, 0xff,}, - {P_ENCP_VIDEO_EN, 0,}, - {P_ENCI_VIDEO_EN, 0,}, - - {P_ENCP_VIDEO_MODE, 0x4040,}, - {P_ENCP_VIDEO_MODE_ADV, 0x18,}, - - {P_ENCP_VIDEO_MAX_PXCNT, 0x31F,}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x20C,}, - {P_ENCP_VIDEO_HAVON_BEGIN, 0x64,}, - {P_ENCP_VIDEO_HAVON_END, 0x243,}, - {P_ENCP_VIDEO_VAVON_BLINE, 0xBD,}, - {P_ENCP_VIDEO_VAVON_ELINE, 0x1FC,}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0,}, - {P_ENCP_VIDEO_HSO_END, 0x64,}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E,}, - {P_ENCP_VIDEO_VSO_END, 0x32,}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0,}, - {P_ENCP_VIDEO_VSO_ELINE, 0x8,}, - - {P_ENCP_VIDEO_EN, 1,}, - {P_ENCI_VIDEO_EN, 0,}, - {MREG_END_MARKER, 0} -}; - -static const struct reg_s tvregs_480x800p_60hz[] = { - {P_ENCP_VIDEO_EN, 0}, - {P_ENCI_VIDEO_EN, 0}, - - {P_ENCP_VIDEO_MODE, 0x4040}, - {P_ENCP_VIDEO_MODE_ADV, 0x18}, - - {P_ENCP_VIDEO_MAX_PXCNT, 0x25F}, - {P_ENCP_VIDEO_MAX_LNCNT, 0x34C}, - - {P_ENCP_VIDEO_HAVON_BEGIN, 0x28}, - {P_ENCP_VIDEO_HAVON_END, 0x207}, - {P_ENCP_VIDEO_VAVON_BLINE, 0x1D}, {P_ENCP_VIDEO_VAVON_ELINE, 0x33C}, - {P_ENCP_VIDEO_HSO_BEGIN, 0x0}, - {P_ENCP_VIDEO_HSO_END, 0x30}, - {P_ENCP_VIDEO_VSO_BEGIN, 0x1E}, - {P_ENCP_VIDEO_VSO_END, 0x32}, - {P_ENCP_VIDEO_VSO_BLINE, 0x0}, - {P_ENCP_VIDEO_VSO_ELINE, 0x3}, - - {P_ENCP_VIDEO_EN, 1}, - {P_ENCI_VIDEO_EN, 0}, - {MREG_END_MARKER, 0}, -}; - - struct vic_tvregs_set { enum hdmi_vic vic; const struct reg_s *reg_setting; @@ -1189,24 +728,6 @@ static struct vic_tvregs_set tvregsTab[] = { {HDMI_3840x2160p50_16x9, tvregs_4k2k_25hz}, {HDMI_3840x2160p60_16x9_Y420, tvregs_4k2k_30hz}, {HDMI_3840x2160p50_16x9_Y420, tvregs_4k2k_25hz}, - {HDMI_2560x1600p60_8x5, tvregs_2560x1600p_60hz}, - {HDMI_2560x1440p60_16x9, tvregs_2560x1440p_60hz}, - {HDMI_2560x1080p60_64x27, tvregs_2560x1080p_60hz}, - {HDMI_1920x1200p60_8x5, tvregs_1920x1200p_60hz}, - {HDMI_1680x1050p60_8x5, tvregs_1680x1050p_60hz}, - {HDMI_1600x1200p60_4x3, tvregs_1600x1200p_60hz}, - {HDMI_1600x900p60_16x9, tvregs_1600x900p_60hz}, - {HDMI_1440x900p60_8x5, tvregs_1440x900p_60hz}, - {HDMI_1360x768p60_16x9, tvregs_1360x768p_60hz}, - {HDMI_1280x1024p60_5x4, tvregs_1280x1024p_60hz}, - {HDMI_1280x800p60_8x5, tvregs_1280x800p_60hz}, - {HDMI_1024x768p60_4x3, tvregs_1024x768p_60hz}, - {HDMI_1024x600p60_16x9, tvregs_1024x600p_60hz}, - {HDMI_800x600p60_4x3, tvregs_800x600p_60hz}, - {HDMI_800x480p60_5x3, tvregs_800x480p_60hz}, - {HDMI_640x480p60_4x3, tvregs_640x480p_60hz}, - {HDMI_480x320p60_4x3, tvregs_480x320p_60hz}, - {HDMI_480x800p60_4x3, tvregs_480x800p_60hz}, }; /* diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hdmi_tx_hw.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hdmi_tx_hw.c index 636c45a57601..7e1c73227cba 100644 --- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hdmi_tx_hw.c +++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hdmi_tx_hw.c @@ -1533,291 +1533,6 @@ static void hdmi_tvenc_set(struct hdmitx_vidpara *param) SOF_LINES = 36; TOTAL_FRAMES = 4; break; - case HDMI_2560x1600p60_8x5: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (2560*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (1600/(1+INTERLACE_MODE)); - LINES_F0 = 1646; - LINES_F1 = 1646; - FRONT_PORCH = 48; - HSYNC_PIXELS = 32; - BACK_PORCH = 80; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 38; - TOTAL_FRAMES = 4; - break; - case HDMI_2560x1440p60_16x9: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (2560*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (1440/(1+INTERLACE_MODE)); - LINES_F0 = 1481; - LINES_F1 = 1481; - FRONT_PORCH = 48; - HSYNC_PIXELS = 32; - BACK_PORCH = 80; - EOF_LINES = 2; - VSYNC_LINES = 5; - SOF_LINES = 34; - TOTAL_FRAMES = 4; - break; - case HDMI_2560x1080p60_64x27: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (2560*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (1080/(1+INTERLACE_MODE)); - LINES_F0 = 1111; - LINES_F1 = 1111; - FRONT_PORCH = 64; - HSYNC_PIXELS = 64; - BACK_PORCH = 96; - EOF_LINES = 3; - VSYNC_LINES = 10; - SOF_LINES = 18; - TOTAL_FRAMES = 4; - break; - case HDMI_1920x1200p60_8x5: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1920*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (1200/(1+INTERLACE_MODE)); - LINES_F0 = 1235; - LINES_F1 = 1235; - FRONT_PORCH = 48; - HSYNC_PIXELS = 32; - BACK_PORCH = 80; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 26; - break; - case HDMI_1680x1050p60_8x5: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1680*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (1050/(1+INTERLACE_MODE)); - LINES_F0 = 1089; - LINES_F1 = 1089; - FRONT_PORCH = 104; - HSYNC_PIXELS = 176; - BACK_PORCH = 280; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 30; - TOTAL_FRAMES = 4; - break; - case HDMI_1600x1200p60_4x3: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1600*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (1200/(1+INTERLACE_MODE)); - LINES_F0 = 1270; - LINES_F1 = 1270; - FRONT_PORCH = 32; - HSYNC_PIXELS = 160; - BACK_PORCH = 256; - EOF_LINES = 10; - VSYNC_LINES = 8; - SOF_LINES = 52; - TOTAL_FRAMES = 4; - break; - case HDMI_1600x900p60_16x9: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1600*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (900/(1+INTERLACE_MODE)); - LINES_F0 = 1800; - LINES_F1 = 1800; - FRONT_PORCH = 24; - HSYNC_PIXELS = 80; - BACK_PORCH = 96; - EOF_LINES = 1; - VSYNC_LINES = 3; - SOF_LINES = 96; - TOTAL_FRAMES = 4; - break; - case HDMI_1440x900p60_8x5: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1440*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (900/(1+INTERLACE_MODE)); - LINES_F0 = 934; - LINES_F1 = 934; - FRONT_PORCH = 80; - HSYNC_PIXELS = 152; - BACK_PORCH = 232; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 25; - TOTAL_FRAMES = 4; - break; - case HDMI_1360x768p60_16x9: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1360*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (768/(1+INTERLACE_MODE)); - LINES_F0 = 795; - LINES_F1 = 795; - FRONT_PORCH = 64; - HSYNC_PIXELS = 112; - BACK_PORCH = 256; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 18; - TOTAL_FRAMES = 4; - break; - case HDMI_1280x1024p60_5x4: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1280*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (1024/(1+INTERLACE_MODE)); - LINES_F0 = 1066; - LINES_F1 = 1066; - FRONT_PORCH = 48; - HSYNC_PIXELS = 112; - BACK_PORCH = 248; - EOF_LINES = 1; - VSYNC_LINES = 3; - SOF_LINES = 38; - break; - case HDMI_1280x800p60_8x5: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1280*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (800/(1+INTERLACE_MODE)); - LINES_F0 = 823; - LINES_F1 = 823; - FRONT_PORCH = 48; - HSYNC_PIXELS = 32; - BACK_PORCH = 80; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 14; - break; - case HDMI_1024x768p60_4x3: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1024*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (768/(1+INTERLACE_MODE)); - LINES_F0 = 806; - LINES_F1 = 806; - FRONT_PORCH = 24; - HSYNC_PIXELS = 136; - BACK_PORCH = 160; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 29; - TOTAL_FRAMES = 4; - break; - case HDMI_1024x600p60_16x9: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (1024*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (600/(1+INTERLACE_MODE)); - LINES_F0 = 638; - LINES_F1 = 638; - FRONT_PORCH = 24; - HSYNC_PIXELS = 136; - BACK_PORCH = 160; - EOF_LINES = 3; - VSYNC_LINES = 6; - SOF_LINES = 29; - TOTAL_FRAMES = 4; - break; - case HDMI_800x600p60_4x3: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (800*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (600/(1+INTERLACE_MODE)); - LINES_F0 = 628; - LINES_F1 = 628; - FRONT_PORCH = 40; - HSYNC_PIXELS = 128; - BACK_PORCH = 88; - EOF_LINES = 1; - VSYNC_LINES = 4; - SOF_LINES = 23; - TOTAL_FRAMES = 4; - break; - case HDMI_800x480p60_5x3: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (800*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (480/(1+INTERLACE_MODE)); - LINES_F0 = 500; - LINES_F1 = 500; - FRONT_PORCH = 24; - HSYNC_PIXELS = 72; - BACK_PORCH = 96; - EOF_LINES = 3; - VSYNC_LINES = 7; - SOF_LINES = 10; - TOTAL_FRAMES = 4; - break; - case HDMI_640x480p60_4x3: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (640*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (480/(1+INTERLACE_MODE)); - LINES_F0 = 525; - LINES_F1 = 525; - FRONT_PORCH = 16; - HSYNC_PIXELS = 96; - BACK_PORCH = 48; - EOF_LINES = 10; - VSYNC_LINES = 2; - SOF_LINES = 33; - TOTAL_FRAMES = 4; - break; - case HDMI_480x320p60_4x3: - INTERLACE_MODE = 0; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (480*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (320/(1+INTERLACE_MODE)); - LINES_F0 = 263; - LINES_F1 = 263; - FRONT_PORCH = 120; - HSYNC_PIXELS = 100; - BACK_PORCH = 100; - EOF_LINES = 8; - VSYNC_LINES = 4; - SOF_LINES = 95; - TOTAL_FRAMES = 4; - break; - case HDMI_480x800p60_4x3: - INTERLACE_MODE = 0U; - PIXEL_REPEAT_VENC = 0; - PIXEL_REPEAT_HDMI = 0; - ACTIVE_PIXELS = (480*(1+PIXEL_REPEAT_HDMI)); - ACTIVE_LINES = (800*(1+PIXEL_REPEAT_HDMI)); - LINES_F0 = 845; - LINES_F1 = 845; - FRONT_PORCH = 40; - HSYNC_PIXELS = 48; - BACK_PORCH = 40; - EOF_LINES = 13; - VSYNC_LINES = 3; - SOF_LINES = 29; - TOTAL_FRAMES = 4; - break; case HDMI_CUSTOMBUILT: custom_timing = get_custom_timing(); INTERLACE_MODE = 0U; diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c index e37d80cec0b4..481e5a133345 100644 --- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c +++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_clk.c @@ -783,64 +783,6 @@ static struct hw_enc_clk_val_group setting_enc_clk_val_24[] = { HDMI_3840x2160p50_16x9_Y420, HDMI_VIC_END}, 5940000, 2, 1, 1, VID_PLL_DIV_5, 1, 2, 1, -1}, - {{HDMI_2560x1600p60_8x5, - HDMI_VIC_END}, - 5405400, 2, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_2560x1440p60_16x9, - HDMI_VIC_END}, - 4830000, 2, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_2560x1080p60_64x27, - HDMI_VIC_END}, - 1855800, 1, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1920x1200p60_8x5, - HDMI_VIC_END}, - 1540000, 1, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1680x1050p60_8x5, - HDMI_VIC_END}, - 1462500, 1, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1600x1200p60_4x3, - HDMI_VIC_END}, - 1560000, 1, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1600x900p60_16x9, - HDMI_VIC_END}, - /* It works, but the exact hpll is 4320000 */ - 4324320, 4, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1440x900p60_8x5, - HDMI_VIC_END}, - 2134000, 2, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1360x768p60_16x9, - HDMI_VIC_END}, - 3420000, 2, 2, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1280x1024p60_5x4, - HDMI_VIC_END}, - /* actual hpll : 4320000 */ - 4324320, 4, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1280x800p60_8x5, - HDMI_VIC_END}, - 1422000, 2, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1024x768p60_4x3, - HDMI_VIC_END}, - 2600000, 4, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_1024x600p60_16x9, - HDMI_VIC_END}, - 2058000, 4, 1, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_800x600p60_4x3, - HDMI_VIC_END}, - 1560000, 2, 2, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_800x480p60_5x3, - HDMI_VIC_END}, - 2415000, 4, 2, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_640x480p60_4x3, - HDMI_VIC_END}, - /* actual hpll : 2014000 */ - 2000000, 4, 2, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_480x320p60_4x3, - HDMI_VIC_END}, - /* actual hpll : 2016000 */ - 2000000, 4, 2, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, - {{HDMI_480x800p60_4x3, - HDMI_VIC_END}, - 2560000, 4, 2, 2, VID_PLL_DIV_5, 1, 1, 1, -1}, {{HDMI_CUSTOMBUILT, HDMI_VIC_END}, /* default 1080p60hz */ @@ -1049,8 +991,8 @@ next: p_enc[j].hpll_clk_out = (custom_timing->frac_freq * 10); pr_info("[N2][%s] vic == HDMI_CUSTOMBUILT, frac_freq %d\n", __func__, custom_timing->frac_freq); - /* check if hpll clk output is under (140*10)MHz */ - if (p_enc[j].hpll_clk_out < 1400000) { + /* check if hpll clk output is under (100*10)MHz */ + if (p_enc[j].hpll_clk_out < 1000000) { p_enc[j].hpll_clk_out *= 4; /* control od dividers */ p_enc[j].od1 = 4; diff --git a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c index 5179fcebf996..56583582d7e3 100644 --- a/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c +++ b/drivers/amlogic/media/vout/hdmitx/hdmi_tx_20/hw/hw_g12a.c @@ -266,18 +266,6 @@ void set_g12a_hpll_clk_out(unsigned int frac_rate, unsigned int clk) WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); break; - case 3420000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00048e); - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; case 3243240: hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b000487); if (frac_rate) @@ -308,201 +296,6 @@ void set_g12a_hpll_clk_out(unsigned int frac_rate, unsigned int clk) WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); break; - case 2685000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00046F); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x000140b4); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 2600000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00046C); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x000140b4); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 2560000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00046A); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x000140b4); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 2415000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b000464); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x000140b4); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 2134000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00045A); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x000140b4); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 2058000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b000455); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x000140b4); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 2000000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b000453); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x000140b4); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 1855800: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00044C); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00000000); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x0001A000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 1560000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b000440); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00000000); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x0001A000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 1540000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00043F); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00000000); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x0001A000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 1462500: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00043C); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00000000); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x0001A000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 1422000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00043A); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00000000); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x0001A000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; - case 320000: - hd_write_reg(P_HHI_HDMI_PLL_CNTL0, 0x3b00040D); - if (frac_rate) - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00000000); - else - hd_write_reg(P_HHI_HDMI_PLL_CNTL1, 0x00018000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL2, 0x00000000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL3, 0x0a691c00); - hd_write_reg(P_HHI_HDMI_PLL_CNTL4, 0x33771290); - hd_write_reg(P_HHI_HDMI_PLL_CNTL5, 0x39270000); - hd_write_reg(P_HHI_HDMI_PLL_CNTL6, 0x50540000); - hd_set_reg_bits(P_HHI_HDMI_PLL_CNTL0, 0x0, 29, 1); - WAIT_FOR_PLL_LOCKED(P_HHI_HDMI_PLL_CNTL0); - pr_info("HPLL: 0x%x\n", hd_read_reg(P_HHI_HDMI_PLL_CNTL0)); - break; default: pr_info("error hpll clk: %d\n", clk); diff --git a/include/linux/amlogic/media/vout/hdmi_tx/hdmi_common.h b/include/linux/amlogic/media/vout/hdmi_tx/hdmi_common.h index 7246de5c773e..e8cfde4de376 100644 --- a/include/linux/amlogic/media/vout/hdmi_tx/hdmi_common.h +++ b/include/linux/amlogic/media/vout/hdmi_tx/hdmi_common.h @@ -156,23 +156,6 @@ enum hdmi_vic { HDMI_3840x1080p100hz, HDMI_3840x540p240hz, HDMI_3840x540p200hz, - HDMI_2560x1600p60_8x5, - HDMI_2560x1440p60_16x9, - HDMI_1920x1200p60_8x5, - HDMI_1680x1050p60_8x5, - HDMI_1600x1200p60_4x3, - HDMI_1600x900p60_16x9, - HDMI_1440x900p60_8x5, - HDMI_1360x768p60_16x9, - HDMI_1280x1024p60_5x4, - HDMI_1280x800p60_8x5, - HDMI_1024x768p60_4x3, - HDMI_1024x600p60_16x9, - HDMI_800x600p60_4x3, - HDMI_800x480p60_5x3, - HDMI_480x320p60_4x3, - HDMI_480x800p60_4x3, - HDMI_CUSTOMBUILT, /* * the following vic is for those y420 mode @@ -196,6 +179,7 @@ enum hdmi_vic { HDMI_VIC_Y420_MAX, HDMI_VIC_FAKE = HDMITX_VIC420_FAKE_OFFSET, + HDMI_CUSTOMBUILT, HDMI_VIC_END, };