mtk_apusys.h 1.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051
  1. /*
  2. * Copyright (c) 2021, MediaTek Inc. All rights reserved.
  3. *
  4. * SPDX-License-Identifier: BSD-3-Clause
  5. */
  6. #ifndef MTK_APUSYS_H
  7. #define MTK_APUSYS_H
  8. #include <stdint.h>
  9. /* setup the SMC command ops */
  10. #define MTK_SIP_APU_START_MCU (0x00U)
  11. #define MTK_SIP_APU_STOP_MCU (0x01U)
  12. #define MTK_SIP_APUPWR_BUS_PROT_CG_ON (0x02U)
  13. #define MTK_SIP_APUPWR_BULK_PLL (0x03U)
  14. #define MTK_SIP_APUPWR_ACC_INIT_ALL (0x04U)
  15. #define MTK_SIP_APUPWR_ACC_TOP (0x05U)
  16. /* AO Register */
  17. #define AO_MD32_PRE_DEFINE (APUSYS_APU_S_S_4_BASE + 0x00)
  18. #define AO_MD32_BOOT_CTRL (APUSYS_APU_S_S_4_BASE + 0x04)
  19. #define AO_MD32_SYS_CTRL (APUSYS_APU_S_S_4_BASE + 0x08)
  20. #define AO_SEC_FW (APUSYS_APU_S_S_4_BASE + 0x10)
  21. #define AO_SEC_USR_FW (APUSYS_APU_S_S_4_BASE + 0x14)
  22. #define PRE_DEFINE_CACHE_TCM (0x3U)
  23. #define PRE_DEFINE_CACHE (0x2U)
  24. #define PRE_DEFINE_SHIFT_0G (0U)
  25. #define PRE_DEFINE_SHIFT_1G (2U)
  26. #define PRE_DEFINE_SHIFT_2G (4U)
  27. #define PRE_DEFINE_SHIFT_3G (6U)
  28. #define SEC_FW_NON_SECURE (1U)
  29. #define SEC_FW_SHIFT_NS (4U)
  30. #define SEC_FW_DOMAIN_SHIFT (0U)
  31. #define SEC_USR_FW_NON_SECURE (1U)
  32. #define SEC_USR_FW_SHIFT_NS (4U)
  33. #define SEC_USR_FW_DOMAIN_SHIFT (0U)
  34. #define SYS_CTRL_RUN (0U)
  35. #define SYS_CTRL_STALL (1U)
  36. /* Reviser Register */
  37. #define REVISER_SECUREFW_CTXT (APUSYS_SCTRL_REVISER_BASE + 0x100)
  38. #define REVISER_USDRFW_CTXT (APUSYS_SCTRL_REVISER_BASE + 0x104)
  39. int32_t apusys_kernel_ctrl(uint64_t x1, uint64_t x2, uint64_t x3, uint64_t x4,
  40. uint32_t *ret1);
  41. #endif /* MTK_APUSYS_H */