• Linus Torvalds's avatar
    Merge tag 'irq-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip · 3d3b44a6
    Linus Torvalds authored
    Pull irq updates from Thomas Gleixner:
     "The interrupt departement provides:
    
       - A mechanism to shield isolated tasks from managed interrupts:
    
         The affinity of managed interrupts is completely controlled by the
         kernel and user space has no influence on them. The reason is that
         the automatically assigned affinity correlates to the multi-queue
         CPU handling of block devices.
    
         If the generated affinity mask spaws both housekeeping and isolated
         CPUs the interrupt could be routed to an isolated CPU which would
         then be disturbed by I/O submitted by a housekeeping CPU.
    
         The new mechamism ensures that as long as one housekeeping CPU is
         online in the assigned affinity mask the interrupt is routed to a
         housekeeping CPU.
    
         If there is no online housekeeping CPU in the affinity mask, then
         the interrupt is routed to an isolated CPU to keep the device queue
         intact, but unless the isolated CPU submits I/O by itself these
         interrupts are not raised.
    
       - A small addon to the device tree irqdomain core code to avoid
         duplication in irq chip drivers
    
       - Conversion of the SiFive PLIC to hierarchical domains
    
       - The usual pile of new irq chip drivers: SiFive GPIO, Aspeed SCI,
         NXP INTMUX, Meson A1 GPIO
    
       - The first cut of support for the new ARM GICv4.1
    
       - The usual pile of fixes and improvements in core and driver code"
    
    * tag 'irq-core-2020-01-28' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip: (33 commits)
      genirq, sched/isolation: Isolate from handling managed interrupts
      irqchip/gic-v4.1: Allow direct invalidation of VLPIs
      irqchip/gic-v4.1: Suppress per-VLPI doorbell
      irqchip/gic-v4.1: Add VPE INVALL callback
      irqchip/gic-v4.1: Add VPE eviction callback
      irqchip/gic-v4.1: Add VPE residency callback
      irqchip/gic-v4.1: Add mask/unmask doorbell callbacks
      irqchip/gic-v4.1: Plumb skeletal VPE irqchip
      irqchip/gic-v4.1: Implement the v4.1 flavour of VMOVP
      irqchip/gic-v4.1: Don't use the VPE proxy if RVPEID is set
      irqchip/gic-v4.1: Implement the v4.1 flavour of VMAPP
      irqchip/gic-v4.1: VPE table (aka GICR_VPROPBASER) allocation
      irqchip/gic-v3: Add GICv4.1 VPEID size discovery
      irqchip/gic-v3: Detect GICv4.1 supporting RVPEID
      irqchip/gic-v3-its: Fix get_vlpi_map() breakage with doorbells
      irqdomain: Fix a memory leak in irq_domain_push_irq()
      irqchip: Add NXP INTMUX interrupt multiplexer support
      dt-bindings: interrupt-controller: Add binding for NXP INTMUX interrupt multiplexer
      irqchip: Define EXYNOS_IRQ_COMBINER
      irqchip/meson-gpio: Add support for meson a1 SoCs
      ...
    3d3b44a6
Kconfig 44 KB