summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2009-09-16Blackfin: reuse evt_evt14 handler to perform irqtail epiloguePhilippe Gerum
Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: use generic name for EVT14 handlerPhilippe Gerum
The purpose of the EVT14 handler may depend on whether CONFIG_IPIPE is enabled, albeit its implementation can be the same in both cases. When the interrupt pipeline is enabled, EVT14 can be used to raise the core priority level for the running code; when CONFIG_IPIPE is off, EVT14 can be used to lower this level before running softirq handlers. Rename evt14_softirq to evt_evt14 to pick an identifier that fits both, which allows to reuse the same vector setup code as well. Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: allow high priority domains to preempt schedule_tail()Philippe Gerum
ret_from_fork is always entered with hw interrupts off, which prevents real-time domains to preempt the Linux kernel during part of the initial context switch to the new task, which could in turn raise the worst-case latency figures. To avoid this, stall the root domain stage in the interrupt pipeline to keep the scheduling tail code free from Linux-handled IRQs, then enable hardware interrupts again. Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: export show_stack() to modulesPhilippe Gerum
Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: fix misnomer of some I-pipe helpersPhilippe Gerum
__ipipe_{stall, unstall}_root_raw() identifiers may leave the reader under the impression that only the virtual state is affected by these operations, which is wrong. Pick names following the convention used throughout the interrupt pipeline code. Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: checkpatch --file arch/blackfin/kernel/ipipe.cPhilippe Gerum
Signed-off-by: Philippe Gerum <rpm@xenomai.org> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: make EVT3->EVT5 lowering more robust wrt IPEND[4]Robin Getz
We handle many exceptions at EVT5 (hardware error level) so that we can catch exceptions in our exception handling code. Today - if the global interrupt enable bit (IPEND[4]) is set (interrupts disabled) our trap handling code goes into a infinite loop, since we need interrupts to be on to defer things to EVT5. Normal kernel code should not trigger this for any reason as IPEND[4] gets cleared early (when doing an interrupt context save) and the kernel stack there should be sane (or something much worse is happening in the system). But there have been a few times where this has happened, so this change makes sure we dump a proper crash message even when things have gone south. Signed-off-by: Robin Getz <robin.getz@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: bf537-stamp: add resources for AD1938 audio cardBarry Song
Signed-off-by: Barry Song <barry.song@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: bf537-stamp: declare SPI IRQ resourcesYi Li
Signed-off-by: Yi Li <yi.li@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Blackfin: bf537-stamp: update ADP5588 header nameMichael Hennerich
Signed-off-by: Michael Hennerich <michael.hennerich@analog.com> Signed-off-by: Mike Frysinger <vapier@gentoo.org>
2009-09-16Fix ia64 build breakage in head.SAnirban Sinha
The "cleanup console_print()" patch in commit 353f6dd2dec992ddd34620a94b051b0f76227379 introduced an "extern" declaration into an assembly language file. Remove it. Signed-off-by: Anirban Sinha <asinha@zeugmasystems.com> Signed-off-by: Tony Luck <tony.luck@intel.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-09-16DaVinci: DM646x - platform changes for vpif capture and display driversMuralidharan Karicheri
VPIF display changes (Chaithrika) Add platform device and resource structures. Also define a platform specific clock setup function that can be accessed by the driver to configure the clock and CPLD. VPIF caputure changes (Murali) 1) Modify vpif_subdev_info to add board_info, routing information and vpif interface configuration. Remove addr since it is part of board_info 2) Add code to setup channel mode and input decoder path for vpif capture driver Also incorporated comments against version v0 of the patch series and added a spinlock to protect writes to common registers Tested on DM6467 on channel 0 using TVP514x. Following bootargs used for drivers: vpif_capture.ch0_bufsize=829440 vpif_display.ch2_bufsize=829440 Signed-off-by: Manjunath Hadli <mrh@ti.com> Signed-off-by: Brijesh Jadav <brijesh.j@ti.com> Signed-off-by: Chaithrika U S <chaithrika@ti.com> Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl> Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
2009-09-16davinci: DM355 - platform changes for vpfe captureMuralidharan Karicheri
DM355 platform and board setup This has platform and board setup changes to support vpfe capture driver for DM355 EVMs. Tested video capture on DM355 using tvp514x Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl> Reviewed-by: Laurent Pinchart <laurent.pinchart@skynet.be> Reviewed-by: David Brownell <david-b@pacbell.net> Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com> Signed-off-by: Denys Dmytriyenko <denis@denix.org> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
2009-09-16davinci: DM644x platform changes for vpfe captureMuralidharan Karicheri
DM644x platform and board setup This adds platform and board setup changes required to support vpfe capture driver on DM644x Tested video capture on DM6446 with tvp514x driver Reviewed-by: Hans Verkuil <hverkuil@xs4all.nl> Reviewed-by: Laurent Pinchart <laurent.pinchart@skynet.be> Reviewed-by: David Brownell <david-b@pacbell.net> Signed-off-by: Muralidharan Karicheri <m-karicheri2@ti.com> Signed-off-by: Denys Dmytriyenko <denis@denix.org> Signed-off-by: Kevin Hilman <khilman@deeprootsystems.com>
2009-09-16[CPUFREQ] Fix NULL ptr regression in powernow-k8Kurt Roeckx
Fixes bugzilla #13780 From: Kurt Roeckx <kurt@roeckx.be> Signed-off-by: Dave Jones <davej@redhat.com>
2009-09-16Merge branch 'linux-next' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6 * 'linux-next' of git://git.kernel.org/pub/scm/linux/kernel/git/jbarnes/pci-2.6: (75 commits) PCI hotplug: clean up acpi_run_hpp() PCI hotplug: acpiphp: use generic pci_configure_slot() PCI hotplug: shpchp: use generic pci_configure_slot() PCI hotplug: pciehp: use generic pci_configure_slot() PCI hotplug: add pci_configure_slot() PCI hotplug: clean up acpi_get_hp_params_from_firmware() interface PCI hotplug: acpiphp: don't cache hotplug_params in acpiphp_bridge PCI hotplug: acpiphp: remove superfluous _HPP/_HPX evaluation PCI: Clear saved_state after the state has been restored PCI PM: Return error codes from pci_pm_resume() PCI: use dev_printk in quirk messages PCI / PCIe portdrv: Fix pcie_portdrv_slot_reset() PCI Hotplug: convert acpi_pci_detect_ejectable() to take an acpi_handle PCI Hotplug: acpiphp: find bridges the easy way PCI: pcie portdrv: remove unused variable PCI / ACPI PM: Propagate wake-up enable for devices w/o ACPI support ACPI PM: Replace wakeup.prepared with reference counter PCI PM: Introduce device flag wakeup_prepared PCI / ACPI PM: Rework some debug messages PCI PM: Simplify PCI wake-up code ... Fixed up conflict in arch/powerpc/kernel/pci_64.c due to OF device tree scanning having been moved and merged for the 32- and 64-bit cases. The 'needs_freset' initialization added in 6e19314cc ("PCI/powerpc: support PCIe fundamental reset") is now in arch/powerpc/kernel/pci_of_scan.c.
2009-09-16sched: Disable wakeup balancingPeter Zijlstra
Sysbench thinks SD_BALANCE_WAKE is too agressive and kbuild doesn't really mind too much, SD_BALANCE_NEWIDLE picks up most of the slack. On a dual socket, quad core, dual thread nehalem system: sysbench (--num_threads=16): SD_BALANCE_WAKE-: 13982 tx/s SD_BALANCE_WAKE+: 15688 tx/s kbuild (-j16): SD_BALANCE_WAKE-: 47.648295846 seconds time elapsed ( +- 0.312% ) SD_BALANCE_WAKE+: 47.608607360 seconds time elapsed ( +- 0.026% ) (same within noise) Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> LKML-Reference: <new-submission> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-09-16x86: Move get/set_wallclock to x86_platform_opsFeng Tang
get/set_wallclock() have already a set of platform dependent implementations (default, EFI, paravirt). MRST will add another variant. Moving them to platform ops simplifies the existing code and minimizes the effort to integrate new variants. Signed-off-by: Feng Tang <feng.tang@intel.com> LKML-Reference: <new-submission> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2009-09-16HWPOISON: x86: Add VM_FAULT_HWPOISON handling to x86 page fault handler v2Andi Kleen
Add VM_FAULT_HWPOISON handling to the x86 page fault handler. This is very similar to VM_FAULT_OOM, the only difference is that a different si_code is passed to user space and the new addr_lsb field is initialized. v2: Make the printk more verbose/unique Cc: x86@kernel.org Signed-off-by: Andi Kleen <ak@linux.intel.com>
2009-09-16x86, EDAC: Provide function to return NodeId of a CPUAndreas Herrmann
Signed-off-by: Andreas Herrmann <andreas.herrmann3@amd.com> Signed-off-by: Borislav Petkov <borislav.petkov@amd.com> Acked-by: H. Peter Anvin <hpa@zytor.com>
2009-09-16sched: x86: Name old_perf in a unique wayPeter Zijlstra
Silly percpu bits don't respect static.. Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl> LKML-Reference: <new-submission>
2009-09-16x86: platform: Fix section annotationsThomas Gleixner
init_IRQ() and x86_late_time_init() are missing __init annotations. The x86 platform ops variables are annotated, but the annotation needs to be put between the variable name and the "=" of the initializer. Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
2009-09-16sparc: Update defconfigs.David S. Miller
Signed-off-by: David S. Miller <davem@davemloft.net>
2009-09-16sh: Kill off unused se_skipped in alignment trap notification code.Paul Mundt
Nothing is using this, resulting in a build error with certain configurations. Just kill it off. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-09-16sh: Wire up HAVE_SYSCALL_TRACEPOINTS.Paul Mundt
This is necessary to get ftrace syscall tracing working again.. a fairly trivial and mechanical change. The one benefit is that this can also be enabled on sh64, despite not having its own ftrace port. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-09-16Merge branch 'master' of ↵Paul Mundt
git://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux-2.6 Conflicts: arch/sh/kernel/vmlinux.lds.S
2009-09-15sparc: Kill PROM console driver.David S. Miller
Many years ago when this driver was written, it had a use, but these days it's nothing but trouble and distributions should not enable it in any situation. Pretty much every console device a sparc machine could see has a bonafide real driver, making the PROM console hack unnecessary. If any new device shows up, we should write a driver instead of depending upon this crutch to save us. We've been able to take care of this even when no chip documentation exists (sunxvr500, sunxvr2500) so there are no excuses. Signed-off-by: David S. Miller <davem@davemloft.net>
2009-09-16ARM: S3C64XX: DMA: Debugged alloc's with GFP_KERNEL flag in Intr context.Jassi
s3c2410_dma_enqueue makes call to kzalloc and dma_pool_alloc with GFP_KERNEL flag set, this can be an issue for drivers, like I2S, which call s3c2410_dma_enqueue from dma-bufferdone callback. Change the flag GFP_KERNEL to GFP_ATOMIC to avoid any problems. Signed-Off-by: Jassi <jassi.brar@samsung.com> [ben-linux@fluff.org: Minor description edit and re-wrap] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-09-16ARM: S3C64XX: DMA: 'size' argument of dma_pool_createJassi
Provide actual minimum(struct pl080s_lli) size of block to dma_pool_create call, instead of hardcoded 32 bytes. Signed-Off-by: Jassi <jassi.brar@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-09-16ARM: S3C64XX: DMA: struct s3c64xx_dma_buff lli fix.Jassi
Correct the lli structure in struct s3c64xx_dma_buff which should have been 'struct pl080s_lli' (samsung specific) instead of the generic version 'struct pl080_lli' Signed-Off-by: Jassi <jassi.brar@samsung.com> [ben-linux@fluff.org: Edited description and subject fields] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-09-16ARM: S3C64XX: Fix divider value calculation in s3c64xx_roundrate_clksrcThomas Abraham
In s3c64xx_roundrate_clksrc function, the calculation is wrong. This patch fixes this calculation. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-09-16ARM: S3C6410: update clk->parent when setting clock sourceThomas Abraham
This ensures the clock hierarchy data structures are updated when we change the clock source in the actual hardware registers. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> [ben-linux@fluff.org: Minor re-indentation of subject] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-09-16ARM: S3C6410: use correct divider_shift in setrate_clksrc()Thomas Abraham
In s3c64xx_setrate_clksrc() we used sclk->shift, but actually need to use sclk->divider_shift to correctly calculate the value for the divider register. Signed-off-by: Thomas Abraham <thomas.ab@samsung.com> [ben-linux@fluff.org: Minor re-indentation of description] Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-09-16m68knommu: Make PAGE_SIZE available to assembly files.Tim Abbott
Signed-off-by: Tim Abbott <tabbott@ksplice.com> Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: fix ColdFire definition of CLOCK_TICK_RATEPhilippe De Muyter
The good definition of CLOCK_TICK_RATE for coldfires has been lost in the merge of m68k and m68knommu include files. Restore it. Culprit : commit ebafc17468d58bd903c886175ca84a4edc69ae1d Signed-off-by: Philippe De Muyter <phdm@macqel.be> Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: set multi-function pins for ethernet when enabledGreg Ungerer
The ethernet pins on the 532x ColdFire CPU family are multi-function pins. We need to enable them as ethernet pins when using the FEC ethernet driver. Bug report, and older patch, from timothee@manaud.net. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: remove special interrupt handling code for ne2k supportGreg Ungerer
The improved interrupt support for ColdFire CPU cores means we no longer need all the interrupt setup and ack hacks to support the NE2000 driver on ColdFire platforms. Remove all that code. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: relax IO_SPACE_LIMIT settingGreg Ungerer
There is really no limit to the addresses which can be used by the in*() and out*() family of IO space calls in m68k non-MMU environments. So don't impose an artificial address limit, allow the full 32bit range. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: remove ColdFire direct interrupt register accessGreg Ungerer
Now that the ColdFire 5272 has full interrupt controller functionality we can remove all the interrupt masking and acking code from the FEC ethernet driver. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: create a speciailized ColdFire 5272 interrupt controllerGreg Ungerer
The ColdFire 5272 CPU has a very different interrupt controller than any of the other ColdFire parts. It needs its own controller code to correctly setup and ack interrupts. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: add support for second interrupt controller of ColdFire 5249Greg Ungerer
The ColdFire 5249 CPU has a second (compleletly different) interrupt controller. It is the only ColdFire CPU that has this type. It controlls GPIO interrupts amongst a number of interrupts from other internal peripherals. Add support code for it. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: clean up old ColdFire timer irq setupGreg Ungerer
The recent changes to the old ColdFire interrupt controller code means we no longer need to manually unmask the timer interrupt. That is now done in the interrupt controller code proper. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: map ColdFire interrupts to correct masking bitsGreg Ungerer
The older simple ColdFire interrupt controller has no one-to-one mapping of interrupt numbers to bits in the interrupt mask register. Create a mapping array that each ColdFire CPU type can populate with its available interrupts and the bits that each use in the interrupt mask register. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: clean up ColdFire 532x CPU timer setupGreg Ungerer
The newer ColdFire 532x family of CPU's uses the old timer, but has a newer interrupt controller. It doesn't need the special timer setup that was required when using the older interrupt controller. Remove the dead timer irq and level setting code, and define the hard coded vector. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: simplify ColdFire "timers" clock initializationGreg Ungerer
The ColdFire "timers" clock setup can be simplified. There is really no need for the flexible per-platform setup code. The clock interrupt can be hard defined per CPU platform (in CPU include files). This makes the actual timer code simpler. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: support code to mask external interrupts on old ColdFire CPU'sGreg Ungerer
The external interrupts used on the old Coldfire parts with the old style interrupt controller can be properly mask/unmasked in the interrupt handling code. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: merge old ColdFire interrupt controller masking macrosGreg Ungerer
Currently the code that supports setting the old style ColdFire interrupt controller mask registers is macros in the include files of each of the CPU types. Merge all these into a set of real masking functions in the old Coldfire interrupt controller code proper. All the macros are basically the same (excepting a register size difference on really early parts). Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: remove duplicate ColdFire mcf_autovector() codeGreg Ungerer
Each of the ColdFire CPU platform code that used the old style interrupt controller had its own copy of the mcf_autovector() function. They are all the same, remove them all and create a single function in the common coldfire/intc.c code. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: move ColdFire INTC definitions to new include fileGreg Ungerer
Create an mcfintc.h include file with the definitions for the old style ColdFire interrupt controller. They are only needed on CPU's that use this old controller - so isolate them on their own. Signed-off-by: Greg Ungerer <gerg@uclinux.org>
2009-09-16m68knommu: mask off all interrupts in ColdFire intc-simr controllerGreg Ungerer
The ColdFire intc-simr interrupt controller should mask off all interrupt sources at init time. Doing it here instead of separately in each platform setup. Signed-off-by: Greg Ungerer <gerg@uclinux.org>