History log of /arch/mn10300/kernel/irq.c
Revision Date Author Comments
7d361cb754720d69695a3efc973e9a1a51e46b21 12-Dec-2012 Mark Salter <msalter@redhat.com> MN10300: cleanup IRQ affinity setting

The irq_set_affinity handler for the mn10300 cpu pic had some hard-coded IRQs
which were not to be migrated from one cpu to another. This patch cleans those
up by using a combination of IRQF_NOBALANCING and specialized irq chips with
no irq_set_affinity handler. This maintains the previous behavior by using
generic IRQ interfaces rather than hard coding IRQ numbers in the default
irq_set_affinity handler.

Signed-off-by: Mark Salter <msalter@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
6b4fa63a9e5696fa43f25143f104ef0bea642222 11-Jul-2012 Geert Uytterhoeven <geert@linux-m68k.org> mn10300: use "#elif defined(CONFIG_*)" instead of "#elif CONFIG_*"

Fix the warnings:

arch/mn10300/kernel/irq.c:173:7: warning: "CONFIG_MN10300_TTYSM1_TIMER9" is not defined [-Wundef]
arch/mn10300/kernel/irq.c:175:7: warning: "CONFIG_MN10300_TTYSM1_TIMER3" is not defined [-Wundef]

Signed-off-by: Geert Uytterhoeven <geert@linux-m68k.org>
Cc: David Howells <dhowells@redhat.com>
Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
395cf9691d72173d8cdaa613c5f0255f993af94b 15-Aug-2011 Paul Bolle <pebolle@tiscali.nl> doc: fix broken references

There are numerous broken references to Documentation files (in other
Documentation files, in comments, etc.). These broken references are
caused by typo's in the references, and by renames or removals of the
Documentation files. Some broken references are simply odd.

Fix these broken references, sometimes by dropping the irrelevant text
they were part of.

Signed-off-by: Paul Bolle <pebolle@tiscali.nl>
Signed-off-by: Jiri Kosina <jkosina@suse.cz>
8ea9716fd6aa761482caa5d4d64b256ed07ac09f 25-May-2011 KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com> mn10300: convert old cpumask API into new one

Adapt to the new API.

We plan to remove old cpumask APIs later. Thus this patch converts them
into the new one.

Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: David Howells <dhowells@redhat.com>
Cc: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
Cc: Hugh Dickins <hughd@google.com>
Cc: Chris Metcalf <cmetcalf@tilera.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2a8f55b1f577c205e71ddcb696564cbd05c50eb5 24-Mar-2011 Thomas Gleixner <tglx@linutronix.de> mn10300: Use generic show_interrupts()

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
232f1d8591dd1933a39fba5378763f5210dce138 24-Mar-2011 Thomas Gleixner <tglx@linutronix.de> mn10300: Cleanup irq_desc access

The migration needs only access to irq_data.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
f4c547ebb4a3f11e0515433fa4472e34740c10c9 24-Mar-2011 Thomas Gleixner <tglx@linutronix.de> mn10300: Convert genirq namespace

Convert to new function names. Converted with coccinelle.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
67ddb4052daac9d449caf2643ac365d42a04219a 18-Mar-2011 David Howells <dhowells@redhat.com> MN10300: Create generic kernel debugger hooks

Create generic kernel debugger hooks in the MN10300 arch and make gdbstub use
them. This is a preparation for KGDB support.

Signed-off-by: David Howells <dhowells@redhat.com>
df43b86b411dcc1e6ddbd9b7a44357c28d523bad 18-Mar-2011 Thomas Gleixner <tglx@linutronix.de> MN10300: Select GENERIC_HARDIRQS_NO_DEPRECATED

All chips converted.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David Howells <dhowells@redhat.com>
125bb1dbaded3f7d12ad39e5e26d5fa0aa9ca751 18-Mar-2011 Thomas Gleixner <tglx@linutronix.de> MN10300: Convert cpu irq_chips to new functions

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David Howells <dhowells@redhat.com>
a494d3df1e482e3f5552268af5b4b122421b5ee6 18-Mar-2011 Thomas Gleixner <tglx@linutronix.de> MN10300: Remove unused mn10300_intc_* functions

No users.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David Howells <dhowells@redhat.com>
d9a1abe4844e7591cd82e167a1a09e6546f6c45e 03-Jan-2011 Andrew Morton <akpm@linux-foundation.org> arch/mn10300/kernel/irq.c: fix build

Addresses https://bugzilla.kernel.org/show_bug.cgi?id=25702

Reported-by: Martin Ettl <ettl.martin@gmx.de>
Cc: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
6044cf1d9426dfd5cdc1e7b9cf8eaed6418e1ff6 27-Oct-2010 David Howells <dhowells@redhat.com> MN10300: ASB2364: Handle the IRQ multiplexer in the FPGA

Handle the IRQ multiplexer in the FPGA by implementing a cascade interrupt
driver for it.

Signed-off-by: David Howells <dhowells@redhat.com>
730c1fad0ee22a170d2ee76a904709ee304931c0 27-Oct-2010 Mark Salter <msalter@redhat.com> MN10300: Generic time support

Implement generic time support for MN10300.

Signed-off-by: Mark Salter <msalter@redhat.com>
Signed-off-by: David Howells <dhowells@redhat.com>
368dd5acd154b09c043cc4392a74da01599b37d5 27-Oct-2010 Akira Takeuchi <takeuchi.akr@jp.panasonic.com> MN10300: And Panasonic AM34 subarch and implement SMP

Implement the Panasonic MN10300 AM34 CPU subarch and implement SMP support for
MN10300. Also implement support for the MN2WS0060 processor and the ASB2364
evaluation board which are AM34 based.

Signed-off-by: Akira Takeuchi <takeuchi.akr@jp.panasonic.com>
Signed-off-by: Kiyoshi Owada <owada.kiyoshi@jp.panasonic.com>
Signed-off-by: David Howells <dhowells@redhat.com>
292aa141277b142148d15bf28104f8890616e291 27-Oct-2010 Stoyan Gaydarov <stoyboyker@gmail.com> MN10300: BUG to BUG_ON changes

Signed-off-by: Stoyan Gaydarov <stoyboyker@gmail.com>
Signed-off-by: David Howells <dhowells@redhat.com>
239007b8440abff689632f50cdf0f2b9e895b534 17-Nov-2009 Thomas Gleixner <tglx@linutronix.de> genirq: Convert irq_desc.lock to raw_spinlock

Convert locks which cannot be sleeping locks in preempt-rt to
raw_spinlocks.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Acked-by: Peter Zijlstra <peterz@infradead.org>
Acked-by: Ingo Molnar <mingo@elte.hu>
91e58b6e95a9c6b9efd928ae352eae5e75ae598c 09-Apr-2009 Thomas Gleixner <tglx@linutronix.de> MN10300: Convert obsolete no_irq_type to no_irq_chip

Convert the last remaining users to no_irq_chip.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
dee4102a9a5882b4f7d5cc165ba29e8cc63cf92e 11-Jan-2009 Yinghai Lu <yinghai@kernel.org> sparseirq: use kstat_irqs_cpu instead

Impact: build fix

Ingo Molnar wrote:

> tip/arch/blackfin/kernel/irqchip.c: In function 'show_interrupts':
> tip/arch/blackfin/kernel/irqchip.c:85: error: 'struct kernel_stat' has no member named 'irqs'
> make[2]: *** [arch/blackfin/kernel/irqchip.o] Error 1
> make[2]: *** Waiting for unfinished jobs....
>

So could move kstat_irqs array to irq_desc struct.

(s390, m68k, sparc) are not touched yet, because they don't support genirq

Signed-off-by: Yinghai Lu <yinghai@kernel.org>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
d6478fad430e37148b56f642c87301ba72476675 01-Oct-2008 David Howells <dhowells@redhat.com> MN10300: Fix IRQ handling

Fix the IRQ handling on the MN10300 arch.

This patch makes a number of significant changes:

(1) It separates the irq_chip definition for edge-triggered interrupts from
the one for level-triggered interrupts.

This is necessary because the MN10300 PIC latches the IRQ channel's
interrupt request bit (GxICR_REQUEST), even after the device has ceased to
assert its interrupt line and the interrupt channel has been disabled in
the PIC. So for level-triggered interrupts we need to clear this bit when
we re-enable - which is achieved by setting GxICR_DETECT but not
GxICR_REQUEST when writing to the register.

Not doing this results in spurious interrupts occurring because calling
mask_ack() at the start of handle_level_irq() is insufficient - it fails
to clear the REQUEST latch because the device that caused the interrupt is
still asserting its interrupt line at this point.

(2) IRQ disablement [irq_chip::disable_irq()] shouldn't clear the interrupt
request flag for edge-triggered interrupts lest it lose an interrupt.

(3) IRQ unmasking [irq_chip::unmask_irq()] also shouldn't clear the interrupt
request flag for edge-triggered interrupts lest it lose an interrupt.

(4) The end() operation is now left to the default (no-operation) as
__do_IRQ() is compiled out. This may affect misrouted_irq(), but
according to Thomas Gleixner it's the correct thing to do.

(5) handle_level_irq() is used for edge-triggered interrupts rather than
handle_edge_irq() as the MN10300 PIC latches interrupt events even on
masked IRQ channels, thus rendering IRQ_PENDING unnecessary. It is
sufficient to call mask_ack() at the start and unmask() at the end.

(6) For level-triggered interrupts, ack() is now NULL as it's not used, and
there is no effective ACK function on the PIC. mask_ack() is now the
same as mask() as the latch continues to latch, even when the channel is
masked.

Further, the patch discards the disable() op implementation as its now the same
as the mask() op implementation, which is used instead.

It also discards the enable() op implementations as they're now the same as
the unmask() op implementations, which are used instead.

Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
b920de1b77b72ca9432ac3f97edb26541e65e5dd 08-Feb-2008 David Howells <dhowells@redhat.com> mn10300: add the MN10300/AM33 architecture to the kernel

Add architecture support for the MN10300/AM33 CPUs produced by MEI to the
kernel.

This patch also adds board support for the ASB2303 with the ASB2308 daughter
board, and the ASB2305. The only processor supported is the MN103E010, which
is an AM33v2 core plus on-chip devices.

[akpm@linux-foundation.org: nuke cvs control strings]
Signed-off-by: Masakazu Urade <urade.masakazu@jp.panasonic.com>
Signed-off-by: Koichi Yasutake <yasutake.koichi@jp.panasonic.com>
Signed-off-by: David Howells <dhowells@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>