ddp_ovl.h 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162
  1. #ifndef _DDP_OVL_H_
  2. #define _DDP_OVL_H_
  3. #include "ddp_hal.h"
  4. #include "DpDataType.h"
  5. #include "ddp_info.h"
  6. #define OVL_MAX_WIDTH (4095)
  7. #define OVL_MAX_HEIGHT (4095)
  8. #define OVL_LAYER_NUM (4)
  9. #define OVL_LAYER_NUM_PER_OVL 4
  10. typedef enum {
  11. DDP_OVL1_STATUS_IDLE = 0,
  12. DDP_OVL1_STATUS_PRIMARY = 1, /* used for primary 8 layer blending */
  13. DDP_OVL1_STATUS_SUB = 2, /* used for sub 4 layer bleding */
  14. DDP_OVL1_STATUS_SUB_REQUESTING = 3, /* sub request to use OVL1 */
  15. DDP_OVL1_STATUS_PRIMARY_RELEASED = 4,
  16. DDP_OVL1_STATUS_PRIMARY_RELEASING = 5,
  17. DDP_OVL1_STATUS_PRIMARY_DISABLE = 6
  18. } DISP_OVL1_STATUS;
  19. /* start overlay module */
  20. int ovl_start(DISP_MODULE_ENUM module, void *handle);
  21. /* stop overlay module */
  22. int ovl_stop(DISP_MODULE_ENUM module, void *handle);
  23. /* reset overlay module */
  24. int ovl_reset(DISP_MODULE_ENUM module, void *handle);
  25. /* set region of interest */
  26. int ovl_roi(DISP_MODULE_ENUM module, unsigned int bgW, unsigned int bgH, /* region size */
  27. unsigned int bgColor, /* border color */
  28. void *handle);
  29. /* switch layer on/off */
  30. int ovl_layer_switch(DISP_MODULE_ENUM module, unsigned layer, unsigned int en, void *handle);
  31. /* get ovl input address */
  32. void ovl_get_address(DISP_MODULE_ENUM module, unsigned long *add);
  33. int ovl_3d_config(DISP_MODULE_ENUM module,
  34. unsigned int layer_id,
  35. unsigned int en_3d, unsigned int landscape, unsigned int r_first, void *handle);
  36. void ovl_dump_analysis(DISP_MODULE_ENUM module);
  37. void ovl_dump_reg(DISP_MODULE_ENUM module);
  38. void ovl_get_info(int idx, void *data);
  39. void ovl_reset_by_cmdq(void *handle, DISP_MODULE_ENUM module);
  40. DISP_OVL1_STATUS ovl_get_status(void);
  41. void ovl_set_status(DISP_OVL1_STATUS status);
  42. unsigned int ddp_ovl_get_cur_addr(bool rdma_mode, int layerid);
  43. struct DDP_MODULE_DRIVER;
  44. #endif