Index: drivers/media/video/samsung/tv20/tv_out_s5pv210.h |
diff --git a/drivers/media/video/samsung/tv20/tv_out_s5pv210.h b/drivers/media/video/samsung/tv20/tv_out_s5pv210.h |
new file mode 100644 |
index 0000000000000000000000000000000000000000..2463f738d7dd00c170824696a85354a5f5d8d783 |
--- /dev/null |
+++ b/drivers/media/video/samsung/tv20/tv_out_s5pv210.h |
@@ -0,0 +1,568 @@ |
+/* linux/drivers/media/video/samsung/tv20/tv_out_s5pv210.h |
+* |
+* Copyright (c) 2010 Samsung Electronics Co., Ltd. |
+* http://www.samsung.com/ |
+* |
+* S5PV210 - tv out header file for Samsung TVOut driver |
+* |
+* This program is free software; you can redistribute it and/or modify |
+* it under the terms of the GNU General Public License version 2 as |
+* published by the Free Software Foundation. |
+*/ |
+ |
+/* #define CONFIG_TVOUT_RAW_DBG */ |
+ |
+/* common */ |
+ |
+#define HDMI_START_NUM 0x1000 |
+ |
+#define bit_add_l(val, addr) writel(readl(addr) | val, addr) |
+#define bit_add_s(val, addr) writes(reads(addr) | val, addr) |
+#define bit_add_b(val, addr) writeb(readb(addr) | val, addr) |
+#define bit_del_l(val, addr) writel(readl(addr) & ~val, addr) |
+#define bit_del_s(val, addr) writes(reads(addr) & ~val, addr) |
+#define bit_del_b(val, addr) writeb(readb(addr) & ~val, addr) |
+ |
+enum s5p_tv_audio_codec_type { |
+ PCM = 1, AC3, MP3, WMA |
+}; |
+ |
+enum s5p_endian_type { |
+ TVOUT_LITTLE_ENDIAN_MODE = 0, |
+ TVOUT_BIG_ENDIAN_MODE = 1 |
+}; |
+ |
+enum s5p_tv_disp_mode { |
+ TVOUT_NTSC_M = 0, |
+ TVOUT_PAL_BDGHI, |
+ TVOUT_PAL_M, |
+ TVOUT_PAL_N, |
+ TVOUT_PAL_NC, |
+ TVOUT_PAL_60, |
+ TVOUT_NTSC_443, |
+ |
+ TVOUT_480P_60_16_9 = HDMI_START_NUM, |
+ TVOUT_480P_60_4_3, |
+ TVOUT_480P_59, |
+ |
+ TVOUT_576P_50_16_9, |
+ TVOUT_576P_50_4_3, |
+ |
+ TVOUT_720P_60, |
+ TVOUT_720P_50, |
+ TVOUT_720P_59, |
+ |
+ TVOUT_1080P_60, |
+ TVOUT_1080P_50, |
+ TVOUT_1080P_59, |
+ TVOUT_1080P_30, |
+ |
+ TVOUT_1080I_60, |
+ TVOUT_1080I_50, |
+ TVOUT_1080I_59, |
+}; |
+ |
+enum s5p_tv_o_mode { |
+ TVOUT_OUTPUT_COMPOSITE, |
+ TVOUT_OUTPUT_SVIDEO, |
+ TVOUT_OUTPUT_COMPONENT_YPBPR_INERLACED, |
+ TVOUT_OUTPUT_COMPONENT_YPBPR_PROGRESSIVE, |
+ TVOUT_OUTPUT_COMPONENT_RGB_PROGRESSIVE, |
+ TVOUT_OUTPUT_HDMI, |
+ TVOUT_OUTPUT_HDMI_RGB, |
+ TVOUT_OUTPUT_DVI |
+}; |
+ |
+enum s5p_tv_clk_err { |
+ S5P_TV_CLK_ERR_NO_ERROR = 0, |
+ S5P_TV_CLK_ERR_NOT_INIT_PARAMETERS_UNDER_RUNNING = 0x4000, |
+ S5P_TV_CLK_ERR_NOT_SET_PARAMETERS_UNDER_STOP, |
+ S5P_TV_CLK_ERR_INVALID_PARAM |
+}; |
+ |
+enum s5p_tv_vp_err { |
+ VPROC_NO_ERROR = 0, |
+ S5P_TV_VP_ERR_NOT_INIT_PARAMETERS_UNDER_RUNNING = 0x2000, |
+ S5P_TV_VP_ERR_NOT_SET_PARAMETERS_UNDER_STOP, |
+ S5P_TV_VP_ERR_BASE_ADDRESS_MUST_DOUBLE_WORD_ALIGN, |
+ S5P_TV_VP_ERR_NOT_UPDATE_FOR_ANOTHER_UPDATE, |
+ S5P_TV_VP_ERR_INVALID_PARAM |
+}; |
+ |
+enum s5p_tv_vmx_err { |
+ VMIXER_NO_ERROR = 0, |
+ S5P_TV_VMX_ERR_NOT_INIT_PARAMETERS_UNDER_RUNNING = 0x1000, |
+ S5P_TV_VMX_ERR_NOT_SET_PARAMETERS_UNDER_STOP, |
+ S5P_TV_VMX_ERR_BASE_ADDRESS_MUST_WORD_ALIGN, |
+ S5P_TV_VMX_ERR_INVALID_PARAM |
+}; |
+ |
+enum s5p_tv_vmx_color_fmt { |
+ VM_DIRECT_RGB565 = 4, |
+ VM_DIRECT_RGB1555 = 5, |
+ VM_DIRECT_RGB4444 = 6, |
+ VM_DIRECT_RGB8888 = 7 |
+}; |
+ |
+enum s5p_tv_sd_err { |
+ SDOUT_NO_ERROR = 0, |
+ S5P_TV_SD_ERR_NOT_INIT_PARAMETERS_UNDER_RUNNING = 0x3000, |
+ S5P_TV_SD_ERR_NOT_SET_PARAMETERS_UNDER_STOP, |
+ S5P_TV_SD_ERR_INVALID_PARAM |
+}; |
+ |
+/* order ch2 - ch1 - ch0 */ |
+enum s5p_sd_order { |
+ S5P_TV_SD_O_ORDER_COMPONENT_RGB_PRYPB, |
+ S5P_TV_SD_O_ORDER_COMPONENT_RBG_PRPBY, |
+ S5P_TV_SD_O_ORDER_COMPONENT_BGR_PBYPR, |
+ S5P_TV_SD_O_ORDER_COMPONENT_BRG_PBPRY, |
+ S5P_TV_SD_O_ORDER_COMPONENT_GRB_YPRPB, |
+ S5P_TV_SD_O_ORDER_COMPONENT_GBR_YPBPR, |
+ S5P_TV_SD_O_ORDER_COMPOSITE_CVBS_Y_C, |
+ S5P_TV_SD_O_ORDER_COMPOSITE_CVBS_C_Y, |
+ S5P_TV_SD_O_ORDER_COMPOSITE_Y_C_CVBS, |
+ S5P_TV_SD_O_ORDER_COMPOSITE_Y_CVBS_C, |
+ S5P_TV_SD_O_ORDER_COMPOSITE_C_CVBS_Y, |
+ S5P_TV_SD_O_ORDER_COMPOSITE_C_Y_CVBS |
+}; |
+ |
+/* HDMI */ |
+enum s5p_tv_hdmi_err { |
+ HDMI_NO_ERROR = 0, |
+ S5P_TV_HDMI_ERR_NOT_INIT_PARAMETERS_UNDER_RUNNING = 0x6000, |
+ S5P_TV_HDMI_ERR_NOT_SET_PARAMETERS_UNDER_STOP, |
+ S5P_TV_HDMI_ERR_INVALID_PARAM |
+}; |
+ |
+enum s5p_hdmi_transmit { |
+ HDMI_DO_NOT_TANS = 0, |
+ HDMI_TRANS_ONCE, |
+ HDMI_TRANS_EVERY_SYNC |
+}; |
+ |
+enum s5p_hdmi_audio_type { |
+ HDMI_AUDIO_NO, |
+ HDMI_AUDIO_PCM |
+}; |
+ |
+/* common */ |
+enum s5p_tv_active_polarity { |
+ TVOUT_POL_ACTIVE_LOW, |
+ TVOUT_POL_ACTIVE_HIGH |
+}; |
+ |
+enum s5p_yuv_fmt_component{ |
+ TVOUT_YUV_Y, |
+ TVOUT_YUV_CB, |
+ TVOUT_YUV_CR |
+}; |
+ |
+enum s5p_tv_clk_mout_hpll { |
+ S5P_TV_CLK_MOUT_HPLL_27M, |
+ S5P_TV_CLK_MOUT_HPLL_FOUT_HPLL |
+}; |
+ |
+enum s5p_tv_clk_vmiexr_srcclk { |
+ TVOUT_CLK_VMIXER_SRCCLK_CLK27M, |
+ TVOUT_CLK_VMIXER_SRCCLK_VCLK_54, |
+ TVOUT_CLK_VMIXER_SRCCLK_MOUT_HPLL |
+}; |
+ |
+/* video processor */ |
+enum s5p_vp_src_color { |
+ VPROC_SRC_COLOR_NV12 = 0, |
+ VPROC_SRC_COLOR_NV12IW = 1, |
+ VPROC_SRC_COLOR_TILE_NV12 = 2, |
+ VPROC_SRC_COLOR_TILE_NV12IW = 3 |
+}; |
+ |
+enum s5p_vp_pxl_rate { |
+ VPROC_PIXEL_PER_RATE_1_1 = 0, |
+ VPROC_PIXEL_PER_RATE_1_2 = 1, |
+ VPROC_PIXEL_PER_RATE_1_3 = 2, |
+ VPROC_PIXEL_PER_RATE_1_4 = 3 |
+}; |
+ |
+enum s5p_vp_sharpness_control { |
+ VPROC_SHARPNESS_NO = 0, |
+ VPROC_SHARPNESS_MIN = 1, |
+ VPROC_SHARPNESS_MOD = 2, |
+ VPROC_SHARPNESS_MAX = 3 |
+}; |
+ |
+enum s5p_vp_line_eq { |
+ VProc_LINE_EQ_0 = 0, |
+ VProc_LINE_EQ_1 = 1, |
+ VProc_LINE_EQ_2 = 2, |
+ VProc_LINE_EQ_3 = 3, |
+ VProc_LINE_EQ_4 = 4, |
+ VProc_LINE_EQ_5 = 5, |
+ VProc_LINE_EQ_6 = 6, |
+ VProc_LINE_EQ_7 = 7 |
+}; |
+ |
+enum s5p_vp_mem_mode { |
+ VPROC_LINEAR_MODE, |
+ VPROC_2D_TILE_MODE |
+}; |
+ |
+enum s5p_vp_chroma_expansion { |
+ VPROC_USING_C_TOP, |
+ VPROC_USING_C_TOP_BOTTOM |
+}; |
+ |
+enum s5p_vp_filed_id_toggle{ |
+ S5P_TV_VP_FILED_ID_TOGGLE_USER, |
+ S5P_TV_VP_FILED_ID_TOGGLE_VSYNC |
+}; |
+ |
+enum s5p_vp_field { |
+ VPROC_TOP_FIELD, |
+ VPROC_BOTTOM_FIELD |
+}; |
+ |
+enum s5p_vp_poly_coeff { |
+ VPROC_POLY8_Y0_LL = 0, |
+ VPROC_POLY8_Y0_LH, |
+ VPROC_POLY8_Y0_HL, |
+ VPROC_POLY8_Y0_HH, |
+ VPROC_POLY8_Y1_LL, |
+ VPROC_POLY8_Y1_LH, |
+ VPROC_POLY8_Y1_HL, |
+ VPROC_POLY8_Y1_HH, |
+ VPROC_POLY8_Y2_LL, |
+ VPROC_POLY8_Y2_LH, |
+ VPROC_POLY8_Y2_HL, |
+ VPROC_POLY8_Y2_HH, |
+ VPROC_POLY8_Y3_LL, |
+ VPROC_POLY8_Y3_LH, |
+ VPROC_POLY8_Y3_HL, |
+ VPROC_POLY8_Y3_HH, |
+ VPROC_POLY4_Y0_LL = 32, |
+ VPROC_POLY4_Y0_LH, |
+ VPROC_POLY4_Y0_HL, |
+ VPROC_POLY4_Y0_HH, |
+ VPROC_POLY4_Y1_LL, |
+ VPROC_POLY4_Y1_LH, |
+ VPROC_POLY4_Y1_HL, |
+ VPROC_POLY4_Y1_HH, |
+ VPROC_POLY4_Y2_LL, |
+ VPROC_POLY4_Y2_LH, |
+ VPROC_POLY4_Y2_HL, |
+ VPROC_POLY4_Y2_HH, |
+ VPROC_POLY4_Y3_LL, |
+ VPROC_POLY4_Y3_LH, |
+ VPROC_POLY4_Y3_HL, |
+ VPROC_POLY4_Y3_HH, |
+ VPROC_POLY4_C0_LL, |
+ VPROC_POLY4_C0_LH, |
+ VPROC_POLY4_C0_HL, |
+ VPROC_POLY4_C0_HH, |
+ VPROC_POLY4_C1_LL, |
+ VPROC_POLY4_C1_LH, |
+ VPROC_POLY4_C1_HL, |
+ VPROC_POLY4_C1_HH |
+}; |
+ |
+enum s5p_vp_csc_coeff { |
+ VPROC_CSC_Y2Y_COEF = 0, |
+ VPROC_CSC_CB2Y_COEF, |
+ VPROC_CSC_CR2Y_COEF, |
+ VPROC_CSC_Y2CB_COEF, |
+ VPROC_CSC_CB2CB_COEF, |
+ VPROC_CSC_CR2CB_COEF, |
+ VPROC_CSC_Y2CR_COEF, |
+ VPROC_CSC_CB2CR_COEF, |
+ VPROC_CSC_CR2CR_COEF |
+}; |
+ |
+enum s5p_vp_csc_type { |
+ VPROC_CSC_SD_HD, |
+ VPROC_CSC_HD_SD |
+}; |
+ |
+enum s5p_tv_vp_filter_h_pp { |
+ /* Don't change the order and the value */ |
+ VPROC_PP_H_NORMAL = 0, |
+ VPROC_PP_H_8_9, /* 720 to 640 */ |
+ VPROC_PP_H_1_2, |
+ VPROC_PP_H_1_3, |
+ VPROC_PP_H_1_4 |
+}; |
+ |
+enum s5p_tv_vp_filter_v_pp { |
+ /* Don't change the order and the value */ |
+ VPROC_PP_V_NORMAL = 0, |
+ VPROC_PP_V_5_6, /* PAL to NTSC */ |
+ VPROC_PP_V_3_4, |
+ VPROC_PP_V_1_2, |
+ VPROC_PP_V_1_3, |
+ VPROC_PP_V_1_4 |
+}; |
+ |
+/* video mixer */ |
+enum s5p_vmx_burst_mode { |
+ VM_BURST_8 = 0, |
+ VM_BURST_16 = 1 |
+}; |
+ |
+enum s5p_tv_vmx_layer { |
+ VM_VIDEO_LAYER = 2, |
+ VM_GPR0_LAYER = 0, |
+ VM_GPR1_LAYER = 1 |
+}; |
+ |
+enum s5p_tv_vmx_bg_color_num { |
+ VMIXER_BG_COLOR_0 = 0, |
+ VMIXER_BG_COLOR_1 = 1, |
+ VMIXER_BG_COLOR_2 = 2 |
+}; |
+ |
+enum s5p_tv_coef_y_mode { |
+ VMIXER_COEF_Y_NARROW = 0, |
+ VMIXER_COEF_Y_WIDE = 1 |
+}; |
+ |
+enum s5p_tv_vmx_csc_type { |
+ VMIXER_CSC_RGB_TO_YUV601_LR, |
+ VMIXER_CSC_RGB_TO_YUV601_FR, |
+ VMIXER_CSC_RGB_TO_YUV709_LR, |
+ VMIXER_CSC_RGB_TO_YUV709_FR |
+}; |
+ |
+enum s5p_tv_vmx_rgb { |
+ RGB601_0_255, |
+ RGB601_16_235, |
+ RGB709_0_255, |
+ RGB709_16_235 |
+}; |
+ |
+enum s5p_tv_vmx_out_type{ |
+ MX_YUV444, |
+ MX_RGB888 |
+}; |
+ |
+/* TV encoder */ |
+enum s5p_sd_level{ |
+ S5P_TV_SD_LEVEL_0IRE, |
+ S5P_TV_SD_LEVEL_75IRE |
+}; |
+ |
+enum s5p_sd_vsync_ratio{ |
+ SDOUT_VTOS_RATIO_10_4, |
+ SDOUT_VTOS_RATIO_7_3 |
+}; |
+ |
+enum s5p_sd_sync_sig_pin{ |
+ SDOUT_SYNC_SIG_NO, |
+ SDOUT_SYNC_SIG_YG, |
+ SDOUT_SYNC_SIG_ALL |
+}; |
+ |
+enum s5p_sd_closed_caption_type { |
+ SDOUT_NO_INS, |
+ SDOUT_INS_1, |
+ SDOUT_INS_2, |
+ SDOUT_INS_OTHERS |
+}; |
+ |
+enum s5p_sd_channel_sel { |
+ SDOUT_CHANNEL_0 = 0, |
+ SDOUT_CHANNEL_1 = 1, |
+ SDOUT_CHANNEL_2 = 2 |
+}; |
+ |
+enum s5p_sd_vesa_rgb_sync_type { |
+ SDOUT_VESA_RGB_SYNC_COMPOSITE, |
+ SDOUT_VESA_RGB_SYNC_SEPARATE |
+}; |
+ |
+enum s5p_sd_525_copy_permit { |
+ SDO_525_COPY_PERMIT, |
+ SDO_525_ONECOPY_PERMIT, |
+ SDO_525_NOCOPY_PERMIT |
+}; |
+ |
+enum s5p_sd_525_mv_psp { |
+ SDO_525_MV_PSP_OFF, |
+ SDO_525_MV_PSP_ON_2LINE_BURST, |
+ SDO_525_MV_PSP_ON_BURST_OFF, |
+ SDO_525_MV_PSP_ON_4LINE_BURST, |
+}; |
+ |
+enum s5p_sd_525_copy_info { |
+ SDO_525_COPY_INFO, |
+ SDO_525_DEFAULT, |
+}; |
+ |
+enum s5p_sd_525_aspect_ratio { |
+ SDO_525_4_3_NORMAL, |
+ SDO_525_16_9_ANAMORPIC, |
+ SDO_525_4_3_LETTERBOX |
+}; |
+ |
+enum s5p_sd_625_subtitles { |
+ SDO_625_NO_OPEN_SUBTITLES, |
+ SDO_625_INACT_OPEN_SUBTITLES, |
+ SDO_625_OUTACT_OPEN_SUBTITLES |
+}; |
+ |
+enum s5p_sd_625_camera_film{ |
+ SDO_625_CAMERA, |
+ SDO_625_FILM |
+}; |
+ |
+enum s5p_sd_625_color_encoding { |
+ SDO_625_NORMAL_PAL, |
+ SDO_625_MOTION_ADAPTIVE_COLORPLUS |
+}; |
+ |
+enum s5p_sd_625_aspect_ratio { |
+ SDO_625_4_3_FULL_576, |
+ SDO_625_14_9_LETTERBOX_CENTER_504, |
+ SDO_625_14_9_LETTERBOX_TOP_504, |
+ SDO_625_16_9_LETTERBOX_CENTER_430, |
+ SDO_625_16_9_LETTERBOX_TOP_430, |
+ SDO_625_16_9_LETTERBOX_CENTER, |
+ SDO_625_14_9_FULL_CENTER_576, |
+ SDO_625_16_9_ANAMORPIC_576 |
+}; |
+ |
+/* HDMI */ |
+enum s5p_tv_hdmi_csc_type { |
+ HDMI_CSC_YUV601_TO_RGB_LR, |
+ HDMI_CSC_YUV601_TO_RGB_FR, |
+ HDMI_CSC_YUV709_TO_RGB_LR, |
+ HDMI_CSC_YUV709_TO_RGB_FR, |
+ HDMI_CSC_YUV601_TO_YUV709, |
+ HDMI_CSC_RGB_FR_TO_RGB_LR, |
+ HDMI_CSC_RGB_FR_TO_YUV601, |
+ HDMI_CSC_RGB_FR_TO_YUV709, |
+ HDMI_BYPASS |
+}; |
+ |
+/* |
+ * Color Depth for HDMI HW (settings and GCP packet), |
+ * EDID and PHY HW |
+ */ |
+enum s5p_hdmi_color_depth { |
+ HDMI_CD_48, |
+ HDMI_CD_36, |
+ HDMI_CD_30, |
+ HDMI_CD_24 |
+}; |
+ |
+enum phy_freq { |
+ ePHY_FREQ_25_200, |
+ ePHY_FREQ_25_175, |
+ ePHY_FREQ_27, |
+ ePHY_FREQ_27_027, |
+ ePHY_FREQ_54, |
+ ePHY_FREQ_54_054, |
+ ePHY_FREQ_74_250, |
+ ePHY_FREQ_74_176, |
+ ePHY_FREQ_148_500, |
+ ePHY_FREQ_148_352, |
+ ePHY_FREQ_108_108, |
+ ePHY_FREQ_72, |
+ ePHY_FREQ_25, |
+ ePHY_FREQ_65, |
+ ePHY_FREQ_108, |
+ ePHY_FREQ_162 |
+}; |
+ |
+/* video format for HDMI HW (timings and AVI) and EDID */ |
+enum s5p_hdmi_v_fmt { |
+ v640x480p_60Hz = 0, |
+ v720x480p_60Hz, |
+ v1280x720p_60Hz, |
+ v1920x1080i_60Hz, |
+ v720x480i_60Hz, |
+ v720x240p_60Hz, |
+ v2880x480i_60Hz, |
+ v2880x240p_60Hz, |
+ v1440x480p_60Hz, |
+ v1920x1080p_60Hz, |
+ v720x576p_50Hz, |
+ v1280x720p_50Hz, |
+ v1920x1080i_50Hz, |
+ v720x576i_50Hz, |
+ v720x288p_50Hz, |
+ v2880x576i_50Hz, |
+ v2880x288p_50Hz, |
+ v1440x576p_50Hz, |
+ v1920x1080p_50Hz, |
+ v1920x1080p_24Hz, |
+ v1920x1080p_25Hz, |
+ v1920x1080p_30Hz, |
+ v2880x480p_60Hz, |
+ v2880x576p_50Hz, |
+ v1920x1080i_50Hz_1250, |
+ v1920x1080i_100Hz, |
+ v1280x720p_100Hz, |
+ v720x576p_100Hz, |
+ v720x576i_100Hz, |
+ v1920x1080i_120Hz, |
+ v1280x720p_120Hz, |
+ v720x480p_120Hz, |
+ v720x480i_120Hz, |
+ v720x576p_200Hz, |
+ v720x576i_200Hz, |
+ v720x480p_240Hz, |
+ v720x480i_240Hz, |
+ v720x480p_59Hz, |
+ v1280x720p_59Hz, |
+ v1920x1080i_59Hz, |
+ v1920x1080p_59Hz, |
+ |
+}; |
+ |
+enum s5p_tv_hdmi_disp_mode { |
+ S5P_TV_HDMI_DISP_MODE_480P_60 = 0, |
+ S5P_TV_HDMI_DISP_MODE_576P_50 = 1, |
+ S5P_TV_HDMI_DISP_MODE_720P_60 = 2, |
+ S5P_TV_HDMI_DISP_MODE_720P_50 = 3, |
+ S5P_TV_HDMI_DISP_MODE_1080I_60 = 4, |
+ S5P_TV_HDMI_DISP_MODE_1080I_50 = 5, |
+ S5P_TV_HDMI_DISP_MODE_VGA_60 = 6, |
+ S5P_TV_HDMI_DISP_MODE_1080P_60 = 7, |
+ S5P_TV_HDMI_DISP_MODE_1080P_50 = 8, |
+ S5P_TV_HDMI_DISP_MODE_NUM = 9 |
+}; |
+ |
+/* pixel aspect ratio for HDMI HW (AVI packet and EDID) */ |
+enum s5p_tv_hdmi_pxl_aspect { |
+ HDMI_PIXEL_RATIO_4_3, |
+ HDMI_PIXEL_RATIO_16_9 |
+}; |
+ |
+enum s5p_tv_hdmi_interrrupt { |
+ HDMI_IRQ_PIN_POLAR_CTL = 7, |
+ HDMI_IRQ_GLOBAL = 6, |
+ HDMI_IRQ_I2S = 5, |
+ HDMI_IRQ_CEC = 4, |
+ HDMI_IRQ_HPD_PLUG = 3, |
+ HDMI_IRQ_HPD_UNPLUG = 2, |
+ HDMI_IRQ_SPDIF = 1, |
+ HDMI_IRQ_HDCP = 0 |
+}; |
+ |
+typedef int (*hdmi_isr)(int irq); |
+ |
+extern void __iomem *hdmi_base; |
+ |
+extern wait_queue_head_t s5ptv_wq; |
+ |
+/* must be checked */ |
+extern u8 hdcp_protocol_status; |
+ /* 0 - hdcp stopped, 1 - hdcp started, 2 - hdcp reset */ |
+ |
+extern int s5p_hdmi_register_isr(hdmi_isr isr, u8 irq_num); |
+extern void s5p_hdmi_enable_interrupts(enum s5p_tv_hdmi_interrrupt intr); |
+extern void s5p_hdmi_disable_interrupts(enum s5p_tv_hdmi_interrrupt intr); |
+extern void s5p_hdmi_hpd_gen(void); |
+ |
+extern bool tv_start_hdcp(void); |
+extern bool tv_stop_hdcp(void); |
+ |