/linux-6.12.1/drivers/irqchip/ |
D | irq-mbigen.c | 1 // SPDX-License-Identifier: GPL-2.0-only 9 #include <linux/interrupt.h> 19 /* Interrupt numbers per mbigen node supported */ 22 /* 64 irqs (Pin0-pin63) are reserved for each mbigen chip */ 45 * of interrupt 50 * offset of interrupt type register 51 * This register is used to configure interrupt 57 * struct mbigen_device - holds the information of mbigen device. 60 * @base: mapped address of this mbigen chip. 64 void __iomem *base; member [all …]
|
D | irq-gic-v2m.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * ARM GIC v2m MSI(-X) support 5 * implement ARM Generic Interrupt Controller: GICv2m. 26 #include <linux/irqchip/arm-gic.h> 27 #include <linux/irqchip/arm-gic-common.h> 29 #include "irq-msi-lib.h" 52 /* APM X-Gene with GICv2m MSI_IIDR register value */ 69 void __iomem *base; /* GICv2m virt address */ member 79 if (v2m->flags & GICV2M_GRAVITON_ADDRESS_ONLY) in gicv2m_get_msi_addr() 80 return v2m->res.start | ((hwirq - 32) << 3); in gicv2m_get_msi_addr() [all …]
|
/linux-6.12.1/drivers/hwmon/ |
D | npcm750-pwm-fan.c | 1 // SPDX-License-Identifier: GPL-2.0 2 // Copyright (c) 2014-2018 Nuvoton Technology corporation. 7 #include <linux/hwmon-sysfs.h> 8 #include <linux/interrupt.h> 19 #define NPCM7XX_PWM_REG_BASE(base, n) ((base) + ((n) * 0x1000L)) argument 21 #define NPCM7XX_PWM_REG_PR(base, n) (NPCM7XX_PWM_REG_BASE(base, n) + 0x00) argument 22 #define NPCM7XX_PWM_REG_CSR(base, n) (NPCM7XX_PWM_REG_BASE(base, n) + 0x04) argument 23 #define NPCM7XX_PWM_REG_CR(base, n) (NPCM7XX_PWM_REG_BASE(base, n) + 0x08) argument 24 #define NPCM7XX_PWM_REG_CNRx(base, n, ch) \ argument 25 (NPCM7XX_PWM_REG_BASE(base, n) + 0x0C + (12 * (ch))) [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/display/ |
D | st,stih4xx.txt | 3 - sti-vtg: video timing generator 5 - compatible: "st,vtg" 6 - reg: Physical base address of the IP registers and length of memory mapped region. 8 - interrupts : VTG interrupt number to the CPU. 9 - st,slave: phandle on a slave vtg 11 - sti-vtac: video timing advanced inter dye communication Rx and TX 13 - compatible: "st,vtac-main" or "st,vtac-aux" 14 - reg: Physical base address of the IP registers and length of memory mapped region. 15 - clocks: from common clock binding: handle hardware IP needed clocks, the 17 See ../clocks/clock-bindings.txt for details. [all …]
|
/linux-6.12.1/arch/mips/pci/ |
D | pci-rt3883.c | 1 // SPDX-License-Identifier: GPL-2.0-only 5 * Copyright (C) 2011-2013 Gabor Juhos <juhosg@openwrt.org> 15 #include <linux/interrupt.h> 22 #include <asm/mach-ralink/rt3883.h> 23 #include <asm/mach-ralink/ralink_regs.h> 60 void __iomem *base; member 77 hose = (struct pci_controller *) bus->sysdata; in pci_bus_to_rt3883_controller() 84 return ioread32(rpc->base + reg); in rt3883_pci_r32() 90 iowrite32(val, rpc->base + reg); in rt3883_pci_w32() 143 generic_handle_domain_irq(rpc->irq_domain, bit); in rt3883_pci_irq_handler() [all …]
|
/linux-6.12.1/drivers/pinctrl/intel/ |
D | pinctrl-intel-platform.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Copyright (C) 2021-2023, Intel Corporation 18 #include "pinctrl-intel.h" 25 static int intel_platform_pinctrl_prepare_pins(struct device *dev, size_t base, in intel_platform_pinctrl_prepare_pins() argument 37 descs = devm_krealloc_array(dev, pins->pins, base + size, sizeof(*descs), GFP_KERNEL); in intel_platform_pinctrl_prepare_pins() 39 return -ENOMEM; in intel_platform_pinctrl_prepare_pins() 42 unsigned int pin_number = base + i; in intel_platform_pinctrl_prepare_pins() 47 strreplace(pin_name, '-', '_'); in intel_platform_pinctrl_prepare_pins() 50 desc->number = pin_number; in intel_platform_pinctrl_prepare_pins() 51 desc->name = pin_name; in intel_platform_pinctrl_prepare_pins() [all …]
|
/linux-6.12.1/drivers/pci/controller/ |
D | pci-mvebu.c | 1 // SPDX-License-Identifier: GPL-2.0 5 * Author: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 27 #include "../pci-bridge-emul.h" 40 #define PCIE_BAR_CTRL_OFF(n) (0x1804 + (((n) - 1) * 4)) 94 phys_addr_t base; member 102 void __iomem *base; member 130 writel(val, port->base + reg); in mvebu_writel() 135 return readl(port->base + reg); in mvebu_readl() 140 return port->io_target != -1 && port->io_attr != -1; in mvebu_has_ioport() 199 * BAR[0] -> internal registers (needed for MSI) [all …]
|
D | vmd.c | 1 // SPDX-License-Identifier: GPL-2.0 8 #include <linux/interrupt.h> 14 #include <linux/pci-acpi.h> 15 #include <linux/pci-ecam.h> 53 * vendor-specific capability space 58 * Device may use MSI-X vector 0 for software triggering and will not 64 * Device can bypass remapping MSI-X transactions into its MSI-X table, 65 * avoiding the requirement of a VMD MSI domain for child device 66 * interrupt handling. 94 * struct vmd_irq - private data to map driver IRQ to the VMD shared vector [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/soc/dove/ |
D | pmu.txt | 4 - compatible: value should be "marvell,dove-pmu". 5 May also include "simple-bus" if there are child devices, in which 7 - reg: two base addresses and sizes of the PM controller and PMU. 8 - interrupts: single interrupt number for the PMU interrupt 9 - interrupt-controller: must be specified as the PMU itself is an 10 interrupt controller. 11 - #interrupt-cells: must be 1. 12 - #reset-cells: must be 1. 13 - domains: sub-node containing domain descriptions 16 - ranges: defines the address mapping for child devices, as per the [all …]
|
/linux-6.12.1/include/linux/gpio/ |
D | driver.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 12 #include <linux/pinctrl/pinconf-generic.h> 48 * struct gpio_irq_chip - GPIO interrupt controller 61 * Interrupt translation domain; responsible for mapping between GPIO 78 * If non-NULL, will be set as the parent of this GPIO interrupt 79 * controller's IRQ domain to establish a hierarchical interrupt 81 * interrupt support. 88 * This callback translates a child hardware IRQ offset to a parent 89 * hardware IRQ offset on a hierarchical interrupt chip. The child 90 * hardware IRQs correspond to the GPIO index 0..ngpio-1 (see the [all …]
|
/linux-6.12.1/drivers/pinctrl/starfive/ |
D | pinctrl-starfive-jh7100.c | 1 // SPDX-License-Identifier: GPL-2.0 26 #include <dt-bindings/pinctrl/pinctrl-starfive-jh7100.h> 29 #include "../pinctrl-utils.h" 33 #define DRIVER_NAME "pinctrl-starfive" 37 * https://github.com/starfive-tech/JH7100_Docs 48 * The following 32-bit registers come in pairs, but only the offset of the 49 * first register is defined. The first controls (interrupts for) GPIO 0-31 and 50 * the second GPIO 32-63. 54 * Interrupt Type. If set to 1 the interrupt is edge-triggered. If set to 0 the 55 * interrupt is level-triggered. [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/soc/ti/ |
D | keystone-navigator-qmss.txt | 5 multi-core Navigator. QMSS consist of queue managers, packed-data structure 9 management of the packet queues. Packets are queued/de-queued by writing or 20 - compatible : Must be "ti,keystone-navigator-qmss". 21 : Must be "ti,66ak2g-navss-qm" for QMSS on K2G SoC. 22 - clocks : phandle to the reference clock for this device. 23 - queue-range : <start number> total range of queue numbers for the device. 24 - linkram0 : <address size> for internal link ram, where size is the total 26 - linkram1 : <address size> for external link ram, where size is the total 29 - qmgrs : child node describing the individual queue managers on the 32 -- managed-queues : the actual queues managed by each queue manager [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/usb/ |
D | octeon-usb.txt | 7 - compatible: must be "cavium,octeon-5750-usbn" 9 - reg: specifies the physical base address of the USBN block and 12 - #address-cells: specifies the number of cells needed to encode an 15 - #size-cells: specifies the number of cells used to represent the size 18 - ranges: specifies the translation between child address space and parent 21 - clock-frequency: speed of the USB reference clock. Allowed values are 24 - cavium,refclk-type: type of the USB reference clock. Allowed values are 27 - refclk-frequency: deprecated, use "clock-frequency". 29 - refclk-type: deprecated, use "cavium,refclk-type". 31 2) Child node [all …]
|
/linux-6.12.1/drivers/mfd/ |
D | mfd-core.c | 1 // SPDX-License-Identifier: GPL-2.0-only 3 * drivers/mfd/mfd-core.c 46 if (!acpi_match_device_ids(adev, wd->ids)) { in match_device_ids() 47 wd->adev = adev; in match_device_ids() 57 const struct mfd_cell_acpi_match *match = cell->acpi_match; in mfd_acpi_add_device() 61 parent = ACPI_COMPANION(pdev->dev.parent); in mfd_acpi_add_device() 66 * MFD child device gets its ACPI handle either from the ACPI device in mfd_acpi_add_device() 75 if (match->pnpid) { in mfd_acpi_add_device() 82 strscpy(ids[0].id, match->pnpid, sizeof(ids[0].id)); in mfd_acpi_add_device() 86 adev = acpi_find_child_device(parent, match->adr, false); in mfd_acpi_add_device() [all …]
|
/linux-6.12.1/drivers/usb/cdns3/ |
D | core.h | 1 /* SPDX-License-Identifier: GPL-2.0 */ 5 * Copyright (C) 2017-2018 NXP 6 * Copyright (C) 2018-2019 Cadence. 20 * struct cdns_role_driver - host/gadget role driver 51 * struct cdns - Representation of Cadence USB3 DRD controller. 53 * @xhci_regs: pointer to base of xhci registers 55 * @dev_regs: pointer to base of dev registers 57 * @otg_v0_regs: pointer to base of v0 otg registers 58 * @otg_v1_regs: pointer to base of v1 otg registers 59 * @otg_cdnsp_regs: pointer to base of CDNSP otg registers [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/pci/ |
D | ralink,rt3883-pci.txt | 7 - compatible: must be "ralink,rt3883-pci" 9 - reg: specifies the physical base address of the controller and 12 - #address-cells: specifies the number of cells needed to encode an 15 - #size-cells: specifies the number of cells used to represent the size 18 - ranges: specifies the translation between child address space and parent 23 - status: indicates the operational status of the device. 26 2) Child nodes 28 The main node must have two child nodes which describes the built-in 29 interrupt controller and the PCI host bridge. 31 a) Interrupt controller: [all …]
|
/linux-6.12.1/drivers/gpio/ |
D | gpio-ixp4xx.c | 1 // SPDX-License-Identifier: GPL-2.0 6 // based on previous work and know-how from: 29 * The hardware uses 3 bits to indicate interrupt "style". 55 * struct ixp4xx_gpio - IXP4 GPIO state container 58 * @base: remapped I/O-memory base 59 * @irq_edge: Each bit represents an IRQ: 1: edge-triggered, 65 void __iomem *base; member 74 __raw_writel(BIT(d->hwirq), g->base + IXP4XX_REG_GPIS); in ixp4xx_gpio_irq_ack() 82 gpiochip_disable_irq(gc, d->hwirq); in ixp4xx_gpio_mask_irq() 90 /* ACK when unmasking if not edge-triggered */ in ixp4xx_gpio_irq_unmask() [all …]
|
D | gpio-visconti.c | 1 // SPDX-License-Identifier: GPL-2.0 14 #include <linux/interrupt.h> 33 void __iomem *base; member 50 spin_lock_irqsave(&priv->lock, flags); in visconti_gpio_irq_set_type() 52 odata = readl(priv->base + GPIO_ODATA); in visconti_gpio_irq_set_type() 53 intmode = readl(priv->base + GPIO_INTMODE); in visconti_gpio_irq_set_type() 78 ret = -EINVAL; in visconti_gpio_irq_set_type() 82 writel(odata, priv->base + GPIO_ODATA); in visconti_gpio_irq_set_type() 83 writel(intmode, priv->base + GPIO_INTMODE); in visconti_gpio_irq_set_type() 88 spin_unlock_irqrestore(&priv->lock, flags); in visconti_gpio_irq_set_type() [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/mmc/ |
D | amlogic,meson-mx-sdio.txt | 13 - compatible : must be one of 14 - "amlogic,meson8-sdio" 15 - "amlogic,meson8b-sdio" 16 along with the generic "amlogic,meson-mx-sdio" 17 - reg : mmc controller base registers 18 - interrupts : mmc controller interrupt 19 - #address-cells : must be 1 20 - size-cells : must be 0 21 - clocks : phandle to clock providers 22 - clock-names : must contain "core" and "clkin" [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/pinctrl/ |
D | brcm,nsp-gpio.txt | 4 - compatible: 5 Must be "brcm,nsp-gpio-a" 7 - reg: 9 GPIO base, IO control registers 11 - #gpio-cells: 16 - gpio-controller: 19 - ngpios: 23 - interrupts: 24 Interrupt ID 26 - interrupt-controller: [all …]
|
/linux-6.12.1/drivers/leds/ |
D | leds-sun50i-a100.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2021-2023 Samuel Holland <samuel@sholland.org> 5 * Partly based on drivers/leds/leds-turris-omnia.c, which is: 12 #include <linux/dma-mapping.h> 14 #include <linux/interrupt.h> 16 #include <linux/led-class-multicolor.h> 75 void __iomem *base; member 103 desc = dmaengine_prep_slave_single(priv->dma_chan, priv->dma_handle, in sun50i_a100_ledc_dma_xfer() 106 return -ENOMEM; in sun50i_a100_ledc_dma_xfer() 110 return -EIO; in sun50i_a100_ledc_dma_xfer() [all …]
|
/linux-6.12.1/drivers/edac/ |
D | altera_edac.c | 1 // SPDX-License-Identifier: GPL-2.0 3 * Copyright (C) 2017-2018, Intel Corporation. All rights reserved 4 * Copyright Altera Corporation (C) 2014-2016. All rights reserved. 5 * Copyright 2011-2012 Calxeda, Inc. 12 #include <linux/firmware/intel/stratix10-smc.h> 14 #include <linux/interrupt.h> 17 #include <linux/mfd/altera-sysmgr.h> 84 struct altr_sdram_mc_data *drvdata = mci->pvt_info; in altr_sdram_mc_err_handler() 85 const struct altr_sdram_prv_data *priv = drvdata->data; in altr_sdram_mc_err_handler() 88 regmap_read(drvdata->mc_vbase, priv->ecc_stat_offset, &status); in altr_sdram_mc_err_handler() [all …]
|
/linux-6.12.1/drivers/pinctrl/ |
D | pinctrl-st.c | 1 // SPDX-License-Identifier: GPL-2.0-only 100 * (direction, retime-type, retime-clk, retime-delay) 102 * +----------------+ 103 *[31:28]| reserved-3 | 104 * +----------------+------------- 106 * +----------------+ v 108 * +----------------+ ^ 110 * +----------------+------------- 111 *[24] | reserved-2 | 112 * +----------------+------------- [all …]
|
/linux-6.12.1/Documentation/devicetree/bindings/crypto/ |
D | fsl-sec6.txt | 4 -SEC 6 Node 5 -Job Ring Node 6 -Full Example 13 Node defines the base address of the SEC 6 block. 20 - compatible 23 Definition: Must include "fsl,sec-v6.0". 25 - fsl,sec-era 31 - #address-cells 35 for representing physical addresses in child nodes. 37 - #size-cells [all …]
|
/linux-6.12.1/drivers/iio/adc/ |
D | xilinx-ams.c | 1 // SPDX-License-Identifier: GPL-2.0 15 #include <linux/devm-helpers.h> 16 #include <linux/interrupt.h> 123 #define AMS_ALARM_THR_MAX (BIT(16) - 1) 164 #define AMS_TEMP_OFFSET -((280230LL << 16) / 509314) 267 * struct ams - This structure contains necessary state for xilinx-ams to operate 268 * @base: physical base address of device 269 * @ps_base: physical base address of PS device 270 * @pl_base: physical base address of PL device 274 * @intr_lock: to protect interrupt mask values [all …]
|