1 #ifndef __cat66121_HDMI_H__
2 #define __cat66121_HDMI_H__
3 #include "../../rk_hdmi.h"
5 #if defined(CONFIG_HDMI_SOURCE_LCDC1)
6 #define HDMI_SOURCE_DEFAULT HDMI_SOURCE_LCDC1
8 #define HDMI_SOURCE_DEFAULT HDMI_SOURCE_LCDC0
11 //#define HDMI_SOURCE_DEFAULT HDMI_SOURCE_LCDC0
12 //#define HDMI_USE_IRQ
14 struct cat66121_hdmi_pdata {
16 struct i2c_client *client;
17 struct delayed_work delay_work;
19 struct work_struct irq_work;
21 struct workqueue_struct *workqueue;
25 extern struct cat66121_hdmi_pdata *cat66121_hdmi;
27 extern int cat66121_hdmi_sys_init(void);
28 extern void cat66121_hdmi_interrupt(void);
29 extern int cat66121_hdmi_sys_detect_hpd(void);
30 extern int cat66121_hdmi_sys_insert(void);
31 extern int cat66121_hdmi_sys_remove(void);
32 extern int cat66121_hdmi_sys_read_edid(int block, unsigned char *buff);
33 extern int cat66121_hdmi_sys_config_video(struct hdmi_video_para *vpara);
34 extern int cat66121_hdmi_sys_config_audio(struct hdmi_audio *audio);
35 extern void cat66121_hdmi_sys_enalbe_output(int enable);
36 extern int cat66121_hdmi_register_hdcp_callbacks(void (*hdcp_cb)(void),
37 void (*hdcp_irq_cb)(int status),
38 int (*hdcp_power_on_cb)(void),
39 void (*hdcp_power_off_cb)(void));