<feed xmlns='http://www.w3.org/2005/Atom'>
<title>kernel/git/stable/linux.git/arch/arm/common/vic.c, branch master</title>
<subtitle>Linux kernel stable tree</subtitle>
<id>https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=master</id>
<link rel='self' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/atom?h=master'/>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/'/>
<updated>2013-01-12T16:52:14+00:00</updated>
<entry>
<title>irqchip: Move ARM VIC to drivers/irqchip</title>
<updated>2013-01-12T16:52:14+00:00</updated>
<author>
<name>Rob Herring</name>
<email>rob.herring@calxeda.com</email>
</author>
<published>2012-10-27T22:25:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=44430ec068b207f985aa00b1d34bb5085dbc39d5'/>
<id>urn:sha1:44430ec068b207f985aa00b1d34bb5085dbc39d5</id>
<content type='text'>
Now that we have drivers/irqchip, move VIC irqchip to drivers/irqchip.

Signed-off-by: Rob Herring &lt;rob.herring@calxeda.com&gt;
Cc: Russell King &lt;linux@arm.linux.org.uk&gt;
Cc: Thomas Gleixner &lt;tglx@linutronix.de&gt;
</content>
</entry>
<entry>
<title>ARM: remove mach .handle_irq for VIC users</title>
<updated>2013-01-12T16:48:04+00:00</updated>
<author>
<name>Rob Herring</name>
<email>rob.herring@calxeda.com</email>
</author>
<published>2012-11-05T22:32:29+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=a0368029133f005251e218d98d4ca053afaafe6f'/>
<id>urn:sha1:a0368029133f005251e218d98d4ca053afaafe6f</id>
<content type='text'>
Now that the VIC initialization sets up the handle_arch_irq pointer, we
can remove it for all machines and make it static. Move vic_handle_irq
to avoid a forward declaration.

Signed-off-by: Rob Herring &lt;rob.herring@calxeda.com&gt;
Cc: Ryan Mallon &lt;rmallon@gmail.com&gt;
Cc: Russell King &lt;linux@arm.linux.org.uk&gt;
Cc: Hubert Feurstein &lt;hubert.feurstein@contec.at&gt;
Cc: Alessandro Rubini &lt;rubini@unipv.it&gt;
Cc: STEricsson &lt;STEricsson_nomadik_linux@list.st.com&gt;
Cc: Ben Dooks &lt;ben-linux@fluff.org&gt;
Cc: Kyungmin Park &lt;kyungmin.park@samsung.com&gt;
Cc: Shiraz Hashim &lt;shiraz.hashim@st.com&gt;
Cc: Rajeev Kumar &lt;rajeev-dlh.kumar@st.com&gt;
Acked-by: H Hartley Sweeten &lt;hsweeten@visionengravers.com&gt;
Acked-by: Jamie Iles &lt;jamie@jamieiles.com&gt;
Acked-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Acked-by: Mark Brown &lt;broonie@opensource.wolfsonmicro.com&gt;
Acked-by: Viresh Kumar &lt;viresh.kumar@linaro.org&gt;
Acked-by: Kukjin Kim &lt;kgene.kim@samsung.com&gt;
Acked-by: Olof Johansson &lt;olof@lixom.net&gt;
Acked-by: Arnd Bergmann &lt;arnd@arndb.de&gt;
</content>
</entry>
<entry>
<title>ARM: VIC: set handle_arch_irq in VIC initialization</title>
<updated>2013-01-12T16:47:34+00:00</updated>
<author>
<name>Rob Herring</name>
<email>rob.herring@calxeda.com</email>
</author>
<published>2012-11-21T01:55:27+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=7fb7d8ae1036f1002fe8b16c15cc26d32046df64'/>
<id>urn:sha1:7fb7d8ae1036f1002fe8b16c15cc26d32046df64</id>
<content type='text'>
Set handle_arch_irq to vic_handle_irq. Only the first VIC initialized can
setup the handler.

Signed-off-by: Rob Herring &lt;rob.herring@calxeda.com&gt;
Acked-by: Olof Johansson &lt;olof@lixom.net&gt;
</content>
</entry>
<entry>
<title>ARM: VIC: shrink down vic.h</title>
<updated>2013-01-12T16:47:33+00:00</updated>
<author>
<name>Rob Herring</name>
<email>rob.herring@calxeda.com</email>
</author>
<published>2012-11-06T19:14:26+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=cf21af5458cafc3c1bd2864e6f789de32ba778f6'/>
<id>urn:sha1:cf21af5458cafc3c1bd2864e6f789de32ba778f6</id>
<content type='text'>
Move all register defines except VIC_INT_ENABLE and VIC_INT_ENABLE_CLEAR
which are used by Samsung.

With multi irq handler, vic.h is not included in assembly any more, so
we can remove the assembly ifdefs.

Signed-off-by: Rob Herring &lt;rob.herring@calxeda.com&gt;
Cc: Russell King &lt;linux@arm.linux.org.uk&gt;
Acked-by: Olof Johansson &lt;olof@lixom.net&gt;
</content>
</entry>
<entry>
<title>ARM: 7611/1: VIC: fix bug in VIC irqdomain code</title>
<updated>2013-01-02T10:35:07+00:00</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2012-12-26T00:39:16+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=5ced33bc06e7e76cb8a236f15bff49eb6155b618'/>
<id>urn:sha1:5ced33bc06e7e76cb8a236f15bff49eb6155b618</id>
<content type='text'>
The VIC irqdomain code added in commit
07c9249f1fa90cc8189bed44c0bcece664596a72
"ARM: 7554/1: VIC: use irq_domain_add_simple()"

Had two bugs:

1) It didn't call irq_create_mapping() once on each
   valid irq source in the slowpath when registering
   the controller.

2) It passed a -1 as IRQ offset for the DT case, whereas
   0 should be passed as invalid IRQ instead.

Cc: Grant Likely &lt;grant.likely@secretlab.ca&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: vic: fix build warning caused by previous commit</title>
<updated>2012-11-08T10:48:30+00:00</updated>
<author>
<name>Russell King</name>
<email>rmk+kernel@arm.linux.org.uk</email>
</author>
<published>2012-11-08T10:48:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=946c59a08a2497303750c0fee4367ca32009155c'/>
<id>urn:sha1:946c59a08a2497303750c0fee4367ca32009155c</id>
<content type='text'>
07c9249f1f (ARM: 7554/1: VIC: use irq_domain_add_simple()) removed the
use of 'irq_base' but did not remove the variable itself, which causes:

arch/arm/common/vic.c: In function 'vic_of_init':
arch/arm/common/vic.c:410:6: warning: unused variable 'irq_base'

Remove this now unused variable.

Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: 7554/1: VIC: use irq_domain_add_simple()</title>
<updated>2012-10-18T10:11:16+00:00</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2012-10-16T17:50:00+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=07c9249f1fa90cc8189bed44c0bcece664596a72'/>
<id>urn:sha1:07c9249f1fa90cc8189bed44c0bcece664596a72</id>
<content type='text'>
Instead of allocating descriptors on-the-fly for the device tree
initialization case, use irq_domain_add_simple() which will take
care of this if you pass negative as the first_irq.

Alter the signature of __vic_init() to pass the first_irq as
signed so this works as expected.

Switching the VIC to use irq_domain_add_simple() also has the
upside of displaying the same WARNING when you boot with
pre-allocated descriptors on systems using SPARSE_IRQ but
yet not using device tree.

Cc: Grant Likely &lt;grant.likely@secretlab.ca&gt;
Acked-by: Rob Herring &lt;rob.herring@calxeda.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: 7395/1: VIC: use the domain mapping function to assign handlers</title>
<updated>2012-04-25T11:57:07+00:00</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2012-04-20T07:02:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=ce94df9c099d2a828610576f31dddfa552243edc'/>
<id>urn:sha1:ce94df9c099d2a828610576f31dddfa552243edc</id>
<content type='text'>
This removes the internal functions for assigning IRQ
handlers to each interrupt in favor of using the internal
map iterator in the irq domain code.

Cc: Will Deacon &lt;will.deacon@arm.com&gt;
Cc: Grant Likely &lt;grant.likely@secretlab.ca&gt;
Cc: Rob Herring &lt;rob.herring@calxeda.com&gt;
Acked-by: Jamie Iles &lt;jamie@jamieiles.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: 7394/1: VIC: respect list of valid sources</title>
<updated>2012-04-25T11:57:07+00:00</updated>
<author>
<name>Linus Walleij</name>
<email>linus.walleij@linaro.org</email>
</author>
<published>2012-04-20T07:02:03+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=fa943bed68c85e1ebac4b9dd6398ad6fd0f53567'/>
<id>urn:sha1:fa943bed68c85e1ebac4b9dd6398ad6fd0f53567</id>
<content type='text'>
The current IRQ domain implementation in the VIC allocates 32
interrupts for each VIC instance no matter whether the
controller actually use all the IRQs or not. Alter this so
we only allocate a domain up until the last IRQ marked valid.

Cc: Will Deacon &lt;will.deacon@arm.com&gt;
Cc: Grant Likely &lt;grant.likely@secretlab.ca&gt;
Cc: Rob Herring &lt;rob.herring@calxeda.com&gt;
Acked-by: Jamie Iles &lt;jamie@jamieiles.com&gt;
Signed-off-by: Linus Walleij &lt;linus.walleij@linaro.org&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
<entry>
<title>ARM: 7377/1: vic: re-read status register before dispatching each IRQ handler</title>
<updated>2012-04-10T08:27:42+00:00</updated>
<author>
<name>Will Deacon</name>
<email>will.deacon@arm.com</email>
</author>
<published>2012-04-05T18:42:10+00:00</published>
<link rel='alternate' type='text/html' href='https://git.rulkc.org/pub/scm/linux/kernel/git/stable/linux.git/commit/?id=34af657916332e89564566bc8d35e3e06cc0c236'/>
<id>urn:sha1:34af657916332e89564566bc8d35e3e06cc0c236</id>
<content type='text'>
handle_IRQ may briefly cause interrupts to be re-enabled during soft IRQ
processing on the exit path, leading to nested handling of VIC interrupts.

Since the current code does not re-read the VIC_IRQ_STATUS register, this
can lead to multiple invocations of the same interrupt handler and
spurious interrupts to be reported.

This patch changes the VIC interrupt dispatching code to re-read the
status register each time, avoiding duplicate invocations of the same
handler.

Acked-and-Tested-by: H Hartley Sweeten &lt;hsweeten@visionengravers.com&gt;

Reviewed-by: Jamie Iles &lt;jamie@jamieiles.com&gt;
Signed-off-by: Will Deacon &lt;will.deacon@arm.com&gt;
Signed-off-by: Russell King &lt;rmk+kernel@arm.linux.org.uk&gt;
</content>
</entry>
</feed>
