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