mtkfb_info.h 2.2 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485
  1. #ifndef __MTKFB_INFO_H__
  2. #define __MTKFB_INFO_H__
  3. #ifdef __cplusplus
  4. extern "C" {
  5. #endif
  6. typedef enum {
  7. DISPIF_TYPE_DBI = 0,
  8. DISPIF_TYPE_DPI,
  9. DISPIF_TYPE_DSI,
  10. DISPIF_TYPE_DPI0,
  11. DISPIF_TYPE_DPI1,
  12. DISPIF_TYPE_DSI0,
  13. DISPIF_TYPE_DSI1,
  14. HDMI = 7,
  15. HDMI_SMARTBOOK,
  16. MHL,
  17. DISPIF_TYPE_EPD
  18. } MTKFB_DISPIF_TYPE;
  19. typedef enum {
  20. MTKFB_DISPIF_PRIMARY_LCD = 0,
  21. MTKFB_DISPIF_HDMI,
  22. MTKFB_DISPIF_EPD,
  23. MTKFB_MAX_DISPLAY_COUNT
  24. } MTKFB_DISPIF_DEVICE_TYPE;
  25. typedef enum {
  26. DISPIF_FORMAT_RGB565 = 0,
  27. DISPIF_FORMAT_RGB666,
  28. DISPIF_FORMAT_RGB888
  29. } MTKFB_DISPIF_FORMAT;
  30. typedef enum {
  31. DISPIF_MODE_VIDEO = 0,
  32. DISPIF_MODE_COMMAND
  33. } MTKFB_DISPIF_MODE;
  34. typedef struct mtk_dispif_info {
  35. unsigned int display_id;
  36. unsigned int isHwVsyncAvailable;
  37. MTKFB_DISPIF_TYPE displayType;
  38. unsigned int displayWidth;
  39. unsigned int displayHeight;
  40. unsigned int displayFormat;
  41. MTKFB_DISPIF_MODE displayMode;
  42. unsigned int vsyncFPS;
  43. unsigned int physicalWidth;
  44. unsigned int physicalHeight;
  45. unsigned int isConnected;
  46. /* this value is for DFO Multi-Resolution feature, which stores the original LCM Wdith */
  47. unsigned int lcmOriginalWidth;
  48. /* this value is for DFO Multi-Resolution feature, which stores the original LCM Height */
  49. unsigned int lcmOriginalHeight;
  50. } mtk_dispif_info_t;
  51. #define MAKE_MTK_FB_FORMAT_ID(id, bpp) (((id) << 8) | (bpp))
  52. typedef enum {
  53. MTK_FB_FORMAT_UNKNOWN = 0,
  54. MTK_FB_FORMAT_RGB565 = MAKE_MTK_FB_FORMAT_ID(1, 2),
  55. MTK_FB_FORMAT_RGB888 = MAKE_MTK_FB_FORMAT_ID(2, 3),
  56. MTK_FB_FORMAT_BGR888 = MAKE_MTK_FB_FORMAT_ID(3, 3),
  57. MTK_FB_FORMAT_ARGB8888 = MAKE_MTK_FB_FORMAT_ID(4, 4),
  58. MTK_FB_FORMAT_ABGR8888 = MAKE_MTK_FB_FORMAT_ID(5, 4),
  59. MTK_FB_FORMAT_YUV422 = MAKE_MTK_FB_FORMAT_ID(6, 2),
  60. MTK_FB_FORMAT_XRGB8888 = MAKE_MTK_FB_FORMAT_ID(7, 4),
  61. MTK_FB_FORMAT_XBGR8888 = MAKE_MTK_FB_FORMAT_ID(8, 4),
  62. MTK_FB_FORMAT_UYVY = MAKE_MTK_FB_FORMAT_ID(9, 2),
  63. MTK_FB_FORMAT_YUV420_P = MAKE_MTK_FB_FORMAT_ID(10, 2),
  64. MTK_FB_FORMAT_YUY2 = MAKE_MTK_FB_FORMAT_ID(11, 2),
  65. MTK_FB_FORMAT_BPP_MASK = 0xFF,
  66. } MTK_FB_FORMAT;
  67. #define GET_MTK_FB_FORMAT_BPP(f) ((f) & MTK_FB_FORMAT_BPP_MASK)
  68. #ifdef __cplusplus
  69. }
  70. #endif
  71. #endif /* __DISP_DRV_H__ */