<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel.git/drivers/irqchip/Makefile, branch linux-5.17.y</title>
<subtitle>Hosts the 0x221E linux distro kernel.
</subtitle>
<id>https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.17.y</id>
<link rel='self' href='https://git.0xinfinity.dev/distro/kernel.git/atom?h=linux-5.17.y'/>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/'/>
<updated>2021-10-20T18:40:54Z</updated>
<entry>
<title>irqchip/mchp-eic: Add support for the Microchip EIC</title>
<updated>2021-10-20T18:40:54Z</updated>
<author>
<name>Claudiu Beznea</name>
</author>
<published>2021-09-27T06:36:57Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=00fa3461c86dd289b441d4d5a6bb236064bd207b'/>
<id>urn:sha1:00fa3461c86dd289b441d4d5a6bb236064bd207b</id>
<content type='text'>
Add support for Microchip External Interrupt Controller. The controller
supports 2 external interrupt lines. For every external input there is
a connection to GIC. The interrupt controllers contains only 4
registers:
- EIC_GFCS (read only): which indicates that glitch filter configuration
  is ready (not addressed in this implementation)
- EIC_SCFG0R, EIC_SCFG1R (read, write): allows per interrupt specific
  settings: enable, polarity/edge settings, glitch filter settings
- EIC_WPMR, EIC_WPSR: enables write protection mode specific settings
  (which are architecture specific) for the controller and are not
  addressed in this implementation

Signed-off-by: Claudiu Beznea &lt;claudiu.beznea@microchip.com&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Link: https://lore.kernel.org/r/20210927063657.2157676-3-claudiu.beznea@microchip.com
</content>
</entry>
<entry>
<title>Merge tag 'arm-apple-m1-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc</title>
<updated>2021-04-26T19:30:36Z</updated>
<author>
<name>Linus Torvalds</name>
</author>
<published>2021-04-26T19:30:36Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=0c855563182001c829065faa17f8e29e9ceffe13'/>
<id>urn:sha1:0c855563182001c829065faa17f8e29e9ceffe13</id>
<content type='text'>
Pull ARM Apple M1 platform support from Arnd Bergmann:
 "The Apple M1 is the processor used it all current generation Apple
  Macintosh computers. Support for this platform so far is rudimentary,
  but it boots and can use framebuffer and serial console over a special
  USB cable.

  Support for several essential on-chip devices (USB, PCIe, IOMMU, NVMe)
  is work in progress but was not ready in time.

  A very detailed description of what works is in the commit message of
  commit 1bb2fd3880d4 ("Merge tag 'm1-soc-bringup-v5' [..]") and on the
  AsahiLinux wiki"

Link: https://lore.kernel.org/linux-arm-kernel/bdb18e9f-fcd7-1e31-2224-19c0e5090706@marcan.st/

* tag 'arm-apple-m1-5.13' of git://git.kernel.org/pub/scm/linux/kernel/git/soc/soc:
  asm-generic/io.h: Unbork ioremap_np() declaration
  arm64: apple: Add initial Apple Mac mini (M1, 2020) devicetree
  dt-bindings: display: Add apple,simple-framebuffer
  arm64: Kconfig: Introduce CONFIG_ARCH_APPLE
  irqchip/apple-aic: Add support for the Apple Interrupt Controller
  dt-bindings: interrupt-controller: Add DT bindings for apple-aic
  arm64: Move ICH_ sysreg bits from arm-gic-v3.h to sysreg.h
  of/address: Add infrastructure to declare MMIO as non-posted
  asm-generic/io.h: implement pci_remap_cfgspace using ioremap_np
  arm64: Implement ioremap_np() to map MMIO as nGnRnE
  docs: driver-api: device-io: Document ioremap() variants &amp; access funcs
  docs: driver-api: device-io: Document I/O access functions
  asm-generic/io.h:  Add a non-posted variant of ioremap()
  arm64: arch_timer: Implement support for interrupt-names
  dt-bindings: timer: arm,arch_timer: Add interrupt-names support
  arm64: cputype: Add CPU implementor &amp; types for the Apple M1 cores
  dt-bindings: arm: cpus: Add apple,firestorm &amp; icestorm compatibles
  dt-bindings: arm: apple: Add bindings for Apple ARM platforms
  dt-bindings: vendor-prefixes: Add apple prefix
</content>
</entry>
<entry>
<title>irqchip: Add support for IDT 79rc3243x interrupt controller</title>
<updated>2021-04-22T15:03:18Z</updated>
<author>
<name>Thomas Bogendoerfer</name>
</author>
<published>2021-04-22T14:53:28Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=529ea36818112530791a2ec083a1a3066be6174c'/>
<id>urn:sha1:529ea36818112530791a2ec083a1a3066be6174c</id>
<content type='text'>
IDT 79rc3243x SoCs have rather simple interrupt controllers connected
to the MIPS CPU interrupt lines. Each of them has room for up to
32 interrupts.

Signed-off-by: Thomas Bogendoerfer &lt;tsbogend@alpha.franken.de&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Link: https://lore.kernel.org/r/20210422145330.73452-1-tsbogend@alpha.franken.de
</content>
</entry>
<entry>
<title>irqchip/apple-aic: Add support for the Apple Interrupt Controller</title>
<updated>2021-04-08T11:18:41Z</updated>
<author>
<name>Hector Martin</name>
</author>
<published>2021-01-20T23:55:15Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=76cde26394114f6af2710c6b2ad6854f1e8ee859'/>
<id>urn:sha1:76cde26394114f6af2710c6b2ad6854f1e8ee859</id>
<content type='text'>
This is the root interrupt controller used on Apple ARM SoCs such as the
M1. This irqchip driver performs multiple functions:

* Handles both IRQs and FIQs

* Drives the AIC peripheral itself (which handles IRQs)

* Dispatches FIQs to downstream hard-wired clients (currently the ARM
  timer).

* Implements a virtual IPI multiplexer to funnel multiple Linux IPIs
  into a single hardware IPI

Reviewed-by: Marc Zyngier &lt;maz@kernel.org&gt;
Acked-by: Will Deacon &lt;will@kernel.org&gt;
Signed-off-by: Hector Martin &lt;marcan@marcan.st&gt;
</content>
</entry>
<entry>
<title>irqchip: Add driver for WPCM450 interrupt controller</title>
<updated>2021-04-07T12:26:00Z</updated>
<author>
<name>Jonathan Neuschäfer</name>
</author>
<published>2021-04-06T12:09:17Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=fead4dd496631707549f414b4059afb86ea8fb80'/>
<id>urn:sha1:fead4dd496631707549f414b4059afb86ea8fb80</id>
<content type='text'>
The WPCM450 AIC ("Advanced Interrupt Controller") is the interrupt
controller found in the Nuvoton WPCM450 SoC and other Winbond/Nuvoton
SoCs.

The list of registers if based on the AMI vendor kernel and the
Nuvoton W90N745 datasheet.

Although the hardware supports other interrupt modes, the driver only
supports high-level interrupts at the moment, because other modes could
not be tested so far.

Signed-off-by: Jonathan Neuschäfer &lt;j.neuschaefer@gmx.net&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Link: https://lore.kernel.org/r/20210406120921.2484986-7-j.neuschaefer@gmx.net
</content>
</entry>
<entry>
<title>irqchip: Add support for Realtek RTL838x/RTL839x interrupt controller</title>
<updated>2021-02-04T10:36:15Z</updated>
<author>
<name>Bert Vermeulen</name>
</author>
<published>2021-01-22T20:42:24Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=9f3a0f34b84ad1b9a8f2bdae44b66f16685b2143'/>
<id>urn:sha1:9f3a0f34b84ad1b9a8f2bdae44b66f16685b2143</id>
<content type='text'>
This is a standard IRQ driver with only status and mask registers.

The mapping from SoC interrupts (18-31) to MIPS core interrupts is
done via an interrupt-map in device tree.

Signed-off-by: Bert Vermeulen &lt;bert@biot.com&gt;
Signed-off-by: Birger Koblitz &lt;mail@birger-koblitz.de&gt;
Acked-by: John Crispin &lt;john@phrozen.org&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Link: https://lore.kernel.org/r/20210122204224.509124-3-bert@biot.com
</content>
</entry>
<entry>
<title>irqchip/sun6i-r: Use a stacked irqchip driver</title>
<updated>2021-01-21T20:21:49Z</updated>
<author>
<name>Samuel Holland</name>
</author>
<published>2021-01-18T05:50:33Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=4e34614636b31747b190488240a95647c227021f'/>
<id>urn:sha1:4e34614636b31747b190488240a95647c227021f</id>
<content type='text'>
The R_INTC in the A31 and newer sun8i/sun50i SoCs is more similar to the
original sun4i interrupt controller than the sun7i/sun9i NMI controller.
It is used for two distinct purposes:
 - To control the trigger, latch, and mask for the NMI input pin
 - To provide the interrupt input for the ARISC coprocessor

As this interrupt controller is not documented, information about it
comes from vendor-provided firmware blobs and from experimentation.

Differences from the sun4i interrupt controller appear to be:
 - It only has one or two registers of each kind (max 32 or 64 IRQs)
 - Multiplexing logic is added to support additional inputs
 - There is no FIQ-related logic
 - There is no interrupt priority logic

In order to fulfill its two purposes, this hardware block combines four
types of IRQs. First, the NMI pin is routed to the "IRQ 0" input on this
chip, with a trigger type controlled by the NMI_CTRL_REG. The "IRQ 0
pending" output from this chip, if enabled, is then routed to a SPI IRQ
input on the GIC. In other words, bit 0 of IRQ_ENABLE_REG *does* affect
the NMI IRQ seen at the GIC.

The NMI is followed by a contiguous block of 15 "direct" (my name for
them) IRQ inputs that are connected in parallel to both R_INTC and the
GIC. Or in other words, these bits of IRQ_ENABLE_REG *do not* affect the
IRQs seen at the GIC.

Following the direct IRQs are the ARISC's copy of banked IRQs for shared
peripherals. These are not relevant to Linux. The remaining IRQs are
connected to a multiplexer and provide access to the first (up to) 128
SPIs from the ARISC. This range of SPIs overlaps with the direct IRQs.

Because of the 1:1 correspondence between R_INTC and GIC inputs, this is
a perfect scenario for using a stacked irqchip driver. We want to hook
into setting the NMI trigger type, but not actually handle any IRQ here.

To allow access to all multiplexed IRQs, this driver requires a new
binding where the interrupt number matches the GIC interrupt number.
(This moves the NMI from number 0 to 32 or 96, depending on the SoC.)
For simplicity, copy the three-cell GIC binding; this disambiguates
interrupt 0 in the old binding (the NMI) from interrupt 0 in the new
binding (SPI 0) by the number of cells.

Since R_INTC is in the always-on power domain, and its output is visible
to the power management coprocessor, a stacked irqchip driver provides a
simple way to add wakeup support to any of its IRQs. That is the next
patch; for now, just the NMI is moved over.

This commit mostly reverts commit 173bda53b340 ("irqchip/sunxi-nmi:
Support sun6i-a31-r-intc compatible").

Acked-by: Maxime Ripard &lt;mripard@kernel.org&gt;
Signed-off-by: Samuel Holland &lt;samuel@sholland.org&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Link: https://lore.kernel.org/r/20210118055040.21910-4-samuel@sholland.org
</content>
</entry>
<entry>
<title>irqchip: Remove sirfsoc driver</title>
<updated>2021-01-21T20:21:41Z</updated>
<author>
<name>Arnd Bergmann</name>
</author>
<published>2021-01-20T13:30:08Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=5c1ea0d842b1e73ae04870527ec29d5479c35041'/>
<id>urn:sha1:5c1ea0d842b1e73ae04870527ec29d5479c35041</id>
<content type='text'>
The CSR SiRF prima2/atlas platforms are getting removed, so this driver
is no longer needed.

Cc: Barry Song &lt;baohua@kernel.org&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Acked-by: Barry Song &lt;baohua@kernel.org&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Link: https://lore.kernel.org/r/20210120133008.2421897-3-arnd@kernel.org
</content>
</entry>
<entry>
<title>irqchip: Remove sigma tango driver</title>
<updated>2021-01-21T20:21:23Z</updated>
<author>
<name>Arnd Bergmann</name>
</author>
<published>2021-01-20T13:30:07Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=00e772c4929257b11b51d47e4645f67826ded0fc'/>
<id>urn:sha1:00e772c4929257b11b51d47e4645f67826ded0fc</id>
<content type='text'>
The tango platform is getting removed, so the driver is no
longer needed.

Cc: Marc Gonzalez &lt;marc.w.gonzalez@free.fr&gt;
Cc: Mans Rullgard &lt;mans@mansr.com&gt;
Signed-off-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
Acked-by: Mans Rullgard &lt;mans@mansr.com&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Link: https://lore.kernel.org/r/20210120133008.2421897-2-arnd@kernel.org
</content>
</entry>
<entry>
<title>drivers/irqchip: Remove EZChip NPS interrupt controller</title>
<updated>2020-12-11T14:47:50Z</updated>
<author>
<name>Vineet Gupta</name>
</author>
<published>2020-11-05T21:22:09Z</published>
<link rel='alternate' type='text/html' href='https://git.0xinfinity.dev/distro/kernel.git/commit/?id=04e7f423f4a96ad492fd51bf2234b8982400ab5f'/>
<id>urn:sha1:04e7f423f4a96ad492fd51bf2234b8982400ab5f</id>
<content type='text'>
NPS platform has been removed from ARC port and there are no in-tree
users of it now. So RIP !

Signed-off-by: Vineet Gupta &lt;vgupta@synopsys.com&gt;
Signed-off-by: Marc Zyngier &lt;maz@kernel.org&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
Cc: Jason Cooper &lt;jason@lakedaemon.net&gt;
Cc: Marc Zyngier &lt;maz@kernel.org&gt;
Cc: linux-kernel@vger.kernel.org
Link: https://lore.kernel.org/r/20201105212210.1891598-3-vgupta@synopsys.com
</content>
</entry>
</feed>
