platform.mk 5.5 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103
  1. #
  2. # Copyright (c) 2020-2023, MediaTek Inc. All rights reserved.
  3. #
  4. # SPDX-License-Identifier: BSD-3-Clause
  5. #
  6. MTK_PLAT := plat/mediatek
  7. MTK_PLAT_SOC := ${MTK_PLAT}/${PLAT}
  8. PLAT_INCLUDES := -I${MTK_PLAT}/common/ \
  9. -I${MTK_PLAT}/drivers/cirq/ \
  10. -I${MTK_PLAT}/drivers/gic600/ \
  11. -I${MTK_PLAT}/drivers/gpio/ \
  12. -I${MTK_PLAT}/drivers/pmic/ \
  13. -I${MTK_PLAT}/drivers/pmic_wrap/ \
  14. -I${MTK_PLAT}/drivers/rtc/ \
  15. -I${MTK_PLAT}/drivers/timer/ \
  16. -I${MTK_PLAT}/drivers/uart/ \
  17. -I${MTK_PLAT}/include/ \
  18. -I${MTK_PLAT}/include/lpm/ \
  19. -I${MTK_PLAT_SOC}/include/ \
  20. -I${MTK_PLAT_SOC}/drivers/ \
  21. -I${MTK_PLAT_SOC}/drivers/apusys/ \
  22. -I${MTK_PLAT_SOC}/drivers/dcm \
  23. -I${MTK_PLAT_SOC}/drivers/devapc \
  24. -I${MTK_PLAT_SOC}/drivers/dfd \
  25. -I${MTK_PLAT_SOC}/drivers/emi_mpu/ \
  26. -I${MTK_PLAT_SOC}/drivers/gpio/ \
  27. -I${MTK_PLAT_SOC}/drivers/mcdi/ \
  28. -I${MTK_PLAT_SOC}/drivers/pmic/ \
  29. -I${MTK_PLAT_SOC}/drivers/ptp3/ \
  30. -I${MTK_PLAT_SOC}/drivers/spmc/
  31. GICV3_SUPPORT_GIC600 := 1
  32. include drivers/arm/gic/v3/gicv3.mk
  33. include lib/xlat_tables_v2/xlat_tables.mk
  34. PLAT_BL_COMMON_SOURCES := ${GICV3_SOURCES} \
  35. ${XLAT_TABLES_LIB_SRCS} \
  36. plat/common/aarch64/crash_console_helpers.S \
  37. plat/common/plat_psci_common.c
  38. BL31_SOURCES += common/desc_image_load.c \
  39. drivers/delay_timer/delay_timer.c \
  40. drivers/delay_timer/generic_delay_timer.c \
  41. drivers/ti/uart/aarch64/16550_console.S \
  42. drivers/gpio/gpio.c \
  43. lib/bl_aux_params/bl_aux_params.c \
  44. lib/cpus/aarch64/cortex_a55.S \
  45. lib/cpus/aarch64/cortex_a76.S \
  46. plat/common/plat_gicv3.c \
  47. ${MTK_PLAT}/common/mtk_plat_common.c \
  48. ${MTK_PLAT}/common/mtk_sip_svc.c \
  49. ${MTK_PLAT}/common/params_setup.c \
  50. ${MTK_PLAT}/common/lpm/mt_lp_rm.c \
  51. ${MTK_PLAT}/drivers/cirq/mt_cirq.c \
  52. ${MTK_PLAT}/drivers/gic600/mt_gic_v3.c \
  53. ${MTK_PLAT}/drivers/gpio/mtgpio_common.c \
  54. ${MTK_PLAT}/drivers/pmic/pmic.c \
  55. ${MTK_PLAT}/drivers/pmic_wrap/pmic_wrap_init_v2.c \
  56. ${MTK_PLAT}/drivers/rtc/rtc_common.c \
  57. ${MTK_PLAT}/drivers/rtc/rtc_mt6359p.c \
  58. ${MTK_PLAT}/drivers/timer/mt_timer.c \
  59. ${MTK_PLAT}/drivers/uart/uart.c \
  60. ${MTK_PLAT_SOC}/aarch64/platform_common.c \
  61. ${MTK_PLAT_SOC}/aarch64/plat_helpers.S \
  62. ${MTK_PLAT_SOC}/bl31_plat_setup.c \
  63. ${MTK_PLAT_SOC}/plat_pm.c \
  64. ${MTK_PLAT_SOC}/plat_topology.c \
  65. ${MTK_PLAT_SOC}/plat_sip_calls.c \
  66. ${MTK_PLAT_SOC}/drivers/apusys/mtk_apusys.c \
  67. ${MTK_PLAT_SOC}/drivers/apusys/mtk_apusys_apc.c \
  68. ${MTK_PLAT_SOC}/drivers/dcm/mtk_dcm.c \
  69. ${MTK_PLAT_SOC}/drivers/dcm/mtk_dcm_utils.c \
  70. ${MTK_PLAT_SOC}/drivers/devapc/devapc.c \
  71. ${MTK_PLAT_SOC}/drivers/dfd/plat_dfd.c \
  72. ${MTK_PLAT_SOC}/drivers/emi_mpu/emi_mpu.c \
  73. ${MTK_PLAT_SOC}/drivers/gpio/mtgpio.c \
  74. ${MTK_PLAT_SOC}/drivers/mcdi/mt_cpu_pm.c \
  75. ${MTK_PLAT_SOC}/drivers/mcdi/mt_cpu_pm_cpc.c \
  76. ${MTK_PLAT_SOC}/drivers/mcdi/mt_lp_irqremain.c \
  77. ${MTK_PLAT_SOC}/drivers/mcdi/mt_mcdi.c \
  78. ${MTK_PLAT_SOC}/drivers/ptp3/mtk_ptp3_main.c \
  79. ${MTK_PLAT_SOC}/drivers/spmc/mtspmc.c
  80. # Build SPM drivers
  81. include ${MTK_PLAT_SOC}/drivers/spm/build.mk
  82. # Configs for A76 and A55
  83. HW_ASSISTED_COHERENCY := 1
  84. USE_COHERENT_MEM := 0
  85. CTX_INCLUDE_AARCH32_REGS := 0
  86. # indicate the reset vector address can be programmed
  87. PROGRAMMABLE_RESET_ADDRESS := 1
  88. COLD_BOOT_SINGLE_CPU := 1
  89. MACH_MT8192 := 1
  90. $(eval $(call add_define,MACH_MT8192))
  91. include lib/coreboot/coreboot.mk