<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: Interrupt definitions in DTS (device tree) files for Xilinx Zynq-7000 / ARM</title>
	<atom:link href="http://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/feed/" rel="self" type="application/rss+xml" />
	<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/</link>
	<description>Anything I found worthy to write down.</description>
	<lastBuildDate>Thu, 26 Mar 2026 13:15:15 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.1.2</generator>
	<item>
		<title>By: cook</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-1548</link>
		<dc:creator>cook</dc:creator>
		<pubDate>Tue, 14 Sep 2021 21:10:49 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-1548</guid>
		<description>This is great.  Thanks for the writeup!</description>
		<content:encoded><![CDATA[<p>This is great.  Thanks for the writeup!</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Alex Matveev</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-1237</link>
		<dc:creator>Alex Matveev</dc:creator>
		<pubDate>Fri, 24 Feb 2017 11:57:09 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-1237</guid>
		<description>Thanks for the article.

One correction though: you got SPI flag values wrong. SPI corresponds to zero value, see:
- handling in gic_irq_domain_translate() (in either drivers/irqchip/irq-gic.c or drivers/irqchip/irq-gicv3.c),
- definitions in include/dt-bindings/interrupt-controller/arm-gic.h,
- description in Documentation/devicetree/bindings/interrupt-controller/arm,gic.txt.</description>
		<content:encoded><![CDATA[<p>Thanks for the article.</p>
<p>One correction though: you got SPI flag values wrong. SPI corresponds to zero value, see:<br />
- handling in gic_irq_domain_translate() (in either drivers/irqchip/irq-gic.c or drivers/irqchip/irq-gicv3.c),<br />
- definitions in include/dt-bindings/interrupt-controller/arm-gic.h,<br />
- description in Documentation/devicetree/bindings/interrupt-controller/arm,gic.txt.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kyle</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-967</link>
		<dc:creator>Kyle</dc:creator>
		<pubDate>Thu, 24 Jul 2014 21:07:31 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-967</guid>
		<description>Thanks again.</description>
		<content:encoded><![CDATA[<p>Thanks again.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: eli</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-966</link>
		<dc:creator>eli</dc:creator>
		<pubDate>Thu, 24 Jul 2014 19:45:05 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-966</guid>
		<description>Hi,

The DTS file is compiled into a DTB by the dtc compiler, and it interprets both hex numbers and decimal properly. It&#039;s therefore quite far-fetched to blame the hex vs. decimal representation of constants.

Eli</description>
		<content:encoded><![CDATA[<p>Hi,</p>
<p>The DTS file is compiled into a DTB by the dtc compiler, and it interprets both hex numbers and decimal properly. It&#8217;s therefore quite far-fetched to blame the hex vs. decimal representation of constants.</p>
<p>Eli</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kyle</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-965</link>
		<dc:creator>Kyle</dc:creator>
		<pubDate>Thu, 24 Jul 2014 19:41:43 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-965</guid>
		<description>format issues. 

interrupt-parent = &amp;ps7_axi-interconect_0
interrupts = 0 5 4, 0 6 4
reg = 0xf8891000 0x1000, 0xf8893000 0x1000</description>
		<content:encoded><![CDATA[<p>format issues. </p>
<p>interrupt-parent = &amp;ps7_axi-interconect_0<br />
interrupts = 0 5 4, 0 6 4<br />
reg = 0xf8891000 0x1000, 0xf8893000 0x1000</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Kyle</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-964</link>
		<dc:creator>Kyle</dc:creator>
		<pubDate>Thu, 24 Jul 2014 19:39:02 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-964</guid>
		<description>I&#039;ve been working on booting a custom configuration using a Zedboard and I&#039;m currently digging into the dtb. I noticed an inconsistency between your example and the file from the linux-xlnx-master repository in the directory arch\arm\boot\dts\zynq-zed.dts. You list your interrupt configuration values in hex whereas the downloaded dts does not appear to be in hex. Would you expect that this will cause an issue? I was thinking that it might not matter at runtime but I&#039;ve learned that it&#039;s not wise to assume that the provided materials are error free.

from the zynq-zed.dts file:

pmu {
	compatible = &quot;arm,cortex-a9-pmu&quot;;
	interrupt-parent = ;
	interrupts = , ;
	reg = , ;
	reg-names = &quot;cpu0&quot;, &quot;cpu1&quot;;
} ;

Thanks for blogging.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve been working on booting a custom configuration using a Zedboard and I&#8217;m currently digging into the dtb. I noticed an inconsistency between your example and the file from the linux-xlnx-master repository in the directory arch\arm\boot\dts\zynq-zed.dts. You list your interrupt configuration values in hex whereas the downloaded dts does not appear to be in hex. Would you expect that this will cause an issue? I was thinking that it might not matter at runtime but I&#8217;ve learned that it&#8217;s not wise to assume that the provided materials are error free.</p>
<p>from the zynq-zed.dts file:</p>
<p>pmu {<br />
	compatible = &#8220;arm,cortex-a9-pmu&#8221;;<br />
	interrupt-parent = ;<br />
	interrupts = , ;<br />
	reg = , ;<br />
	reg-names = &#8220;cpu0&#8243;, &#8220;cpu1&#8243;;<br />
} ;</p>
<p>Thanks for blogging.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sven</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-869</link>
		<dc:creator>Sven</dc:creator>
		<pubDate>Wed, 22 May 2013 07:24:15 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-869</guid>
		<description>I have now narrowed down the problem. Here it says how to configure the device tree with PPI: http://www.mjmwired.net/kernel/Documentation/devicetree/bindings/arm/gic.txt

So my interrupts entry in the DTS file looks like this for the signal Core1_nFIQ, rising edge: 
12 = 28 - 16, the range for PPI interrupts is 0..15

Unfortunately the kernel is not willing to insert the module. irq_settings_is_per_cpu_devid fails in request_threaded_irq. The problem might be, that an IRQ with number as low as 19 don&#039;t exist. When I list all IRQs in /proc they only start at number 16.</description>
		<content:encoded><![CDATA[<p>I have now narrowed down the problem. Here it says how to configure the device tree with PPI: <a href="http://www.mjmwired.net/kernel/Documentation/devicetree/bindings/arm/gic.txt" rel="nofollow">http://www.mjmwired.net/kernel/Documentation/devicetree/bindings/arm/gic.txt</a></p>
<p>So my interrupts entry in the DTS file looks like this for the signal Core1_nFIQ, rising edge:<br />
12 = 28 &#8211; 16, the range for PPI interrupts is 0..15</p>
<p>Unfortunately the kernel is not willing to insert the module. irq_settings_is_per_cpu_devid fails in request_threaded_irq. The problem might be, that an IRQ with number as low as 19 don&#8217;t exist. When I list all IRQs in /proc they only start at number 16.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sven</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-868</link>
		<dc:creator>Sven</dc:creator>
		<pubDate>Wed, 22 May 2013 06:15:19 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-868</guid>
		<description>Hi Eli,

thanks for your response. Unfortunately I am not able to find the information I am looking for on the page you have provided.

Sven</description>
		<content:encoded><![CDATA[<p>Hi Eli,</p>
<p>thanks for your response. Unfortunately I am not able to find the information I am looking for on the page you have provided.</p>
<p>Sven</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: eli</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-867</link>
		<dc:creator>eli</dc:creator>
		<pubDate>Tue, 21 May 2013 15:27:45 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-867</guid>
		<description>Maybe this helps:

http://xillybus.com/tutorials/device-tree-zynq-4</description>
		<content:encoded><![CDATA[<p>Maybe this helps:</p>
<p><a href="http://xillybus.com/tutorials/device-tree-zynq-4" rel="nofollow">http://xillybus.com/tutorials/device-tree-zynq-4</a></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Sven</title>
		<link>https://billauer.se/blog/2012/08/irq-zynq-dts-cortex-a9/comment-page-1/#comment-866</link>
		<dc:creator>Sven</dc:creator>
		<pubDate>Tue, 21 May 2013 14:50:22 +0000</pubDate>
		<guid isPermaLink="false">https://billauer.se/blog/?p=3051#comment-866</guid>
		<description>Hi everyone. Is it actually possible to handle PPI interrupts with Linux in a SMP configuration? I am thinking about the Core0_nIRQ or Core1_nIRQ signals. If so, what is different in the implementation and how do I calculate the interrupt number? Thanks.

Sven</description>
		<content:encoded><![CDATA[<p>Hi everyone. Is it actually possible to handle PPI interrupts with Linux in a SMP configuration? I am thinking about the Core0_nIRQ or Core1_nIRQ signals. If so, what is different in the implementation and how do I calculate the interrupt number? Thanks.</p>
<p>Sven</p>
]]></content:encoded>
	</item>
</channel>
</rss>
