Home
last modified time | relevance | path

Searched +full:parent +full:- +full:interrupt +full:- +full:base (Results 1 – 25 of 1053) sorted by relevance

12345678910>>...43

/Linux-v6.1/arch/arm/boot/dts/
Dspear600.dtsi1 // SPDX-License-Identifier: GPL-2.0-or-later
7 #address-cells = <1>;
8 #size-cells = <1>;
12 #address-cells = <0>;
13 #size-cells = <0>;
16 compatible = "arm,arm926ej-s";
27 #address-cells = <1>;
28 #size-cells = <1>;
29 compatible = "simple-bus";
32 vic0: interrupt-controller@f1100000 {
[all …]
Dspear320.dtsi1 // SPDX-License-Identifier: GPL-2.0-or-later
12 #address-cells = <1>;
13 #size-cells = <1>;
14 compatible = "simple-bus";
19 compatible = "st,spear320-pinmux";
21 #gpio-range-cells = <3>;
28 interrupt-parent = <&shirq>;
33 compatible = "st,spear600-fsmc-nand";
34 #address-cells = <1>;
35 #size-cells = <1>;
[all …]
Dspear310.dtsi1 // SPDX-License-Identifier: GPL-2.0-or-later
12 #address-cells = <1>;
13 #size-cells = <1>;
14 compatible = "simple-bus";
20 compatible = "st,spear310-pinmux";
22 #gpio-range-cells = <3>;
26 compatible = "st,spear600-fsmc-nand";
27 #address-cells = <1>;
28 #size-cells = <1>;
30 0x40000000 0x0010 /* NAND Base DATA */
[all …]
/Linux-v6.1/drivers/irqchip/
Dirq-sni-exiu.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Driver for Socionext External Interrupt Unit (EXIU)
5 * Copyright (c) 2017-2019 Linaro, Ltd. <ard.biesheuvel@linaro.org>
7 * Based on irq-tegra.c:
12 #include <linux/interrupt.h>
22 #include <dt-bindings/interrupt-controller/arm-gic.h>
36 void __iomem *base; member
44 writel(BIT(d->hwirq), data->base + EIREQCLR); in exiu_irq_ack()
53 * EOI or the interrupt will be jammed on. Of course if a level in exiu_irq_eoi()
54 * triggered interrupt is still asserted then the write will not clear in exiu_irq_eoi()
[all …]
Dirq-bcm2835.c1 // SPDX-License-Identifier: GPL-2.0+
8 * If an interrupt fires on bank 1 that isn't in the shortcuts list, bit 8
9 * on bank 0 is set to signify that an interrupt in bank 1 has fired, and
12 * If an interrupt fires on bank 1 that _is_ in the shortcuts list, its
13 * shortcut bit in bank 0 is set as well as its interrupt bit in the bank 1
18 * In a proper cascaded interrupt controller, the interrupt lines with
19 * cascaded interrupt controllers on them are just normal interrupt lines.
30 * Bits 0-6: IRQ (index in order of interrupts from banks 1, 2, then 0)
34 * An interrupt must be disabled before configuring it for FIQ generation
80 void __iomem *base; member
[all …]
Dirq-owl-sirq.c1 // SPDX-License-Identifier: GPL-2.0+
3 * Actions Semi Owl SoCs SIRQ interrupt controller driver
6 * David Liu <liuwei@actions-semi.com>
14 #include <linux/interrupt.h>
19 #include <dt-bindings/interrupt-controller/arm-gic.h>
37 /* S900 SIRQ control register offsets, relative to controller base address */
45 /* INTC_EXTCTL reg offsets relative to controller base address */
51 void __iomem *base; member
98 val = readl_relaxed(data->base + data->params->reg_offset[index]); in owl_sirq_read_extctl()
99 if (data->params->reg_shared) in owl_sirq_read_extctl()
[all …]
Dirq-al-fic.c1 // SPDX-License-Identifier: GPL-2.0
28 MODULE_DESCRIPTION("Amazon's Annapurna Labs Interrupt Controller Driver");
38 void __iomem *base; member
50 u32 control = readl_relaxed(fic->base + AL_FIC_CONTROL); in al_fic_set_trigger()
59 gc->chip_types->handler = handler; in al_fic_set_trigger()
60 fic->state = new_state; in al_fic_set_trigger()
61 writel_relaxed(control, fic->base + AL_FIC_CONTROL); in al_fic_set_trigger()
67 struct al_fic *fic = gc->private; in al_fic_irq_set_type()
76 ret = -EINVAL; in al_fic_irq_set_type()
92 if (fic->state == AL_FIC_UNCONFIGURED) { in al_fic_irq_set_type()
[all …]
Dirq-renesas-rza1.c1 // SPDX-License-Identifier: GPL-2.0
10 #include <linux/interrupt.h>
19 #include <dt-bindings/interrupt-controller/arm-gic.h>
23 #define ICR0 0 /* Interrupt Control Register 0 */
27 #define ICR0_NMIF BIT(1) /* NMI Interrupt Request */
29 #define ICR1 2 /* Interrupt Control Register 1 */
38 #define IRQRR 4 /* IRQ Interrupt Request Register */
43 void __iomem *base; member
51 return data->domain->host_data; in irq_data_to_priv()
60 tmp = readw_relaxed(priv->base + IRQRR); in rza1_irqc_eoi()
[all …]
Dirq-ti-sci-inta.c1 // SPDX-License-Identifier: GPL-2.0
3 * Texas Instruments' K3 Interrupt Aggregator irqchip driver
5 * Copyright (C) 2018-2019 Texas Instruments Incorporated - https://www.ti.com/
14 #include <linux/interrupt.h>
24 #include <asm-generic/msi.h>
44 * struct ti_sci_inta_event_desc - Description of an event coming to
45 * Interrupt Aggregator. This serves
49 * @hwirq: Hwirq of the incoming interrupt
59 * struct ti_sci_inta_vint_desc - Description of a virtual interrupt coming out
60 * of Interrupt Aggregator.
[all …]
Dirq-brcmstb-l2.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Generic Broadcom Set Top Box Level 2 Interrupt controller driver
5 * Copyright (C) 2014-2017 Broadcom
19 #include <linux/interrupt.h>
35 /* Register offsets in the L2 latched interrupt controller */
45 /* Register offsets in the L2 level interrupt controller */
49 .cpu_clear = -1, /* Register not present */
66 * brcmstb_l2_mask_and_ack - Mask and ack pending interrupt
70 * register and pending interrupt is acknowledged by setting a bit.
82 u32 mask = d->mask; in brcmstb_l2_mask_and_ack()
[all …]
Dirq-bcm7120-l2.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Broadcom BCM7120 style Level 2 interrupt controller driver
19 #include <linux/interrupt.h>
28 /* Register offset in the L2 interrupt controller */
58 struct bcm7120_l2_intc_data *b = data->b; in bcm7120_l2_intc_irq_handle()
64 for (idx = 0; idx < b->n_words; idx++) { in bcm7120_l2_intc_irq_handle()
65 int base = idx * IRQS_PER_WORD; in bcm7120_l2_intc_irq_handle() local
67 irq_get_domain_generic_chip(b->domain, base); in bcm7120_l2_intc_irq_handle()
72 pending = irq_reg_readl(gc, b->stat_offset[idx]) & in bcm7120_l2_intc_irq_handle()
73 gc->mask_cache & in bcm7120_l2_intc_irq_handle()
[all …]
Dirq-tegra.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * Driver code for Tegra's Legacy Interrupt Controller
7 * Heavily based on the original arch/arm/mach-tegra/irq.c code:
24 #include <dt-bindings/interrupt-controller/arm-gic.h>
62 { .compatible = "nvidia,tegra210-ictlr", .data = &tegra210_ictlr_soc },
63 { .compatible = "nvidia,tegra30-ictlr", .data = &tegra30_ictlr_soc },
64 { .compatible = "nvidia,tegra20-ictlr", .data = &tegra20_ictlr_soc },
69 void __iomem *base[TEGRA_MAX_NUM_ICTLRS]; member
84 void __iomem *base = (void __iomem __force *)d->chip_data; in tegra_ictlr_write_mask() local
87 mask = BIT(d->hwirq % 32); in tegra_ictlr_write_mask()
[all …]
Dirq-ti-sci-intr.c1 // SPDX-License-Identifier: GPL-2.0
3 * Texas Instruments' K3 Interrupt Router irqchip driver
5 * Copyright (C) 2018-2019 Texas Instruments Incorporated - https://www.ti.com/
21 * struct ti_sci_intr_irq_domain - Structure representing a TISCI based
22 * Interrupt Router IRQ domain.
26 * @ti_sci_id: TI-SCI device identifier
27 * @type: Specifies the trigger type supported by this Interrupt Router
48 * ti_sci_intr_irq_domain_translate() - Retrieve hwirq and type from
62 struct ti_sci_intr_irq_domain *intr = domain->host_data; in ti_sci_intr_irq_domain_translate()
64 if (fwspec->param_count != 1) in ti_sci_intr_irq_domain_translate()
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/net/dsa/
Dmarvell.txt2 ---------------------------------------
17 which is at a different MDIO base address in different switch families.
18 - "marvell,mv88e6085" : Switch has base address 0x10. Use with models:
22 - "marvell,mv88e6190" : Switch has base address 0x00. Use with models:
24 - "marvell,mv88e6250" : Switch has base address 0x08 or 0x18. Use with model:
28 - compatible : Should be one of "marvell,mv88e6085",
31 - reg : Address on the MII bus for the switch.
35 - reset-gpios : Should be a gpio specifier for a reset line
36 - interrupts : Interrupt from the switch
37 - interrupt-controller : Indicates the switch is itself an interrupt
[all …]
/Linux-v6.1/drivers/i2c/busses/
Di2c-stm32f4.c1 // SPDX-License-Identifier: GPL-2.0
13 * This driver is based on i2c-st.c
21 #include <linux/interrupt.h>
31 #include "i2c-stm32.h"
97 * struct stm32f4_i2c_msg - client specific data
98 * @addr: 8-bit slave addr, including r/w bit
113 * struct stm32f4_i2c_dev - private data of the controller
116 * @base: virtual memory area
120 * @parent_rate: I2C clock parent rate in MHz
126 void __iomem *base; member
[all …]
Di2c-xiic.c1 // SPDX-License-Identifier: GPL-2.0-only
3 * i2c-xiic.c
4 * Copyright (c) 2002-2007 Xilinx Inc.
5 * Copyright (c) 2009-2010 Intel Corporation
25 #include <linux/interrupt.h>
27 #include <linux/platform_data/i2c-xiic.h>
34 #define DRIVER_NAME "xiic-i2c"
48 * struct xiic_i2c - Internal representation of the XIIC I2C bus
50 * @base: Memory base of the HW registers
59 * @endianness: big/little-endian byte order
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/pci/
Daltera-pcie.txt4 - compatible : should contain "altr,pcie-root-port-1.0" or "altr,pcie-root-port-2.0"
5 - reg: a list of physical base address and length for TXS and CRA.
6 For "altr,pcie-root-port-2.0", additional HIP base address and length.
7 - reg-names: must include the following entries:
10 "Hip": Hard IP region (if "altr,pcie-root-port-2.0")
11 - interrupts: specifies the interrupt source of the parent interrupt
12 controller. The format of the interrupt specifier depends
13 on the parent interrupt controller.
14 - device_type: must be "pci"
15 - #address-cells: set to <3>
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/interrupt-controller/
Dloongson,pch-pic.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: "http://devicetree.org/schemas/interrupt-controller/loongson,pch-pic.yaml#"
5 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
10 - Jiaxun Yang <jiaxun.yang@flygoat.com>
13 This interrupt controller is found in the Loongson LS7A family of PCH for
14 transforming interrupts from on-chip devices into HyperTransport vectorized
19 const: loongson,pch-pic-1.0
24 loongson,pic-base-vec:
26 u32 value of the base of parent HyperTransport vector allocated
[all …]
Dsocionext,synquacer-exiu.txt1 Socionext SynQuacer External Interrupt Unit (EXIU)
3 The Socionext Synquacer SoC has an external interrupt unit (EXIU)
5 level-high type GICv3 SPIs.
9 - compatible : Should be "socionext,synquacer-exiu".
10 - reg : Specifies base physical address and size of the
12 - interrupt-controller : Identifies the node as an interrupt controller.
13 - #interrupt-cells : Specifies the number of cells needed to encode an
14 interrupt source. The value must be 3.
15 - socionext,spi-base : The SPI number of the first SPI of the 32 adjacent
20 - Only SPIs can use the EXIU as an interrupt parent.
[all …]
Dloongson,pch-msi.yaml1 # SPDX-License-Identifier: (GPL-2.0-only OR BSD-2-Clause)
3 ---
4 $id: "http://devicetree.org/schemas/interrupt-controller/loongson,pch-msi.yaml#"
5 $schema: "http://devicetree.org/meta-schemas/core.yaml#"
10 - Jiaxun Yang <jiaxun.yang@flygoat.com>
13 This interrupt controller is found in the Loongson LS7A family of PCH for
19 const: loongson,pch-msi-1.0
24 loongson,msi-base-vec:
26 u32 value of the base of parent HyperTransport vector allocated
32 loongson,msi-num-vecs:
[all …]
Dfsl,ls-scfg-msi.txt5 - compatible: should be "fsl,<soc-name>-msi" to identify
7 "fsl,ls1021a-msi"
8 "fsl,ls1043a-msi"
9 "fsl,ls1046a-msi"
10 "fsl,ls1043a-v1.1-msi"
11 "fsl,ls1012a-msi"
12 - msi-controller: indicates that this is a PCIe MSI controller node
13 - reg: physical base address of the controller and length of memory mapped.
14 - interrupts: an interrupt to the parent interrupt controller.
16 This interrupt controller hardware is a second level interrupt controller that
[all …]
/Linux-v6.1/drivers/staging/vme_user/
Dvme_tsi148.c1 // SPDX-License-Identifier: GPL-2.0-or-later
3 * Support for the Tundra TSI148 VME-PCI Bridge Chip
20 #include <linux/dma-mapping.h>
21 #include <linux/interrupt.h>
81 wake_up(&bridge->dma_queue[0]); in tsi148_DMA_irqhandler()
85 wake_up(&bridge->dma_queue[1]); in tsi148_DMA_irqhandler()
103 bridge->lm_callback[i](bridge->lm_data[i]); in tsi148_LM_irqhandler()
123 bridge = tsi148_bridge->driver_priv; in tsi148_MB_irqhandler()
127 val = ioread32be(bridge->base + TSI148_GCSR_MBOX[i]); in tsi148_MB_irqhandler()
128 dev_err(tsi148_bridge->parent, "VME Mailbox %d received: 0x%x\n", in tsi148_MB_irqhandler()
[all …]
/Linux-v6.1/include/linux/gpio/
Ddriver.h1 /* SPDX-License-Identifier: GPL-2.0 */
11 #include <linux/pinctrl/pinconf-generic.h>
39 * struct gpio_irq_chip - GPIO interrupt controller
52 * Interrupt translation domain; responsible for mapping between GPIO
60 * Table of interrupt domain operations for this IRQ chip.
76 * If non-NULL, will be set as the parent of this GPIO interrupt
77 * controller's IRQ domain to establish a hierarchical interrupt
79 * interrupt support.
86 * This callback translates a child hardware IRQ offset to a parent
87 * hardware IRQ offset on a hierarchical interrupt chip. The child
[all …]
/Linux-v6.1/Documentation/devicetree/bindings/gpio/
Dsocionext,uniphier-gpio.yaml1 # SPDX-License-Identifier: GPL-2.0-only OR BSD-2-Clause
3 ---
4 $id: http://devicetree.org/schemas/gpio/socionext,uniphier-gpio.yaml#
5 $schema: http://devicetree.org/meta-schemas/core.yaml#
10 - Masahiro Yamada <yamada.masahiro@socionext.com>
14 pattern: "^gpio@[0-9a-f]+$"
17 const: socionext,uniphier-gpio
22 gpio-controller: true
24 "#gpio-cells":
27 interrupt-controller: true
[all …]
/Linux-v6.1/drivers/mailbox/
Dhi6220-mailbox.c1 // SPDX-License-Identifier: GPL-2.0-only
13 #include <linux/interrupt.h>
56 * - direction: tx or rx
57 * - dst irq: peer core's irq number
58 * - ack irq: local irq number
59 * - slot number
64 struct hi6220_mbox *parent; member
79 void __iomem *base; member
94 status = readl(mbox->base + MBOX_MODE_REG(slot)); in mbox_set_state()
96 writel(status, mbox->base + MBOX_MODE_REG(slot)); in mbox_set_state()
[all …]

12345678910>>...43