aboutsummaryrefslogtreecommitdiff
AgeCommit message (Collapse)AuthorFilesLines
2010-07-27ARM: LPC32XX: Arch config menu supoport and makefilesKevin Wells3-0/+45
Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: LPC32XX: Phytec 3250 platform supportKevin Wells1-0/+397
Platform support file for the PHY3250 mach id Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: LPC32XX: Misc support functionsKevin Wells2-0/+344
Misc support functions and prototypes used in the LPC32XX arch and platforms Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: LPC32XX: Serial support codeKevin Wells1-0/+190
Serial port setup support code Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: LPC32XX: System suspend supportKevin Wells2-0/+297
Support for system suspend and resume Signed-off-by: Kevin Wells <[email protected]>
2010-07-27perf, powerpc: Use perf_sample_data_init() for the FSL codePeter Zijlstra1-3/+3
We should use perf_sample_data_init() to initialize struct perf_sample_data. As explained in the description of commit dc1d628a ("perf: Provide generic perf_sample_data initialization"), it is possible for userspace to get the kernel to dereference data.raw, so if it is not initialized, that means that unprivileged userspace can possibly oops the kernel. Using perf_sample_data_init makes sure it gets initialized to NULL. This conversion should have been included in commit dc1d628a, but it got missed. Signed-off-by: Peter Zijlstra <[email protected]> Acked-by: Kumar Gala <[email protected]> Signed-off-by: Paul Mackerras <[email protected]>
2010-07-27wm8350-regulator: fix wm8350_register_regulator error handlingAxel Lin1-1/+1
In the case of platform_device_add() fail, we should call platform_device_put() instead of platform_device_del() Signed-off-by: Axel Lin <[email protected]> Acked-by: Mark Brown <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-07-27ab3100: fix off-by-one value range checking for voltage selectorAxel Lin1-2/+2
We use voltage selector as an array index for typ_voltages. Thus the valid range for voltage selector should be 0..voltages_len-1. Signed-off-by: Axel Lin <[email protected]> Acked-by: Mark Brown <[email protected]> Acked-by: Linus Walleij <[email protected]> Signed-off-by: Liam Girdwood <[email protected]>
2010-07-27ARM: LPC32XX: GPIO, timer, and IRQ driversKevin Wells3-0/+1060
Common drivers for the LPC32XX used on all platforms Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: LPC32XX: Clock driverKevin Wells2-0/+1175
Clock driver for the LPC32XX architecture Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: LPC32XX: Debug and IRQ macrosKevin Wells2-0/+78
Debug (printascii) and IRQ handler macros for the LPC32XX arch Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: LPC32XX: Initial arch header filesKevin Wells12-0/+1225
Header files for the LPC32xx arch Signed-off-by: Kevin Wells <[email protected]> Signed-off-by: Uwe Kleine-König <[email protected]>
2010-07-27ARM: 6239/1: mmci: let core poll for card detectionRabin Vincent1-21/+1
Use the MMC core's ability to poll for card detection. This also has the advantage of doing the gpio_get_value from a workqueue instead of timer, allowing the gpio to be on a sleeping gpiochip. Acked-by: Linus Walleij <[email protected]> Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6238/1: mmci: fix multi block transfersRabin Vincent1-1/+1
Fix the data transfer size to allow multi block transfers to work. Acked-by: Linus Walleij <[email protected]> Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6237/1: mmci: use sg_miter API to fix multi-page sg handlingRabin Vincent2-56/+39
The mmci driver's SG list iteration logic assumes that each SG entry spans only one page, and only maps and flushes one page of the sg. This is not a valid assumption. Fix it by converting the driver to the sg_miter API, which correctly handles sgs which span multiple pages. Acked-by: Linus Walleij <[email protected]> Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: Fix section build warnings for AMBA driversRussell King4-5/+5
Found in the Versatile build: WARNING: drivers/built-in.o(.data+0x14c): Section mismatch in reference from the variable pl061_gpio_driver to the (unknown reference) .init.data:(unknown) The variable pl061_gpio_driver references the (unknown reference) __initdata (unknown) WARNING: drivers/built-in.o(.data+0x40f8): Section mismatch in reference from the variable pl011_driver to the (unknown reference) .init.data:(unknown) The variable pl011_driver references the (unknown reference) __initdata (unknown) WARNING: drivers/built-in.o(.data+0x5ab4): Section mismatch in reference from the variable pl031_driver to the (unknown reference) .init.data:(unknown) The variable pl031_driver references the (unknown reference) __initdata (unknown) Basically, amba_id structures must not be __initdata. Also fix: WARNING: drivers/built-in.o(.data+0x138): Section mismatch in reference from the variable pl061_gpio_driver to the function .init.text:pl061_probe() The variable pl061_gpio_driver references the function __init pl061_probe() which is an incorrectly annotated probe function. Fix it to reflect the other AMBA bus probe functions by removing the __init attributation. Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: call machine_shutdown() from machine_halt(), etcRussell King3-9/+18
x86 calls machine_shutdown() from the various machine_*() calls which take the machine down ready for halting, restarting, etc, and uses this to bring the system safely to a point where those actions can be performed. Such actions are stopping the secondary CPUs. So, change the ARM implementation of these to reflect what x86 does. This solves kexec problems on ARM SMP platforms, where the secondary CPUs were left running across the kexec call. Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: SMP: Always enable clock event broadcast supportRussell King3-3/+8
The TWD local timers are unable to wake up the CPU when it is placed into a low power mode, eg. C3. Therefore, we need to adapt things such that the TWD code can cope with this. We do this by always providing a broadcast tick function, and marking the fact that the TWD local timer will stop in low power modes. This means that when the CPU is placed into a low power mode, the core timer code marks this fact, and allows an IPI to be given to the core. Tested-by: Santosh Shilimkar <[email protected]> Signed-off-by: Russell King <[email protected]> Cc: Catalin Marinas <[email protected]> Cc: Thomas Gleixner <[email protected]>
2010-07-27ARM: Factor out common code from cpu_proc_fin()Russell King26-124/+40
All implementations of cpu_proc_fin() start by disabling interrupts and then flush caches. Rather than have every processors proc_fin() implementation do this, move it out into generic code - and move the cache flush past setup_mm_for_reboot() (so it can benefit from having caches still enabled.) This allows cpu_proc_fin() to become independent of the L1/L2 cache types, and eventually move the L2 cache flushing into the L2 support code. Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6268/1: ARMv6K and ARMv7 use fault statuses 3 and 6 as Access Flag faultKirill A. Shutemov2-2/+23
Statuses 3 (0b00011) and 6 (0x00110) of DFSR are Access Flags faults on ARMv6K and ARMv7. Let's patch fsr_info[] at runtime if we are on ARMv7 or later. Unfortunately, we don't have runtime check for 'K' extension, so we can't check for it. Signed-off-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6256/1: Check arch version and modify fsr_info[] depends on it at runtimeKirill A. Shutemov1-5/+11
Signed-off-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6255/1: Workaround infinity loop in handling of translation faultsKirill A. Shutemov1-1/+10
On ARM one Linux PGD entry contains two hardware entries (see page tables layout in pgtable.h). We normally guarantee that we always fill both L1 entries. But create_mapping() doesn't follow the rule. It can create inidividual L1 entries, so here we have to call pmd_none() check in do_translation_fault() for the entry really corresponded to address, not for the first of pair. Signed-off-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6269/1: Add 'code' parameter for hook_fault_code()Kirill A. Shutemov10-20/+25
Add one more parameter to hook_fault_code() to be able to set 'code' field of struct fsr_info. Signed-off-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6252/1: Use SIGBUS for unaligned access instead of SIGILLKirill A. Shutemov2-4/+4
POSIX specify to use signal SIGBUS with code BUS_ADRALN for invalid address alignment. Signed-off-by: Kirill A. Shutemov <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6251/1: Make SPARSE_IRQ a hidden optioneric miao1-4/+1
SPARSE_IRQ doesn't need to be a visible option, only those platforms supporting that will select it. Signed-off-by: Eric Miao <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: DMA coherent allocator: align remapped addressesRussell King3-4/+18
The DMA coherent remap area is used to provide an uncached mapping of memory for coherency with DMA engines. Currently, we look for any free hole which our allocation will fit in with page alignment. However, this can lead to fragmentation of the area, and allows small allocations to cross L1 entry boundaries. This is undesirable as we want to move towards allocating sections of memory. Align allocations according to the size, limiting the alignment between the page and section sizes. Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: use generic ioremap_page_range()Russell King1-70/+4
We don't need our own implementation of this, use the generic library implementation instead. Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6158/2: PL011 baudrate extension for ST-Ericssons derivativeLinus Walleij2-2/+26
Implementation of the ST-Ericsson baudrate extension in the PL011 block. In this modified variant it is possible to change the sampling factor from 16 to 8, and thanks to this we can get higher baudrates while still using the same peripheral clock. Also replace the simple division to determine the baud divisor with DIV_ROUND_CLOSEST() rather than a simple integer division. Cc: Alessandro Rubini <[email protected]> Cc: Jerzy Kasenberg <[email protected]> Signed-off-by: Marcin Mielczarczyk <[email protected]> Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6157/2: PL011 TX/RX split of LCR for ST-Ericssons derivativeLinus Walleij2-11/+52
In the ST-Ericsson version of the PL011 the TX and RX have different control registers. Cc: Alessandro Rubini <[email protected]> Signed-off-by: Marcin Mielczarczyk <[email protected]> Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6213/1: atomic64_test: add ARM as supported architectureWill Deacon1-1/+1
ARM has support for the atomic64_dec_if_positive operation so ensure that it is tested by the atomic64_test routine. Acked-by: Nicolas Pitre <[email protected]> Signed-off-by: Will Deacon <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27Merge branch 'origin' into miscRussell King852-200622/+8422
2010-07-27ARM: 6225/1: make TCM allocation static and common for all archsLinus Walleij6-73/+90
This changes the TCM handling so that a fixed area is reserved at 0xfffe0000-0xfffeffff for TCM. This areas is used by XScale but XScale does not have TCM so the mechanisms are mutually exclusive. This change is needed to make TCM detection more dynamic while still being able to compile code into it, and is a must for the unified ARM goals: the current TCM allocation at different places in memory for each machine would be a nightmare if you want to compile a single image for more than one machine with TCM so it has to be nailed down in one place. Signed-off-by: Linus Walleij <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: Versatile: fix section mismatchRussell King1-1/+1
WARNING: vmlinux.o(.text+0xbf38): Section mismatch in reference from the function pci_versatile_scan_bus() to the function .devinit.text:pci_scan_bus_parented() The function pci_versatile_scan_bus() references the function __devinit pci_scan_bus_parented(). Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: Remove unnecessary call to find_limits()Russell King1-5/+3
Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: LMB: convert pfn_valid to use LMBRussell King1-5/+4
Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: LMB: Convert arm_memory_present() to use LMB memory informationRussell King1-7/+6
Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: OMAP: Convert OMAPFB and VRAM SDRAM reservation to LMBRussell King5-34/+39
Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: Convert platform reservations to use LMB rather than bootmemRussell King14-31/+32
Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: initial LMB trialRussell King7-155/+83
Acked-by: Tony Lindgren <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: early_pte_alloc()Russell King1-13/+13
Provide a common function for allocating early PTE tables. Signed-off-by: Russell King <[email protected]>
2010-07-27ARM: 6267/1: mop500: add AB8500 interrupt supportRabin Vincent3-0/+33
Add the platform data to enable AB8500 interrupt support. Acked-by: Linus Walleij <[email protected]> Acked-by: Srinidhi Kasagar <[email protected]> Signed-off-by: Rabin Vincent <[email protected]> Signed-off-by: Russell King <[email protected]>
2010-07-26Merge branch 'x86-fixes-for-linus' of ↵Linus Torvalds2-11/+16
git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip * 'x86-fixes-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/linux-2.6-tip: x86: Do not try to disable hpet if it hasn't been initialized before x86, i8259: Only register sysdev if we have a real 8259 PIC
2010-07-26s2io: fixing DBG_PRINT() macroBreno Leitao1-1/+1
Patch 9e39f7c5b311a306977c5471f9e2ce4c456aa038 changed the DBG_PRINT() macro and the if clause was wrongly changed. It means that currently all the DBG_PRINT are being printed, flooding the kernel log buffer with things like: s2io: eth6: Next block at: c0000000b9c90000 s2io: eth6: In Neterion Tx routine Signed-off-by: Breno Leitao <[email protected]> Acked-by: Sreenivasa Honnur <[email protected]> Signed-off-by: David S. Miller <[email protected]>
2010-07-26Merge branch 'fixes' of ↵Linus Torvalds3-37/+27
git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq * 'fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/davej/cpufreq: [CPUFREQ] powernow-k8: Limit Pstate transition latency check [CPUFREQ] Fix PCC driver error path [CPUFREQ] fix double freeing in error path of pcc-cpufreq [CPUFREQ] pcc driver should check for pcch method before calling _OSC [CPUFREQ] fix memory leak in cpufreq_add_dev [CPUFREQ] revert "[CPUFREQ] remove rwsem lock from CPUFREQ_GOV_STOP call (second call site)"
2010-07-26Merge branch 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linusLinus Torvalds19-53/+61
* 'upstream' of git://git.linux-mips.org/pub/scm/upstream-linus: MIPS: Set io_map_base for several PCI bridges lacking it MIPS: Alchemy: Define eth platform devices in the correct order MIPS: BCM63xx: Prevent second enet registration on BCM6338 MIPS: Quit using undefined behavior of ADDU in 64-bit atomic operations. MIPS: N32: Define getdents64. MIPS: MTX-1: Fix PCI on the MeshCube and related boards MIPS: Make init_vdso a subsys_initcall. MIPS: "Fix" useless 'init_vdso successfully' message. MIPS: PowerTV: Move register setup to before reading registers. SOUND: Au1000: Fix section mismatch VIDEO: Au1100fb: Fix section mismatch VIDEO: PMAGB-B: Fix section mismatch VIDEO: PMAG-BA: Fix section mismatch NET: declance: Fix section mismatches VIDEO. gbefb: Fix section mismatches.
2010-07-26drm/i915: make sure we shut off the panel in eDP configsJesse Barnes1-1/+1
Fix error from the last pull request. Making sure we shut the panel off is more correct and saves power. Signed-off-by: Jesse Barnes <[email protected]> Signed-off-by: Linus Torvalds <[email protected]>
2010-07-26xfs simplify and speed up direct I/O completionsChristoph Hellwig1-82/+76
Our current handling of direct I/O completions is rather suboptimal, because we defer it to a workqueue more often than needed, and we perform a much to aggressive flush of the workqueue in case unwritten extent conversions happen. This patch changes the direct I/O reads to not even use a completion handler, as we don't bother to use it at all, and to perform the unwritten extent conversions in caller context for synchronous direct I/O. For a small I/O size direct I/O workload on a consumer grade SSD, such as the untar of a kernel tree inside qemu this patch gives speedups of about 5%. Getting us much closer to the speed of a native block device, or a fully allocated XFS file. Signed-off-by: Christoph Hellwig <[email protected]> Reviewed-by: Dave Chinner <[email protected]> Signed-off-by: Alex Elder <[email protected]>
2010-07-26xfs: move aio completion after unwritten extent conversionChristoph Hellwig1-3/+16
If we write into an unwritten extent using AIO we need to complete the AIO request after the extent conversion has finished. Without that a read could race to see see the extent still unwritten and return zeros. For synchronous I/O we already take care of that by flushing the xfsconvertd workqueue (which might be a bit of overkill). To do that add iocb and result fields to struct xfs_ioend, so that we can call aio_complete from xfs_end_io after the extent conversion has happened. Note that we need a new result field as io_error is used for positive errno values, while the AIO code can return negative error values and positive transfer sizes. Signed-off-by: Christoph Hellwig <[email protected]> Reviewed-by: Dave Chinner <[email protected]> Signed-off-by: Alex Elder <[email protected]>
2010-07-26direct-io: move aio_complete into ->end_ioChristoph Hellwig6-18/+37
Filesystems with unwritten extent support must not complete an AIO request until the transaction to convert the extent has been commited. That means the aio_complete calls needs to be moved into the ->end_io callback so that the filesystem can control when to call it exactly. This makes a bit of a mess out of dio_complete and the ->end_io callback prototype even more complicated. Signed-off-by: Christoph Hellwig <[email protected]> Reviewed-by: Jan Kara <[email protected]> Signed-off-by: Alex Elder <[email protected]>
2010-07-26xfs: fix big endian buildDave Chinner1-1/+2
Commit 0fd7275cc42ab734eaa1a2c747e65479bd1e42af ("xfs: fix gcc 4.6 set but not read and unused statement warnings") failed to convert some code inside XFS_NATIVE_HOST (big endian host code only) and hence fails to build on such machines. Fix it. Signed-off-by: Dave Chinner <[email protected]> Signed-off-by: Alex Elder <[email protected]>