727e589448
In Infineon XMC4XXX SoCs, gpio interrupts are triggered via an Event Request Unit (ERU) module. A subset of the gpios are connected to the ERU. The ERU monitors edge triggers and creates a SR. This driver configures the ERU for a target port/pin combination for rising/falling edge events. Note that the ERU module does not generate SR based on the gpio level. Internally the ERU tracks the *status* of an event. The status is set on a positive edge and unset on a negative edge (or vice-versa depending on the configuration). The value of the status is used to implement a level triggered interrupt; The ISR checks the status flag and calls the callback function if the status is set. The ERU configurations for supported port/pin combinations are stored in a devicetree file dts/arm/infineon/xmc4xxx_x_x-intc.dtsi. The configurations are stored in the opaque array uint16 port_line_mapping[]. Signed-off-by: Andriy Gelman <andriy.gelman@gmail.com>
13 lines
364 B
Plaintext
13 lines
364 B
Plaintext
# XMC4XXX INTC configuration
|
|
|
|
# Copyright (c) Schlumberger
|
|
# SPDX-License-Identifier: Apache-2.0
|
|
|
|
config XMC4XXX_INTC
|
|
bool "Interrupt Controller Driver for XMC4XXX series devices"
|
|
default y
|
|
depends on DT_HAS_INFINEON_XMC4XXX_INTC_ENABLED
|
|
help
|
|
Enable interrupt controller driver for XMC4XXX series of devices. This is required for
|
|
GPIO interrupt support.
|