mirror of
https://github.com/ARM-software/arm-trusted-firmware.git
synced 2025-04-16 17:44:19 +00:00
feat(mediatek): configure DEV_IRQ as G1S interrupt
In order to register DEV_IRQ as secure interrupt in OP-TEE, the the GICD EnableGrp1S should be enabled for DEV_IRQ. Add mtk_interrupt_props in MTK GIC driver to configure the interrupt properly. Signed-off-by: Gavin Liu <gavin.liu@mediatek.com> Change-Id: Id909a42b535088c6d0dcaf803d3f2faf312ae846
This commit is contained in:
parent
620a3ddb01
commit
240a1ecd18
5 changed files with 26 additions and 6 deletions
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2020-2022, MediaTek Inc. All rights reserved.
|
||||
* Copyright (c) 2020-2024, MediaTek Inc. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
@ -27,6 +27,10 @@ static uint32_t rdist_has_saved[PLATFORM_CORE_COUNT];
|
|||
/* we save and restore the GICv3 context on system suspend */
|
||||
gicv3_dist_ctx_t dist_ctx;
|
||||
|
||||
static const interrupt_prop_t mtk_interrupt_props[] = {
|
||||
PLAT_MTK_G1S_IRQ_PROPS(INTR_GROUP1S)
|
||||
};
|
||||
|
||||
static unsigned int mt_mpidr_to_core_pos(u_register_t mpidr)
|
||||
{
|
||||
return plat_core_pos_by_mpidr(mpidr);
|
||||
|
@ -35,6 +39,8 @@ static unsigned int mt_mpidr_to_core_pos(u_register_t mpidr)
|
|||
gicv3_driver_data_t mt_gicv3_data = {
|
||||
.gicd_base = MT_GIC_BASE,
|
||||
.gicr_base = MT_GIC_RDIST_BASE,
|
||||
.interrupt_props = mtk_interrupt_props,
|
||||
.interrupt_props_num = ARRAY_SIZE(mtk_interrupt_props),
|
||||
.rdistif_num = PLATFORM_CORE_COUNT,
|
||||
.rdistif_base_addrs = rdistif_base_addrs,
|
||||
.mpidr_to_core_pos = mt_mpidr_to_core_pos,
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
/*
|
||||
* Copyright (c) 2021-2022, ARM Limited and Contributors. All rights reserved.
|
||||
* Copyright (c) 2021-2022, MediaTek Inc. All rights reserved.
|
||||
* Copyright (c) 2021-2024, ARM Limited and Contributors. All rights reserved.
|
||||
* Copyright (c) 2021-2024, MediaTek Inc. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
@ -83,6 +83,8 @@
|
|||
#define BASE_GICD_BASE MT_GIC_BASE
|
||||
#define MT_GIC_RDIST_BASE (MT_GIC_BASE + 0x40000)
|
||||
|
||||
#define PLAT_MTK_G1S_IRQ_PROPS(grp)
|
||||
|
||||
#define SYS_CIRQ_BASE (IO_PHYS + 0x204000)
|
||||
#define CIRQ_REG_NUM (11)
|
||||
#define CIRQ_IRQ_NUM (326)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2022-2023, ARM Limited and Contributors. All rights reserved.
|
||||
* Copyright (c) 2022-2024, ARM Limited and Contributors. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
@ -96,6 +96,11 @@
|
|||
/* Base MTK_platform compatible GIC memory map */
|
||||
#define BASE_GICD_BASE (MT_GIC_BASE)
|
||||
#define MT_GIC_RDIST_BASE (MT_GIC_BASE + 0x40000)
|
||||
#define DEV_IRQ_ID 580
|
||||
|
||||
#define PLAT_MTK_G1S_IRQ_PROPS(grp) \
|
||||
INTR_PROP_DESC(DEV_IRQ_ID, GIC_HIGHEST_SEC_PRIORITY, grp, \
|
||||
GIC_INTR_CFG_LEVEL)
|
||||
|
||||
/*******************************************************************************
|
||||
* CIRQ related constants
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2020, ARM Limited and Contributors. All rights reserved.
|
||||
* Copyright (c) 2020-2024, ARM Limited and Contributors. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
@ -82,6 +82,8 @@
|
|||
#define BASE_GICD_BASE MT_GIC_BASE
|
||||
#define MT_GIC_RDIST_BASE (MT_GIC_BASE + 0x40000)
|
||||
|
||||
#define PLAT_MTK_G1S_IRQ_PROPS(grp)
|
||||
|
||||
#define SYS_CIRQ_BASE (IO_PHYS + 0x204000)
|
||||
#define CIRQ_REG_NUM 14
|
||||
#define CIRQ_IRQ_NUM 439
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
/*
|
||||
* Copyright (c) 2021-2022, ARM Limited and Contributors. All rights reserved.
|
||||
* Copyright (c) 2021-2024, ARM Limited and Contributors. All rights reserved.
|
||||
*
|
||||
* SPDX-License-Identifier: BSD-3-Clause
|
||||
*/
|
||||
|
@ -95,6 +95,11 @@
|
|||
/* Base MTK_platform compatible GIC memory map */
|
||||
#define BASE_GICD_BASE MT_GIC_BASE
|
||||
#define MT_GIC_RDIST_BASE (MT_GIC_BASE + 0x40000)
|
||||
#define DEV_IRQ_ID 580
|
||||
|
||||
#define PLAT_MTK_G1S_IRQ_PROPS(grp) \
|
||||
INTR_PROP_DESC(DEV_IRQ_ID, GIC_HIGHEST_SEC_PRIORITY, grp, \
|
||||
GIC_INTR_CFG_LEVEL)
|
||||
|
||||
#define SYS_CIRQ_BASE (IO_PHYS + 0x204000)
|
||||
#define CIRQ_REG_NUM 23
|
||||
|
|
Loading…
Add table
Reference in a new issue