From cc76896d9e416b15548b2d6bf068e5d3f9b4064a Mon Sep 17 00:00:00 2001 From: Rex-BC Chen Date: Fri, 8 Jul 2022 14:48:56 +0800 Subject: [PATCH] feat(mediatek): move mtk_cirq.c drivers to cirq folder To use cirq drivers more easier, we place mtk_cirq.c and mtk_cirq.h to common/drivers/cirq. We also rename mtk_cirq.c/h to mt_cirq.c/h for consistency with other driver folders. TEST=build pass for mt8192/mt8195/mt8186 BUG=b:236331724 Signed-off-by: Bo-Chen Chen Change-Id: I71bc442f00b16fb4031260937982c0496fcaaea0 --- .../{common/mtk_cirq.c => drivers/cirq/mt_cirq.c} | 4 ++-- .../{common/mtk_cirq.h => drivers/cirq/mt_cirq.h} | 2 +- plat/mediatek/drivers/cirq/rules.mk | 14 ++++++++++++++ plat/mediatek/include/mt8188/platform_def.h | 9 +++++++++ .../mediatek/mt8186/drivers/mcdi/mt_lp_irqremain.c | 2 +- .../drivers/spm/constraints/mt_spm_rc_bus26m.c | 2 +- plat/mediatek/mt8186/platform.mk | 3 ++- plat/mediatek/mt8188/platform.mk | 1 + .../mediatek/mt8192/drivers/mcdi/mt_lp_irqremain.c | 6 +++--- .../drivers/spm/constraints/mt_spm_rc_bus26m.c | 4 ++-- plat/mediatek/mt8192/platform.mk | 3 ++- .../mediatek/mt8195/drivers/mcdi/mt_lp_irqremain.c | 7 +++---- .../drivers/spm/constraints/mt_spm_rc_bus26m.c | 4 ++-- plat/mediatek/mt8195/platform.mk | 3 ++- 14 files changed, 45 insertions(+), 19 deletions(-) rename plat/mediatek/{common/mtk_cirq.c => drivers/cirq/mt_cirq.c} (99%) rename plat/mediatek/{common/mtk_cirq.h => drivers/cirq/mt_cirq.h} (97%) create mode 100644 plat/mediatek/drivers/cirq/rules.mk diff --git a/plat/mediatek/common/mtk_cirq.c b/plat/mediatek/drivers/cirq/mt_cirq.c similarity index 99% rename from plat/mediatek/common/mtk_cirq.c rename to plat/mediatek/drivers/cirq/mt_cirq.c index 9cf714449..60534a2d2 100644 --- a/plat/mediatek/common/mtk_cirq.c +++ b/plat/mediatek/drivers/cirq/mt_cirq.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, MediaTek Inc. All rights reserved. + * Copyright (c) 2020-2022, MediaTek Inc. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -9,8 +9,8 @@ #include #include +#include #include -#include static struct cirq_events cirq_all_events = { .spi_start = CIRQ_SPI_START, diff --git a/plat/mediatek/common/mtk_cirq.h b/plat/mediatek/drivers/cirq/mt_cirq.h similarity index 97% rename from plat/mediatek/common/mtk_cirq.h rename to plat/mediatek/drivers/cirq/mt_cirq.h index 6e63bb834..cb9629568 100644 --- a/plat/mediatek/common/mtk_cirq.h +++ b/plat/mediatek/drivers/cirq/mt_cirq.h @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, MediaTek Inc. All rights reserved. + * Copyright (c) 2020-2022, MediaTek Inc. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ diff --git a/plat/mediatek/drivers/cirq/rules.mk b/plat/mediatek/drivers/cirq/rules.mk new file mode 100644 index 000000000..710eae0f1 --- /dev/null +++ b/plat/mediatek/drivers/cirq/rules.mk @@ -0,0 +1,14 @@ +# +# Copyright (c) 2022, MediaTek Inc. All rights reserved. +# +# SPDX-License-Identifier: BSD-3-Clause +# + +LOCAL_DIR := $(call GET_LOCAL_DIR) + +MODULE := cirq +LOCAL_SRCS-y := $(LOCAL_DIR)/mt_cirq.c + +PLAT_INCLUDES += -I${LOCAL_DIR} + +$(eval $(call MAKE_MODULE,$(MODULE),$(LOCAL_SRCS-y),$(MTK_BL))) diff --git a/plat/mediatek/include/mt8188/platform_def.h b/plat/mediatek/include/mt8188/platform_def.h index c09139cf1..88a9e46e3 100644 --- a/plat/mediatek/include/mt8188/platform_def.h +++ b/plat/mediatek/include/mt8188/platform_def.h @@ -32,6 +32,15 @@ #define BASE_GICD_BASE (MT_GIC_BASE) #define MT_GIC_RDIST_BASE (MT_GIC_BASE + 0x40000) +/******************************************************************************* + * CIRQ related constants + ******************************************************************************/ +#define SYS_CIRQ_BASE (IO_PHYS + 0x204000) +#define MD_WDT_IRQ_BIT_ID (141) +#define CIRQ_IRQ_NUM (730) +#define CIRQ_REG_NUM (23) +#define CIRQ_SPI_START (96) + /******************************************************************************* * System counter frequency related constants ******************************************************************************/ diff --git a/plat/mediatek/mt8186/drivers/mcdi/mt_lp_irqremain.c b/plat/mediatek/mt8186/drivers/mcdi/mt_lp_irqremain.c index 42b2808f9..b5a028439 100644 --- a/plat/mediatek/mt8186/drivers/mcdi/mt_lp_irqremain.c +++ b/plat/mediatek/mt8186/drivers/mcdi/mt_lp_irqremain.c @@ -4,9 +4,9 @@ * SPDX-License-Identifier: BSD-3-Clause */ +#include #include #include -#include #include #define KEYPAD_IRQ_ID U(138) diff --git a/plat/mediatek/mt8186/drivers/spm/constraints/mt_spm_rc_bus26m.c b/plat/mediatek/mt8186/drivers/spm/constraints/mt_spm_rc_bus26m.c index 66fbe912a..dd2aee8f8 100644 --- a/plat/mediatek/mt8186/drivers/spm/constraints/mt_spm_rc_bus26m.c +++ b/plat/mediatek/mt8186/drivers/spm/constraints/mt_spm_rc_bus26m.c @@ -26,7 +26,7 @@ #include #ifndef ATF_PLAT_CIRQ_UNSUPPORT -#include +#include #endif #include diff --git a/plat/mediatek/mt8186/platform.mk b/plat/mediatek/mt8186/platform.mk index 2d61403b8..0b3646af3 100644 --- a/plat/mediatek/mt8186/platform.mk +++ b/plat/mediatek/mt8186/platform.mk @@ -8,6 +8,7 @@ MTK_PLAT := plat/mediatek MTK_PLAT_SOC := ${MTK_PLAT}/${PLAT} PLAT_INCLUDES := -I${MTK_PLAT}/common/ \ + -I${MTK_PLAT}/drivers/cirq/ \ -I${MTK_PLAT}/drivers/gic600/ \ -I${MTK_PLAT}/drivers/gpio/ \ -I${MTK_PLAT}/drivers/lpm/ \ @@ -47,7 +48,7 @@ BL31_SOURCES += common/desc_image_load.c \ ${MTK_PLAT}/common/mtk_plat_common.c \ ${MTK_PLAT}/common/mtk_sip_svc.c \ ${MTK_PLAT}/common/params_setup.c \ - ${MTK_PLAT}/common/mtk_cirq.c \ + ${MTK_PLAT}/drivers/cirq/mt_cirq.c \ ${MTK_PLAT}/drivers/gic600/mt_gic_v3.c \ ${MTK_PLAT}/drivers/gpio/mtgpio_common.c \ ${MTK_PLAT}/drivers/lpm/mt_lp_rm.c \ diff --git a/plat/mediatek/mt8188/platform.mk b/plat/mediatek/mt8188/platform.mk index 82c4ce138..83a5b95bd 100644 --- a/plat/mediatek/mt8188/platform.mk +++ b/plat/mediatek/mt8188/platform.mk @@ -22,6 +22,7 @@ PLAT_INCLUDES := -I${MTK_PLAT}/common \ MODULES-y += $(MTK_PLAT)/common MODULES-y += $(MTK_PLAT)/lib/mtk_init MODULES-y += $(MTK_PLAT)/lib/pm +MODULES-y += $(MTK_PLAT)/drivers/cirq MODULES-y += $(MTK_PLAT)/drivers/gic600 MODULES-y += $(MTK_PLAT)/drivers/timer diff --git a/plat/mediatek/mt8192/drivers/mcdi/mt_lp_irqremain.c b/plat/mediatek/mt8192/drivers/mcdi/mt_lp_irqremain.c index e74d3e7bc..872f4d02c 100644 --- a/plat/mediatek/mt8192/drivers/mcdi/mt_lp_irqremain.c +++ b/plat/mediatek/mt8192/drivers/mcdi/mt_lp_irqremain.c @@ -1,12 +1,12 @@ /* - * Copyright (c) 2020, MediaTek Inc. All rights reserved. + * Copyright (c) 2020-2022, MediaTek Inc. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ -#include +#include #include -#include +#include #include #define EDMA0_IRQ_ID U(448) diff --git a/plat/mediatek/mt8192/drivers/spm/constraints/mt_spm_rc_bus26m.c b/plat/mediatek/mt8192/drivers/spm/constraints/mt_spm_rc_bus26m.c index f66b8ec93..18c43b1cc 100644 --- a/plat/mediatek/mt8192/drivers/spm/constraints/mt_spm_rc_bus26m.c +++ b/plat/mediatek/mt8192/drivers/spm/constraints/mt_spm_rc_bus26m.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2020, MediaTek Inc. All rights reserved. + * Copyright (c) 2020-2022, MediaTek Inc. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -23,8 +23,8 @@ #include #ifndef ATF_PLAT_CIRQ_UNSUPPORT +#include #include -#include #endif #define CONSTRAINT_BUS26M_ALLOW \ diff --git a/plat/mediatek/mt8192/platform.mk b/plat/mediatek/mt8192/platform.mk index 643477b9a..e26d464c3 100644 --- a/plat/mediatek/mt8192/platform.mk +++ b/plat/mediatek/mt8192/platform.mk @@ -8,6 +8,7 @@ MTK_PLAT := plat/mediatek MTK_PLAT_SOC := ${MTK_PLAT}/${PLAT} PLAT_INCLUDES := -I${MTK_PLAT}/common/ \ + -I${MTK_PLAT}/drivers/cirq/ \ -I${MTK_PLAT}/drivers/gic600/ \ -I${MTK_PLAT}/drivers/gpio/ \ -I${MTK_PLAT}/drivers/lpm/ \ @@ -46,10 +47,10 @@ BL31_SOURCES += common/desc_image_load.c \ lib/cpus/aarch64/cortex_a55.S \ lib/cpus/aarch64/cortex_a76.S \ plat/common/plat_gicv3.c \ - ${MTK_PLAT}/common/mtk_cirq.c \ ${MTK_PLAT}/common/mtk_plat_common.c \ ${MTK_PLAT}/common/mtk_sip_svc.c \ ${MTK_PLAT}/common/params_setup.c \ + ${MTK_PLAT}/drivers/cirq/mt_cirq.c \ ${MTK_PLAT}/drivers/gic600/mt_gic_v3.c \ ${MTK_PLAT}/drivers/gpio/mtgpio_common.c \ ${MTK_PLAT}/drivers/lpm/mt_lp_rm.c \ diff --git a/plat/mediatek/mt8195/drivers/mcdi/mt_lp_irqremain.c b/plat/mediatek/mt8195/drivers/mcdi/mt_lp_irqremain.c index 4147184f2..f415cb82b 100644 --- a/plat/mediatek/mt8195/drivers/mcdi/mt_lp_irqremain.c +++ b/plat/mediatek/mt8195/drivers/mcdi/mt_lp_irqremain.c @@ -1,15 +1,14 @@ /* - * Copyright (c) 2021, MediaTek Inc. All rights reserved. + * Copyright (c) 2021-2022, MediaTek Inc. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ -#include +#include #include -#include +#include #include - #define KEYPAD_IRQ_ID U(138) #define KEYPAD_WAKESRC 0x4 diff --git a/plat/mediatek/mt8195/drivers/spm/constraints/mt_spm_rc_bus26m.c b/plat/mediatek/mt8195/drivers/spm/constraints/mt_spm_rc_bus26m.c index d2ad282dc..87278d727 100644 --- a/plat/mediatek/mt8195/drivers/spm/constraints/mt_spm_rc_bus26m.c +++ b/plat/mediatek/mt8195/drivers/spm/constraints/mt_spm_rc_bus26m.c @@ -1,5 +1,5 @@ /* - * Copyright (c) 2021, MediaTek Inc. All rights reserved. + * Copyright (c) 2021-2022, MediaTek Inc. All rights reserved. * * SPDX-License-Identifier: BSD-3-Clause */ @@ -23,8 +23,8 @@ #include #ifndef ATF_PLAT_CIRQ_UNSUPPORT +#include #include -#include #endif #define CONSTRAINT_BUS26M_ALLOW \ diff --git a/plat/mediatek/mt8195/platform.mk b/plat/mediatek/mt8195/platform.mk index b5d22c4f3..8f86b3283 100644 --- a/plat/mediatek/mt8195/platform.mk +++ b/plat/mediatek/mt8195/platform.mk @@ -8,6 +8,7 @@ MTK_PLAT := plat/mediatek MTK_PLAT_SOC := ${MTK_PLAT}/${PLAT} PLAT_INCLUDES := -I${MTK_PLAT}/common/ \ + -I${MTK_PLAT}/drivers/cirq/ \ -I${MTK_PLAT}/drivers/gic600/ \ -I${MTK_PLAT}/drivers/gpio/ \ -I${MTK_PLAT}/drivers/lpm/ \ @@ -46,10 +47,10 @@ BL31_SOURCES += common/desc_image_load.c \ lib/cpus/aarch64/cortex_a55.S \ lib/cpus/aarch64/cortex_a78.S \ plat/common/plat_gicv3.c \ - ${MTK_PLAT}/common/mtk_cirq.c \ ${MTK_PLAT}/common/mtk_plat_common.c \ ${MTK_PLAT}/common/mtk_sip_svc.c \ ${MTK_PLAT}/common/params_setup.c \ + ${MTK_PLAT}/drivers/cirq/mt_cirq.c \ ${MTK_PLAT}/drivers/gic600/mt_gic_v3.c \ ${MTK_PLAT}/drivers/gpio/mtgpio_common.c \ ${MTK_PLAT}/drivers/lpm/mt_lp_rm.c \ -- 2.39.5