mtk_ovl.h 1.5 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253545556575859606162636465666768697071
  1. #ifndef __MTK_OVL_H__
  2. #define __MTK_OVL_H__
  3. #include "primary_display.h"
  4. typedef struct {
  5. unsigned int layer;
  6. unsigned int layer_en;
  7. unsigned int buffer_source;
  8. unsigned int fmt;
  9. unsigned long addr;
  10. unsigned long addr_sub_u;
  11. unsigned long addr_sub_v;
  12. unsigned long vaddr;
  13. unsigned int src_x;
  14. unsigned int src_y;
  15. unsigned int src_w;
  16. unsigned int src_h;
  17. unsigned int src_pitch;
  18. unsigned int dst_x;
  19. unsigned int dst_y;
  20. unsigned int dst_w;
  21. unsigned int dst_h; /* clip region */
  22. unsigned int keyEn;
  23. unsigned int key;
  24. unsigned int aen;
  25. unsigned char alpha;
  26. unsigned int sur_aen;
  27. unsigned int src_alpha;
  28. unsigned int dst_alpha;
  29. unsigned int isTdshp;
  30. unsigned int isDirty;
  31. unsigned int buff_idx;
  32. unsigned int identity;
  33. unsigned int connected_type;
  34. unsigned int security;
  35. unsigned int dirty;
  36. } ovl2mem_in_config;
  37. typedef struct {
  38. unsigned int fmt;
  39. unsigned long addr;
  40. unsigned long addr_sub_u;
  41. unsigned long addr_sub_v;
  42. unsigned long vaddr;
  43. unsigned int x;
  44. unsigned int y;
  45. unsigned int w;
  46. unsigned int h;
  47. unsigned int pitch;
  48. unsigned int pitchUV;
  49. unsigned int buff_idx;
  50. unsigned int security;
  51. unsigned int dirty;
  52. int mode;
  53. } ovl2mem_io_config;
  54. void ovl2mem_setlayernum(int layer_num);
  55. int ovl2mem_get_info(void *info);
  56. int get_ovl2mem_ticket(void);
  57. int ovl2mem_init(unsigned int session);
  58. int ovl2mem_input_config(ovl2mem_in_config *input);
  59. int ovl2mem_output_config(disp_mem_output_config *out);
  60. int ovl2mem_trigger(int blocking, void *callback, unsigned int userdata);
  61. void ovl2mem_wait_done(void);
  62. int ovl2mem_deinit(void);
  63. #endif