summaryrefslogtreecommitdiff
path: root/drivers/sh/intc
AgeCommit message (Collapse)AuthorFilesLines
2011-11-07Merge branch 'modsplit-Oct31_2011' of ↵Linus Torvalds3-0/+4
git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux * 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux: (230 commits) Revert "tracing: Include module.h in define_trace.h" irq: don't put module.h into irq.h for tracking irqgen modules. bluetooth: macroize two small inlines to avoid module.h ip_vs.h: fix implicit use of module_get/module_put from module.h nf_conntrack.h: fix up fallout from implicit moduleparam.h presence include: replace linux/module.h with "struct module" wherever possible include: convert various register fcns to macros to avoid include chaining crypto.h: remove unused crypto_tfm_alg_modname() inline uwb.h: fix implicit use of asm/page.h for PAGE_SIZE pm_runtime.h: explicitly requires notifier.h linux/dmaengine.h: fix implicit use of bitmap.h and asm/page.h miscdevice.h: fix up implicit use of lists and types stop_machine.h: fix implicit use of smp.h for smp_processor_id of: fix implicit use of errno.h in include/linux/of.h of_platform.h: delete needless include <linux/module.h> acpi: remove module.h include from platform/aclinux.h miscdevice.h: delete unnecessary inclusion of module.h device_cgroup.h: delete needless include <linux/module.h> net: sch_generic remove redundant use of <linux/module.h> net: inet_timewait_sock doesnt need <linux/module.h> ... Fix up trivial conflicts (other header files, and removal of the ab3550 mfd driver) in - drivers/media/dvb/frontends/dibx000_common.c - drivers/media/video/{mt9m111.c,ov6650.c} - drivers/mfd/ab3550-core.c - include/linux/dmaengine.h
2011-11-04sh: intc: Allow triggering on both edges for ARM SoCsMagnus Damm1-1/+1
Enable IRQ_TYPE_EDGE_BOTH on all R/SH-Mobile ARM SoCs. This hardware feature is supported by sh7367, sh7377, sh7372 and sh73a0. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2011-11-01drivers/sh: Add export.h for EXPORT_SYMBOL to intc/virq.cPaul Gortmaker1-0/+1
This is exporting symbols and will fail to build once we remove the implicit presence of module.h Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2011-11-01sh: Add export.h to arch/sh specific files as required.Paul Gortmaker1-0/+1
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2011-11-01sh: Add module.h to arch/sh specific files as required.Paul Gortmaker1-0/+1
Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2011-11-01sh: fix implicit use of stat.h in arch/sh specific filesPaul Gortmaker1-0/+1
To fix: arch/sh/drivers/dma/dma-sysfs.c:45:8: error: 'S_IRUGO' undeclared here (not in a function) arch/sh/drivers/dma/dma-sysfs.c:75:8: error: 'S_IWUSR' undeclared here (not in a function) make[4]: *** [arch/sh/drivers/dma/dma-sysfs.o] Error 1 drivers/sh/intc/core.c:449: error: 'S_IRUGO' undeclared here (not in a function) make[5]: *** [drivers/sh/intc/core.o] Error 1 Signed-off-by: Paul Gortmaker <paul.gortmaker@windriver.com>
2011-10-28sh: userimask.c needs linux/stat.hNobuhiro Iwamatsu1-0/+1
This fix the problem that S_IRUSR and S_IWUSR are not solved in userimask.c. ----- CC drivers/usb/host/r8a66597-hcd.o drivers/sh/intc/userimask.c:57: error: ‘S_IRUSR’ undeclared here (not in a function) drivers/sh/intc/userimask.c:57: error: ‘S_IWUSR’ undeclared here (not in a function) CC drivers/watchdog/shwdt.o ----- Signed-off-by: Nobuhiro Iwamatsu <nobuhiro.iwamatsu.yj@renesas.com> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2011-10-28sh: intc: Add IRQ trigger bit field checkMagnus Damm1-2/+7
R-Mobile SoCs such as sh73a0 include PINT blocks in INTC that come with 2-bit IRQ trigger support. Add code to make sure the bit width is checked so 4-bit only modes like for instance EDGE_BOTH will fail for PINT. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2011-07-21sh: intc: enable both edges GPIO interrupts on sh7372Magnus Damm1-0/+3
IRQ-capable GPIOs on sh7372 can be configured to produce interrupts on both edges. Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de> Acked-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2011-04-27sh: intc: Set virtual IRQs as nothread.Paul Mundt1-0/+5
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2011-03-30sh: Fix irq cleanup falloutThomas Gleixner1-2/+2
I missed that coccinelle does not fix up header files by default. Reported-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Cc: Paul Mundt <lethal@linux-sh.org> Cc: <lethal@linux-sh.org>
2011-03-29sh: Convert to new function namesThomas Gleixner2-13/+13
Scripted with coccinelle. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2011-03-29sh: Use the proper accessor functionsThomas Gleixner1-7/+2
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2011-03-23sh: Use struct syscore_ops instead of sysdevsRafael J. Wysocki2-49/+47
Convert the SuperH clocks framework and shared interrupt handling code to using struct syscore_ops instead of a sysdev classes and sysdevs for power managment. This reduces the code size significantly and simplifies it. The optimizations causing things not to be restored after creating a hibernation image are removed, but they might lead to undesirable effects during resume from hibernation (e.g. the clocks would be left as the boot kernel set them, which might be not the same way as the hibernated kernel had seen them before the hibernation). This also is necessary for removing sysdevs from the kernel entirely in the future. Signed-off-by: Rafael J. Wysocki <rjw@sisk.pl> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2011-01-19sh: update INTC to clear IRQ sense valid flagMagnus Damm1-2/+4
Clear the valid flag is in the INTC code. Without this fix bit 7 of the sense register is mistakenly set. Signed-off-by: Magnus Damm <damm@opensource.se> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-12-24sh: intc: Initialize radix tree gfp mask explicitly.Paul Mundt1-0/+1
Presently the root node is initialized by way of kzalloc on the parent data structure, which by chance happens to do the bulk of what an explicit initialization does with GFP_NOWAIT semantics. This however is more by luck than by design, and as we ideally want to permit radix node allocations access to the emergency pools anyways, add in the proper initializer with the desired mask. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-11-15sh: intc: Fix up build failure introduced by radix tree changes.Paul Mundt1-1/+1
The radix tree retry logic got a bit of an overhaul and subsequently broke the virtual IRQ subgroup build. Simply switch over to radix_tree_deref_retry() as per the filemap changes, which the virq lookup logic was modelled after in the first place. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-11-01sh: intc: Update for single IRQ reservation helper.Paul Mundt2-2/+2
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-10-28sh: intc: switch irq_desc iteration to new active IRQ iterator.Paul Mundt1-8/+2
There's no need to iterative over every single irq_desc when we can already work out which IRQs have a backing descriptor via the shiny new for_each_active_irq(). Switch to that instead. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-10-27sh: intc: irq_data conversion.Paul Mundt4-40/+68
Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-10-26sh: Switch dynamic IRQ creation to generic irq allocator.Paul Mundt2-75/+9
Now that the genirq code provides an IRQ bitmap of its own and the necessary API to manipulate it, there's no need to keep our own version around anymore. In the process we kill off some unused IRQ reservation code, with future users now having to tie in to the genirq API as normal. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-10-26sh: Sanitize sparse irqThomas Gleixner2-19/+14
Switch over to the new allocator functions. Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-10-06sh: intc: Fix build with IRQ balancing disabled.Paul Mundt1-4/+5
The balancing stubs obviously need to be static inline.. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-10-06sh: intc: Add missing files.Paul Mundt2-0/+40
The Kconfig and Makefile were overlooked, add those in now to improve odds of building. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2010-10-05sh: intc: Split up the INTC code.Paul Mundt10-0/+2047
This splits up the sh intc core in to something more vaguely resembling a subsystem. Most of the functionality was alread fairly well compartmentalized, and there were only a handful of interdependencies that needed to be resolved in the process. This also serves as future-proofing for the genirq and sparseirq rework, which will make some of the split out functionality wholly generic, allowing things to be killed off in place with minimal migration pain. Signed-off-by: Paul Mundt <lethal@linux-sh.org>