jpeg_cmdq.c 1.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. #include <cmdq_core.h>
  2. #include <cmdq_reg.h>
  3. #if defined(CONFIG_MTK_LEGACY)
  4. #include <mach/mt_clkmgr.h>
  5. #endif
  6. #include "jpeg_drv_reg.h"
  7. #include "jpeg_cmdq.h"
  8. int32_t cmdqJpegClockOn(uint64_t engineFlag)
  9. {
  10. #if 0
  11. if (engineFlag & (1 << CMDQ_ENG_JPEG_DEC))
  12. enable_clock(MT65XX_PDN_MM_JPEG_DEC, "JPEG");
  13. if (engineFlag & (1 << CMDQ_ENG_JPEG_ENC_PASS1))
  14. enable_clock(MT65XX_PDN_MM_JPEG_DEC, "JPEG");
  15. if (engineFlag & (1 << CMDQ_ENG_JPEG_ENC_PASS2))
  16. enable_clock(MT65XX_PDN_MM_JPEG_DEC, "JPEG");
  17. #endif
  18. return 0;
  19. }
  20. int32_t cmdqJpegDumpInfo(uint64_t engineFlag, int level)
  21. {
  22. return 0;
  23. }
  24. int32_t cmdqJpegResetEng(uint64_t engineFlag)
  25. {
  26. if (engineFlag & (1 << CMDQ_ENG_JPEG_DEC)) {
  27. IMG_REG_WRITE(0x0000FFFF, REG_ADDR_JPGDEC_INTERRUPT_STATUS); /* ack decoder */
  28. IMG_REG_WRITE(0x00, REG_ADDR_JPGDEC_RESET); /* REG_JPGDEC_RESET = 0x00; */
  29. IMG_REG_WRITE(0x01, REG_ADDR_JPGDEC_RESET); /* REG_JPGDEC_RESET = 0x01; */
  30. IMG_REG_WRITE(0x00, REG_ADDR_JPGDEC_RESET); /* REG_JPGDEC_RESET = 0x00; */
  31. IMG_REG_WRITE(0x10, REG_ADDR_JPGDEC_RESET); /* REG_JPGDEC_RESET = 0x10; */
  32. }
  33. if (engineFlag & (1 << CMDQ_ENG_JPEG_ENC)) {
  34. IMG_REG_WRITE(0, REG_ADDR_JPEG_ENC_RSTB);
  35. IMG_REG_WRITE(1, REG_ADDR_JPEG_ENC_RSTB);
  36. }
  37. if (engineFlag & (1 << CMDQ_ENG_JPEG_REMDC)) {
  38. IMG_REG_WRITE(0, REG_ADDR_JPEG_ENC_PASS2_RSTB);
  39. IMG_REG_WRITE(1, REG_ADDR_JPEG_ENC_PASS2_RSTB);
  40. }
  41. return 0;
  42. }
  43. int32_t cmdqJpegClockOff(uint64_t engineFlag)
  44. {
  45. #if 0
  46. if (engineFlag & (1 << CMDQ_ENG_JPEG_DEC))
  47. disable_clock(MT65XX_PDN_MM_JPEG_DEC, "JPEG");
  48. if (engineFlag & (1 << CMDQ_ENG_JPEG_ENC_PASS1))
  49. disable_clock(MT65XX_PDN_MM_JPEG_DEC, "JPEG");
  50. if (engineFlag & (1 << CMDQ_ENG_JPEG_ENC_PASS2))
  51. disable_clock(MT65XX_PDN_MM_JPEG_DEC, "JPEG");
  52. #endif
  53. return 0;
  54. }