hdmirx.h 3.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128
  1. /*******************************************************************
  2. * Copyright C 2010 by Amlogic, Inc. All Rights Reserved.
  3. * File name: hdmirx.h
  4. * Description: IO function, structure, enum, used in TVIN AFE sub-module processing
  5. *******************************************************************/
  6. #ifndef _TVHDMI_H
  7. #define _TVHDMI_H
  8. #include <linux/tvin/tvin.h>
  9. #include "tvin_global.h"
  10. #include "tvin_format_table.h"
  11. #define HDMIRX_VER "Ref.2011Dec08a"
  12. #define HDMI_STATE_CHECK_FREQ 20
  13. /******************************Definitions************************************/
  14. #define ABS(x) ( (x)<0 ? -(x) : (x))
  15. // ***************************************************************************
  16. // *** enum definitions *********************************************
  17. // ***************************************************************************
  18. typedef enum hdmirx_src_type_e {
  19. TVHDMI_SRC_TYPE_NULL = 0,
  20. } hdmirx_src_type_t;
  21. // ***************************************************************************
  22. // *** structure definitions *********************************************
  23. // ***************************************************************************
  24. typedef enum HDMI_Video_Type_ {
  25. /* add new value at the end, do not insert new value in the middle to avoid wrong VIC value !!! */
  26. HDMI_Unkown = 0 ,
  27. HDMI_640x480p60 = 1 ,
  28. HDMI_480p60,
  29. HDMI_480p60_16x9,
  30. HDMI_720p60,
  31. HDMI_1080i60,
  32. HDMI_480i60,
  33. HDMI_480i60_16x9,
  34. HDMI_1440x240p60, //8
  35. HDMI_1440x240p60_16x9, //9
  36. HDMI_2880x480i60, //10
  37. HDMI_2880x480i60_16x9, //11
  38. HDMI_2880x240p60, //12
  39. HDMI_2880x240p60_16x9, //13
  40. HDMI_1440x480p60 = 14 ,
  41. HDMI_1440x480p60_16x9 = 15 ,
  42. HDMI_1080p60 = 16,
  43. HDMI_576p50,
  44. HDMI_576p50_16x9,
  45. HDMI_720p50,
  46. HDMI_1080i50,
  47. HDMI_576i50,
  48. HDMI_576i50_16x9,
  49. HDMI_1440x288p50, //23
  50. HDMI_1440x288p50_16x9, //24
  51. HDMI_2880x576i50, //25
  52. HDMI_2880x576i50_16x9, //26
  53. HDMI_2880x288p50, //27
  54. HDMI_2880x288p50_16x9, //28
  55. HDMI_1440x576p50, //29
  56. HDMI_1440x576p50_16x9, //30
  57. HDMI_1080p50 = 31,
  58. HDMI_1080p24,
  59. HDMI_1080p25,
  60. HDMI_1080p30,
  61. HDMI_2880x480p60, //35
  62. HDMI_2880x480p60_16x9, //36
  63. HDMI_2880x576p50, //37
  64. HDMI_2880x576p50_16x9, //38
  65. HDMI_1080i50_1250, //39
  66. HDMI_1080I120=46,
  67. HDMI_720p120,
  68. HDMI_1080p120=63,
  69. HDMI_800_600=65, //65
  70. HDMI_1024_768, //66
  71. HDMI_720_400, // 67
  72. HDMI_1280_768, //68
  73. HDMI_1280_800, //69
  74. HDMI_1280_960, //70
  75. HDMI_1280_1024, //71
  76. HDMI_1360_768, //72
  77. HDMI_1366_768, //73
  78. HDMI_1600_900, //74
  79. HDMI_1600_1200, //75
  80. HDMI_1920_1200, //76
  81. } HDMI_Video_Codes_t ;
  82. extern enum tvin_sig_fmt_e hdmirx_hw_get_fmt(void);
  83. extern void hdmirx_hw_monitor(void);
  84. extern bool hdmirx_hw_is_nosig(void);
  85. extern bool hdmirx_hw_pll_lock(void);
  86. extern void hdmirx_reset(void);
  87. extern void hdmirx_hw_init(tvin_port_t port);
  88. extern void hdmirx_hw_uninit(void);
  89. extern unsigned int hdmirx_get_cur_vic(void);
  90. extern void hdmirx_hw_enable(void);
  91. extern void hdmirx_hw_disable(unsigned char flag);
  92. extern void hdmirx_fill_edid_buf(const char* buf, int size);
  93. extern int hdmirx_read_edid_buf(char* buf, int max_size);
  94. extern int hdmirx_debug(const char* buf, int size);
  95. extern int hdmirx_hw_get_color_fmt(void);
  96. extern int hdmirx_hw_get_3d_structure(unsigned char* _3d_structure, unsigned char* _3d_ext_data);
  97. extern int hdmirx_hw_get_pixel_repeat(void);
  98. extern bool hdmirx_hw_check_frame_skip(void);
  99. extern int hdmirx_print(const char *fmt, ...);
  100. extern int hdmirx_log_flag;
  101. extern int hdmirx_hw_dump_reg(unsigned char* buf, int size);
  102. #endif // _TVHDMI_H