ddp_mmp.h 3.6 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131
  1. #ifndef __H_DDP_MMP__
  2. #define __H_DDP_MMP__
  3. #include "mmprofile.h"
  4. #include "ddp_info.h"
  5. #include "ddp_ovl.h"
  6. #include "mmprofile_internal.h"
  7. typedef struct {
  8. MMP_Event DDP;
  9. MMP_Event layerParent;
  10. MMP_Event layer[4];
  11. MMP_Event ovl1_layer[4];
  12. MMP_Event layer_dump_parent;
  13. MMP_Event layer_dump[4];
  14. MMP_Event ovl1layer_dump[4];
  15. MMP_Event wdma_dump[2];
  16. MMP_Event rdma_dump[2];
  17. MMP_Event DDP_IRQ;
  18. MMP_Event OVL_IRQ_Parent;
  19. MMP_Event OVL_IRQ[2];
  20. MMP_Event WDMA_IRQ_Parent;
  21. MMP_Event WDMA_IRQ[2];
  22. MMP_Event RDMA_IRQ_Parent;
  23. MMP_Event RDMA_IRQ[3];
  24. MMP_Event SCREEN_UPDATE[3];
  25. MMP_Event DSI_IRQ_Parent;
  26. MMP_Event DSI_IRQ[2];
  27. MMP_Event MutexParent;
  28. MMP_Event MUTEX_IRQ[5];
  29. MMP_Event primary_Parent;
  30. MMP_Event primary_trigger;
  31. MMP_Event primary_suspend;
  32. MMP_Event primary_resume;
  33. MMP_Event primary_config;
  34. MMP_Event primary_rdma_config;
  35. MMP_Event primary_wdma_config;
  36. MMP_Event primary_set_dirty;
  37. MMP_Event primary_cmdq_flush;
  38. MMP_Event primary_cmdq_done;
  39. MMP_Event primary_display_cmd;
  40. MMP_Event primary_cache_sync;
  41. MMP_Event primary_display_aalod_trigger;
  42. MMP_Event primary_wakeup;
  43. MMP_Event primary_switch_mode;
  44. MMP_Event primary_seq_insert;
  45. MMP_Event primary_seq_config;
  46. MMP_Event primary_seq_trigger;
  47. MMP_Event primary_seq_rdma_irq;
  48. MMP_Event primary_seq_release;
  49. MMP_Event primary_ovl_fence_release;
  50. MMP_Event primary_wdma_fence_release;
  51. MMP_Event present_fence_release;
  52. MMP_Event present_fence_get;
  53. MMP_Event present_fence_set;
  54. MMP_Event idlemgr;
  55. MMP_Event primary_error;
  56. MMP_Event tui;
  57. MMP_Event ovl_trigger;
  58. MMP_Event interface_trigger;
  59. MMP_Event Extd_Parent;
  60. MMP_Event Extd_layerParent;
  61. MMP_Event Extd_layer[4];
  62. MMP_Event Extd_layer_dump_parent;
  63. MMP_Event Extd_State;
  64. MMP_Event Extd_DevInfo;
  65. MMP_Event Extd_ErrorInfo;
  66. MMP_Event Extd_Mutex;
  67. MMP_Event Extd_ImgDump;
  68. MMP_Event Extd_IrqStatus;
  69. MMP_Event Extd_UsedBuff;
  70. MMP_Event Extd_trigger;
  71. MMP_Event Extd_config;
  72. MMP_Event Extd_set_dirty;
  73. MMP_Event Extd_cmdq_flush;
  74. MMP_Event Extd_cmdq_done;
  75. MMP_Event dprec_cpu_write_reg;
  76. MMP_Event primary_sw_mutex;
  77. MMP_Event primary_set_bl;
  78. MMP_Event ESD_Parent;
  79. MMP_Event esd_check_t;
  80. MMP_Event esd_recovery_t;
  81. MMP_Event esd_extte;
  82. MMP_Event esd_rdlcm;
  83. MMP_Event esd_vdo_eint;
  84. MMP_Event session_Parent;
  85. MMP_Event session_prepare;
  86. MMP_Event session_set_input;
  87. MMP_Event session_trigger;
  88. MMP_Event session_find_idx;
  89. MMP_Event session_release;
  90. MMP_Event session_wait_vsync;
  91. MMP_Event MonitorParent;
  92. MMP_Event trigger_delay;
  93. MMP_Event release_delay;
  94. MMP_Event vsync_count;
  95. MMP_Event dal_printf;
  96. MMP_Event dal_clean;
  97. MMP_Event cg_mode;
  98. MMP_Event power_down_mode;
  99. MMP_Event sodi_disable;
  100. MMP_Event sodi_enable;
  101. MMP_Event ovl_enable;
  102. MMP_Event ovl_disable;
  103. MMP_Event cascade_enable;
  104. MMP_Event cascade_disable;
  105. MMP_Event ddp_abnormal_irq;
  106. MMP_Event ovl1_status;
  107. MMP_Event dpmgr_wait_event_timeout;
  108. MMP_Event cmdq_rebuild;
  109. MMP_Event dsi_te;
  110. } DDP_MMP_Events_t;
  111. DDP_MMP_Events_t *ddp_mmp_get_events(void);
  112. void init_ddp_mmp_events(void);
  113. void ddp_mmp_init(void);
  114. void ddp_mmp_ovl_layer(OVL_CONFIG_STRUCT *pLayer, unsigned int down_sample_x,
  115. unsigned int down_sample_y,
  116. unsigned int session /*1:primary, 2:external, 3:memory */);
  117. void ddp_mmp_wdma_layer(WDMA_CONFIG_STRUCT *wdma_layer, unsigned int wdma_num,
  118. unsigned int down_sample_x, unsigned int down_sample_y);
  119. void ddp_mmp_rdma_layer(RDMA_CONFIG_STRUCT *rdma_layer, unsigned int rdma_num,
  120. unsigned int down_sample_x, unsigned int down_sample_y);
  121. /* TODO: FIXME */
  122. #ifdef DEFAULT_MMP_ENABLE
  123. extern void MMProfileEnable(int enable);
  124. extern void MMProfileStart(int start);
  125. #endif
  126. #endif