ddp_irq.h 1.1 KB

12345678910111213141516171819202122232425262728293031323334
  1. #ifndef _H_DDP_IRQ_H
  2. #define _H_DDP_IRQ_H
  3. #include "ddp_info.h"
  4. #include "linux/irqreturn.h"
  5. typedef void (*DDP_IRQ_CALLBACK)(DISP_MODULE_ENUM module, unsigned int reg_value);
  6. int disp_register_module_irq_callback(DISP_MODULE_ENUM module, DDP_IRQ_CALLBACK cb);
  7. int disp_unregister_module_irq_callback(DISP_MODULE_ENUM module, DDP_IRQ_CALLBACK cb);
  8. int disp_register_irq_callback(DDP_IRQ_CALLBACK cb);
  9. int disp_unregister_irq_callback(DDP_IRQ_CALLBACK cb);
  10. void disp_register_irq(unsigned int irq_num, char *device_name);
  11. int disp_init_irq(void);
  12. void disp_dump_emi_status(void);
  13. extern unsigned int ovl_complete_irq_cnt[2];
  14. extern unsigned long long rdma_start_time[2];
  15. extern unsigned long long rdma_end_time[2];
  16. extern unsigned int rdma_start_irq_cnt[2];
  17. extern unsigned int rdma_done_irq_cnt[2];
  18. extern unsigned int rdma_underflow_irq_cnt[2];
  19. extern unsigned int rdma_targetline_irq_cnt[2];
  20. extern unsigned int mutex_start_irq_cnt;
  21. extern unsigned int mutex_done_irq_cnt;
  22. extern atomic_t ESDCheck_byCPU;
  23. irqreturn_t disp_irq_handler(int irq, void *dev_id);
  24. #endif