LCOV - code coverage report
Current view: top level - zephyr/devicetree - interrupt_controller.h Hit Total Coverage
Test: new.info Lines: 3 3 100.0 %
Date: 2024-12-22 00:14:23

          Line data    Source code
       1           1 : /*
       2             :  * Copyright (c) 2024 Meta
       3             :  *
       4             :  * SPDX-License-Identifier: Apache-2.0
       5             :  */
       6             : 
       7             : /**
       8             :  * @file
       9             :  * @brief Interrupt controller devicetree macro public API header file.
      10             :  */
      11             : 
      12             : #ifndef ZEPHYR_INCLUDE_DEVICETREE_INTERRUPT_CONTROLLER_H_
      13             : #define ZEPHYR_INCLUDE_DEVICETREE_INTERRUPT_CONTROLLER_H_
      14             : 
      15             : #ifdef __cplusplus
      16             : extern "C" {
      17             : #endif
      18             : 
      19             : #include <zephyr/devicetree.h>
      20             : #include <zephyr/sys/util_macro.h>
      21             : 
      22             : /**
      23             :  * @defgroup devicetree-interrupt_controller Devicetree Interrupt Controller API
      24             :  * @ingroup devicetree
      25             :  * @{
      26             :  */
      27             : 
      28             : /**
      29             :  * @brief Get the aggregator level of an interrupt controller
      30             :  *
      31             :  * @note Aggregator level is equivalent to IRQ_LEVEL + 1 (a 2nd level aggregator has Zephyr level 1
      32             :  * IRQ encoding)
      33             :  *
      34             :  * @param node_id node identifier of an interrupt controller
      35             :  *
      36             :  * @return Level of the interrupt controller
      37             :  */
      38           1 : #define DT_INTC_GET_AGGREGATOR_LEVEL(node_id) UTIL_INC(DT_IRQ_LEVEL(node_id))
      39             : 
      40             : /**
      41             :  * @brief Get the aggregator level of a `DT_DRV_COMPAT` interrupt controller
      42             :  *
      43             :  * @note Aggregator level is equivalent to IRQ_LEVEL + 1 (a 2nd level aggregator has Zephyr level 1
      44             :  * IRQ encoding)
      45             :  *
      46             :  * @param inst instance of an interrupt controller
      47             :  *
      48             :  * @return Level of the interrupt controller
      49             :  */
      50           1 : #define DT_INST_INTC_GET_AGGREGATOR_LEVEL(inst) DT_INTC_GET_AGGREGATOR_LEVEL(DT_DRV_INST(inst))
      51             : 
      52             : /**
      53             :  * @}
      54             :  */
      55             : 
      56             : #ifdef __cplusplus
      57             : }
      58             : #endif
      59             : 
      60             : #endif /* ZEPHYR_INCLUDE_DEVICETREE_INTERRUPT_CONTROLLER_H_ */

Generated by: LCOV version 1.14