tests: drivers: build_all: intc: add a common build-only test

Add a generic build-only test for:
 - intc_nxp_irqsteer
 - intc_cavs
 - intc_rv32m1_intmux
 - intc_dw_ace
 - intc_dw

Signed-off-by: Yong Cong Sin <ycsin@meta.com>
This commit is contained in:
Yong Cong Sin 2024-02-20 12:17:05 +08:00 committed by Johan Hedberg
commit cd0ef1ad27
7 changed files with 123 additions and 0 deletions

View file

@ -0,0 +1,8 @@
# SPDX-License-Identifier: Apache-2.0
cmake_minimum_required(VERSION 3.20.0)
find_package(Zephyr REQUIRED HINTS $ENV{ZEPHYR_BASE})
project(common)
FILE(GLOB app_sources src/*.c)
target_sources(app PRIVATE ${app_sources})

View file

@ -0,0 +1,14 @@
# Copyright (c) 2024 Meta
# SPDX-License-Identifier: Apache-2.0
# Made-up config to build intc_nxp_irqsteer.c, refer to:
# https://github.com/zephyrproject-rtos/zephyr/pull/62776#issuecomment-1727846332
CONFIG_MULTI_LEVEL_INTERRUPTS=y
CONFIG_2ND_LEVEL_INTERRUPTS=y
CONFIG_2ND_LVL_ISR_TBL_OFFSET=32
CONFIG_MAX_IRQ_PER_AGGREGATOR=64
CONFIG_NUM_2ND_LEVEL_AGGREGATORS=3
CONFIG_2ND_LVL_INTR_00_OFFSET=19
CONFIG_2ND_LVL_INTR_01_OFFSET=20
CONFIG_2ND_LVL_INTR_02_OFFSET=21

View file

@ -0,0 +1,46 @@
/*
* Copyright (c) 2024 Meta
*
* SPDX-License-Identifier: Apache-2.0
*/
/*
* Made-up devicetree to build intc_nxp_irqsteer.c, refer to:
* https://github.com/zephyrproject-rtos/zephyr/pull/62776#issuecomment-1727846332
*/
/{
soc {
irqsteer: interrupt-controller@30a80000 {
compatible = "nxp,irqsteer-intc";
reg = <0x30a80000 DT_SIZE_K(64)>;
#size-cells = <0>;
#address-cells = <1>;
master0: interrupt-controller@0 {
compatible = "nxp,irqsteer-master";
reg = <0>;
interrupt-controller;
#interrupt-cells = <1>;
interrupts-extended = <&clic 19 0 0>;
};
master1: interrupt-controller@1 {
compatible = "nxp,irqsteer-master";
reg = <1>;
interrupt-controller;
#interrupt-cells = <1>;
interrupts-extended = <&clic 20 0 0>;
};
master2: interrupt-controller@2 {
compatible = "nxp,irqsteer-master";
reg = <2>;
interrupt-controller;
#interrupt-cells = <1>;
interrupts-extended = <&clic 21 0 0>;
};
};
};
};

View file

@ -0,0 +1,21 @@
/*
* Copyright (c) 2024 Meta
*
* SPDX-License-Identifier: Apache-2.0
*/
/* Made-up devicetree to build intc_dw.c */
/{
soc {
dw_intc: dw_intc@7a000 {
compatible = "snps,designware-intc";
reg = <0x7a000 0xc00>;
interrupt-controller;
#interrupt-cells = <3>;
interrupts = <6 0 0>;
num-irqs = <28>;
interrupt-parent = <&core_intc>;
};
};
};

View file

@ -0,0 +1,3 @@
# SPDX-License-Identifier: Apache-2.0
CONFIG_TEST=y

View file

@ -0,0 +1,10 @@
/*
* Copyright (c) 2024 Meta
*
* SPDX-License-Identifier: Apache-2.0
*/
int main(void)
{
return 0;
}

View file

@ -0,0 +1,21 @@
common:
build_only: true
tags:
- drivers
- interrupt
tests:
drivers.interrupt_controller.common.intc_nxp_irqsteer.build:
platform_allow:
- imx8mp_evk/mimx8ml8/adsp
drivers.interrupt_controller.common.intc_cavs.build:
platform_allow:
- intel_adsp/cavs25
drivers.interrupt_controller.common.intc_rv32m1_intmux.build:
platform_allow:
- rv32m1_vega/openisa_rv32m1/zero_riscy
drivers.interrupt_controller.common.intc_dw_ace.build:
platform_allow:
- intel_adsp/ace15_mtpm
drivers.interrupt_controller.common.intc_dw.build:
platform_allow:
- intel_adsp/ace20_lnl