summaryrefslogtreecommitdiff
path: root/arch
AgeCommit message (Collapse)Author
2009-04-16x86: UV BAU distribution and payload MMRsCliff Wickman
This patch correctly sets BAU memory mapped registers to point to the sending activation descriptor table and target payload table. The "Broadcast Assist Unit" is used for TLB shootdown in UV. The memory mapped registers that point to sending and receiving memory structures contain node numbers. In one case the __pa() function did not provide the node id of memory on blade zero in configurations where that id is nonzero. In another case, it was assumed that memory was allocated on the local node. That assumption is not true in a configuration in which the node has no memory. Tested on the UV hardware simulator. [ Impact: fix possible runtime crash due to incorrect TLB logic ] Signed-off-by: Cliff Wickman <cpw@sgi.com> LKML-Reference: <E1LuR5Z-0007An-B8@eag09.americas.sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-04-16Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6Russell King
2009-04-16Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6Linus Torvalds
* git://git.kernel.org/pub/scm/linux/kernel/git/davem/sparc-2.6: sparc: remove some pointless conditionals before kfree() sbus: changed ioctls to unlocked sparc: asm/atomic.h on 32bit should include asm/system.h for xchg sparc64: Fix smp_callin() locking.
2009-04-16mxc defconfig updatesSascha Hauer
This patch removes several i.MX board specific defconfig files in favour for a mx1_defconfig, mx27_defconfig and mx3_defconfig. All config files have all currently available boards, i.MX specific drivers and the network device drivers for the boards enabled. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16mx31ads: Mark as having full regulatoion constraints with 1133-EV1 boardMark Brown
This allows the regulator API to power off unused regulators at the end of init. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-04-16mx31ads: Depend on all the WM8350 core dependencies for WM1133-EV1 boardMark Brown
Otherwise we'd need massive ifdefs in the code. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-04-16Fix ifdef in plat-mxc/irc.cDarius Augulis
Move ifdef under function brackets. This fixes compile crach when IRQ priorities are disabled. Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
2009-04-16MX1ADS: remove I2C ifdefsDarius Augulis
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
2009-04-16qong: remove AIPS[12] mappings from machine-specific iotableIlya Yanok
AIPS[12] are no mapped from generic MX3 code so we don't need to map them from machine-specific map_io function anymore. Signed-off-by: Ilya Yanok <yanok@emcraft.com>
2009-04-16mx31ads: imoux pins should be passed in as unsigned intMark Brown
To match the mxc_iomux_setup_multiple_pins() prototype. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-04-16MXC: remove orphan imx_init_uart() definitionPaulius Zaleckas
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt> Cc: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16mx31: pin definition for csiValentin Longchamp
Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
2009-04-16MX31: pin definition for sdhc2Valentin Longchamp
This also adds the pins used on mx31moboard for WP and CD Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
2009-04-16MX31: Add I2C pin definitionsVladimir Barinov
Add I2C pin definitions for MX31 SoC Signed-off-by: Vladimir Barinov <vbarinov@embeddedalley.com>
2009-04-16MX31: Add more alternate pin definitionsSascha Hauer
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16pcm037 board support: Fix eth interrupt gpio settingSascha Hauer
gpio_direction_input needs the gpio number, not the pin description. Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16imx21: activate i2cHolger Schurig
Set the correct clkdev-name for the i2c clock. It also get's rid of the ARCH_NR_GPIOS define on the rationale that isn't an ARCH-wide setting anyway. If a device has two pca953x devices, the reserved number will be wrong. Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
2009-04-16imx21: fixes some clocknamesHolger Schurig
Signed-off-by: <hs4233@mail.mn-solutions.de>
2009-04-16[ARM] S3C: Export s3c_gpio_cfgpin and s3c_gpio_setpull for modulesBen Dooks
Add an export of the two GPIO configuration calls s3c_gpio_cfgpin and s3c_gpio_setpull to allow modules to use them (such as ASoC drivers) Signed-off-by: Ben Dooks <ben@simtec.co.uk> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16[ARM] s3c2410_defconfig: Update miscellaneous driversBen Dooks
Update the driver build in the s3c2410_defconfig for the LED, IDE, Input and EEPROM options Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16[ARM] s3c2410_defconfig: Update USB device driversBen Dooks
Add more USB device driver options to the s3c2410_defconfig, mostly as modules. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16[ARM] s3c2410_defconfig: Update filesystem optionsBen Dooks
Update the filesystem options in the s3c2410_defconfig, such as building ext4, enable the automounter as modules and update the network filesysyem choices. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16[ARM] s3c2410_defconfig: Add video/radio driversBen Dooks
Add a set of various video and radio drivers to the s3c2410_defconfig as modules. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16[ARM] s3c2410_defconfig: Add sound driversBen Dooks
Add sound drivers to the s3c2410_defconfig. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16[ARM] 5453/1: fix building breakage of sys_oabi-compat.c due to missing ↵eric miao
kmalloc/kfree It seems that declarations of kmalloc/kfree are missed, explicitly include it. Signed-off-by: Eric Miao <eric.miao@marvell.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-16sh: sh7723: Don't default enable the RTC clock.Paul Mundt
rtc-sh takes care of this now, so no need to have this always enabled. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-16sh: sh7722: Don't default enable the RTC clock.Paul Mundt
rtc-sh takes care of this now, so no need to have this always enabled. Signed-off-by: Paul Mundt <lethal@linux-sh.org>
2009-04-15x86: disable X86_PTRACE_BTS for nowIngo Molnar
Oleg Nesterov found a couple of races in the ptrace-bts code and fixes are queued up for it but they did not get ready in time for the merge window. We'll merge them in v2.6.31 - until then mark the feature as CONFIG_BROKEN. There's no user-space yet making use of this so it's not a big issue. Cc: <stable@kernel.org> Signed-off-by: Ingo Molnar <mingo@elte.hu>
2009-04-15MN10300: Stop gcc from generating uninitialised variable warnings after BUG()David Howells
Stop gcc from generating uninitialised variable warnings after BUG(). The problem is that MN10300's implementation of BUG() invokes system call 15 which doesn't return - but there's no way to tell the compiler that and also emit the bug table element with the correct file and line data. So instead, we make the do...while wrapper in _debug_bug_trap() an endless loop from which there's no escape. Also, while we're at it, (1) get rid of _debug_bug_trap() and just implement directly as BUG(), and (2) make the implementation of BUG() contingent on CONFIG_BUG=y. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-15MN10300: Wire up missing system callsDavid Howells
Wire up missing system calls preadv() and pwritev(). Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-15MN10300: Discard duplicate PFN_xxx() macrosDavid Howells
Discard duplicate PFN_xxx() macros from arch code as they're now in the general headers. Signed-off-by: David Howells <dhowells@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-15Merge branch 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6Linus Torvalds
* 'for-linus' of git://git390.marist.edu/pub/scm/linux-2.6: [S390] boot cputime accounting [S390] add read_persistent_clock [S390] cpu hotplug and accounting values [S390] fix idle time accounting [S390] smp: fix cpu_possible_map initialization [S390] dasd: fix idaw boundary checking for track based ccw [S390] dasd: Use the new async framework for autoonlining. [S390] qdio: remove dead timeout handler [S390] appldata: Use new mod_virt_timer_periodic() function. [S390] extend virtual timer interface by mod_virt_timer_periodic [S390] stp synchronization retry timer [S390] call nmi_enter/nmi_exit on machine checks [S390] wire up preadv/pwritev system calls [S390] s390: move machine flags to lowcore
2009-04-15Merge branch 'merge' of ↵Linus Torvalds
git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc * 'merge' of git://git.kernel.org/pub/scm/linux/kernel/git/paulus/powerpc: powerpc: pseries/dtl.c should include asm/firmware.h powerpc: Fix data-corrupting bug in __futex_atomic_op powerpc/pseries: Set error_state to pci_channel_io_normal in eeh_report_reset() powerpc: Allow 256kB pages with SHMEM powerpc: Document new FSL I2C bindings and cleanup powerpc/mm: Fix compile warning powerpc/85xx: TQM8548: update defconfig powerpc/85xx: TQM8548: use proper phy-handles for enet2 and enet3 powerpc/85xx: TQM85xx: correct address of LM75 I2C device nodes powerpc: Add support for early tlbilx opcode powerpc: Fix tlbilx opcode
2009-04-15acpi-cpufreq: fix 'smp_call_function_many()' confusionLinus Torvalds
It turns out that 'smp_call_function_many()' doesn't work at all like 'smp_call_function_single()', and my change to Andrew's patch to use it rather than a loop over all CPU's acpi-cpufreq doesn't work. My bad. 'smp_call_function_many()' has two "features" (aka "documented bugs"): (a) it needs to be called with preemption disabled, because it uses smp_processor_id() without guarding the CPU lookup with 'get_cpu()' and 'put_cpu()' like the 'single' variant does. (b) even if the current CPU is part of the CPU mask, it won't do the call on that CPU. Still, we're better off trying to use 'smp_call_function_many()' than looping over CPU's, since it at least in theory allows us to use a broadcast IPI and do it all in parallel. So let's just work around the silly semantic bugs in that function. Reported-and-tested-by: Ali Gholami Rudi <ali@rudi.ir> Cc: Ingo Molnar <mingo@elte.hu> Cc: Andrew Morton <akpm@linux-foundation.org>, Cc: Rusty Russell <rusty@rustcorp.com.au> Cc: Dave Jones <davej@redhat.com> Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-15[ARM] s3c2410_defconfig: Add MMC/SD core and driversBen Dooks
Add SD/MMC to the s3c2410_defconfig, building in the core and adding the rest of the drivers as modules. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15[ARM] s3c2410_defconfig: Update machine configurationBen Dooks
Update the machine configuration of s3c2410_defconfig to add support for newer machines, and update the s3c24xx specific options. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15[ARM] s3c2410_defconfig: Update network optionsBen Dooks
Update the list of modules being built for the network core of the s3c2410_defconfig. This update adds such items as TCP congestion, netfilter for IPv4 and IPv6. Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15[ARM] s3c2410_defconfig: update to 2.6.30-rc2Ben Dooks
Update arch/arm/configs/s3c2410_defconfig to the latest kernel release (2.6.30-rc2). Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15[ARM] SMDK6410: Request GPIOs for LCD power controlMark Brown
Going forward gpio_request() will be a requirement for GPIO API users so call it for the LCD power GPIOs. With present code the kernel functions but generaets loud WARN_ON()s when using the unrequested GPIOs. Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15[ARM] S3C: remove duplicated #includeHuang Weiyi
Remove duplicated #include in arch/arm/mach-s3c2412/mach-jive.c. Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com> Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15sparc: remove some pointless conditionals before kfree()Wei Yongjun
Remove some pointless conditionals before kfree(). Signed-off-by: Wei Yongjun <yjwei@cn.fujitsu.com> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-15[ARM] 5451/1: ep93xx:core.c: build warning fixHartley Sweeten
Fix trivial build warning due to incompatible pointer type. ep93xx_timer_interrupt() has the wrong return type causing a warning during the build. Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-15[ARM] 5450/1: Flush only the needed range when unmapping a VMAAaro Koskinen
When unmapping N pages (e.g. shared memory) the amount of TLB flushes done can be (N*PAGE_SIZE/ZAP_BLOCK_SIZE)*N although it should be N at maximum. With PREEMPT kernel ZAP_BLOCK_SIZE is 8 pages, so there is a noticeable performance penalty when unmapping a large VMA and the system is spending its time in flush_tlb_range(). The problem is that tlb_end_vma() is always flushing the full VMA range. The subrange that needs to be flushed can be calculated by tlb_remove_tlb_entry(). This approach was suggested by Hugh Dickins, and is also used by other arches. The speed increase is roughly 3x for 8M mappings and for larger mappings even more. Signed-off-by: Aaro Koskinen <Aaro.Koskinen@nokia.com> Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-15Merge branch 'fix' of ↵Russell King
git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6
2009-04-15powerpc: pseries/dtl.c should include asm/firmware.hSachin Sant
A randconfig build on powerpc failed with: dtl.c: In function 'dtl_init': dtl.c:238: error: implicit declaration of function 'firmware_has_feature' dtl.c:238: error: 'FW_FEATURE_SPLPAR' undeclared (first use in this function) - We need firmware.h for these definitions. Signed-off-by: Sachin Sant <sachinp@in.ibm.com> Signed-off-by: Jeremy Kerr <jk@ozlabs.org> Signed-off-by: Paul Mackerras <paulus@samba.org>
2009-04-15powerpc: Fix data-corrupting bug in __futex_atomic_opPaul Mackerras
Richard Henderson pointed out that the powerpc __futex_atomic_op has a bug: it will write the wrong value if the stwcx. fails and it has to retry the lwarx/stwcx. loop, since 'oparg' will have been overwritten by the result from the first time around the loop. This happens because it uses the same register for 'oparg' (an input) as it uses for the result. This fixes it by using separate registers for 'oparg' and 'ret'. Cc: stable@kernel.org Signed-off-by: Paul Mackerras <paulus@samba.org>
2009-04-15powerpc/pseries: Set error_state to pci_channel_io_normal in eeh_report_reset()Mike Mason
While adding native EEH support to Emulex and Qlogic drivers, it was discovered that dev->error_state was set to pci_io_channel_normal too late in the recovery process. These drivers rely on error_state to determine if they can access the device in their slot_reset callback, thus error_state needs to be set to pci_io_channel_normal in eeh_report_reset(). Below is a detailed explanation (courtesy of Richard Lary) as to why this is necessary. Background: PCI MMIO or DMA accesses to a frozen slot generate additional EEH errors. If the number of additional EEH errors exceeds EEH_MAX_FAILS the adapter will be shutdown. To avoid triggering excessive EEH errors and an undesirable adapter shutdown, some drivers use the pci_channel_offline(dev) wrapper function to return a Boolean value based on the value of pci_dev->error_state to determine if PCI MMIO or DMA accesses are safe. If the wrapper returns TRUE, drivers must not make PCI MMIO or DMA access to their hardware. The pci_dev structure member error_state reflects one of three values, 1) pci_channel_io_normal, 2) pci_channel_io_frozen, 3) pci_channel_io_perm_failure. Function pci_channel_offline(dev) returns TRUE if error_state is pci_channel_io_frozen or pci_channel_io_perm_failure. The EEH driver sets pci_dev->error_state to pci_channel_io_frozen at the point where the PCI slot is frozen. Currently, the EEH driver restores dev->error_state to pci_channel_io_normal in eeh_report_resume() before calling the driver's resume callback. However, when the EEH driver calls the driver's slot_reset callback() from eeh_report_reset(), it incorrectly indicates the error state is still pci_channel_io_frozen. Waiting until eeh_report_resume() to restore dev->error_state to pci_channel_io_normal is too late for Emulex and QLogic FC drivers and any other drivers which are designed to use common code paths in these two cases: i) those called after the driver's slot_reset callback() and ii) those called after the PCI slot is frozen but before the driver's slot_reset callback is called. Case i) all driver paths executed to reinitialize the hardware after a reset and case ii) all code paths executed by driver kernel threads that run asynchronous to the main driver thread, such as interrupt handlers and worker threads to process driver work queues. Emulex and QLogic FC drivers are designed with common code paths which require that pci_channel_offline(dev) reflect the true state of the hardware. The state transitions that the hardware takes from Normal Operations to Slot Frozen to Reset to Normal Operations are documented in the Power Architecture™ Platform Requirements+ (PAPR+) in Table 75. PE State Control. PAPR defines the following 3 states: 0 -- Not reset, Not EEH stopped, MMIO load/store allowed, DMA allowed (Normal Operations) 1 -- Reset, Not EEH stopped, MMIO load/store disabled, DMA disabled 2 -- Not reset, EEH stopped, MMIO load/store disabled, DMA disabled (Slot Frozen) An EEH error places the slot in state 2 (Frozen) and the adapter driver is notified that an EEH error was detected. If the adapter driver returns PCI_ERS_RESULT_NEED_RESET, the EEH driver calls eeh_reset_device() to place the slot into state 1 (Reset) and eeh_reset_device completes by placing the slot into State 0 (Normal Operations). Upon return from eeh_reset_device(), the EEH driver calls eeh_report_reset, which then calls the adapter's slot_reset callback. At the time the adapter's slot_reset callback is called, the true state of the hardware is Normal Operations and should be accurately reflected by setting dev->error_state to pci_channel_io_normal. The current implementation of EEH driver does not do so and requires this change to correct this deficiency. Signed-off-by: Mike Mason <mmlnx@us.ibm.com> Acked-by: Linas Vepstas <linasvepstas@gmail.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2009-04-15powerpc: Allow 256kB pages with SHMEMHugh Dickins
Now that shmem's divisions by zero and SHMEM_MAX_BYTES are fixed, let powerpc 256kB pages coexist with CONFIG_SHMEM again. Signed-off-by: Hugh Dickins <hugh@veritas.com> Signed-off-by: Paul Mackerras <paulus@samba.org>
2009-04-15sparc: asm/atomic.h on 32bit should include asm/system.h for xchgStephen Rothwell
Signed-off-by: Stephen Rothwell <sfr@canb.auug.org.au> Signed-off-by: David S. Miller <davem@davemloft.net>
2009-04-15sparc64: Fix smp_callin() locking.David S. Miller
Interrupts must be disabled when taking the IPI lock. Caught by lockdep. Reported-by: Meelis Roos <mroos@linux.ee> Signed-off-by: David S. Miller <davem@davemloft.net>