GitHub/mt8127/android_kernel_alcatel_ttab.git
12 years agoMerge branch 'devel-stable' into for-linus
Russell King [Tue, 27 Mar 2012 10:30:31 +0000 (11:30 +0100)]
Merge branch 'devel-stable' into for-linus

Conflicts:
arch/arm/Kconfig.debug
arch/arm/plat-versatile/Kconfig
Merge fixes:
arch/arm/mach-integrator/Kconfig
drivers/clocksource/Kconfig

12 years agoMerge branches 'l2', 'pgt2' and 'misc' into for-linus
Russell King [Tue, 27 Mar 2012 10:29:31 +0000 (11:29 +0100)]
Merge branches 'l2', 'pgt2' and 'misc' into for-linus

12 years agoARM: fix Kconfig warning for HAVE_BPF_JIT
Russell King [Tue, 27 Mar 2012 09:44:23 +0000 (10:44 +0100)]
ARM: fix Kconfig warning for HAVE_BPF_JIT

Last night's randconfig and the allnoconfig builds spat out the
following warning while building:

warning: (ARM) selects HAVE_BPF_JIT which has unmet direct dependencies (NET)

Acked-by: Mircea Gherzan <mgherzan@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7361/1: provide XIP_VIRT_ADDR for no-MMU builds
Uwe Kleine-König [Wed, 14 Mar 2012 09:30:52 +0000 (10:30 +0100)]
ARM: 7361/1: provide XIP_VIRT_ADDR for no-MMU builds

XIP_VIRT_ADDR is needed for XIP builds and currently only defined for
builds with CONFIG_MMU.

Also provide it for no-MMU builds to make it possible to build an XIP
kernel for MMU-less machines. As these lack an MMU it has to be an
identity mapping.

Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7349/1: integrator: convert to sparse irqs
Linus Walleij [Sun, 26 Feb 2012 09:46:48 +0000 (10:46 +0100)]
ARM: 7349/1: integrator: convert to sparse irqs

This converts the Integrator AP/CP to use sparse IRQs.
Tested on both machines.

Acked-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7259/3: net: JIT compiler for packet filters
Mircea Gherzan [Fri, 16 Mar 2012 12:37:12 +0000 (13:37 +0100)]
ARM: 7259/3: net: JIT compiler for packet filters

Based of Matt Evans's PPC64 implementation.

The compiler generates ARM instructions but interworking is
supported for Thumb2 kernels.

Supports both little and big endian. Unaligned loads are emitted
for ARMv6+. Not all the BPF opcodes that deal with ancillary data
are supported. The scratch memory of the filter lives on the stack.
Hardware integer division is used if it is available.

Enabled in the same way as for x86-64 and PPC64:

echo 1 > /proc/sys/net/core/bpf_jit_enable

A value greater than 1 enables opcode output.

Signed-off-by: Mircea Gherzan <mgherzan@gmail.com>
Acked-by: David S. Miller <davem@davemloft.net>
Acked-by: Eric Dumazet <eric.dumazet@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7334/1: add jump label support
Rabin Vincent [Sat, 18 Feb 2012 16:52:41 +0000 (17:52 +0100)]
ARM: 7334/1: add jump label support

Add the arch-specific code to support jump labels for ARM and Thumb-2.

This code will only be activated on compilers that are capable of
building it.  It has been tested with GCC 4.6 patched with the patch
from GCC bug 48637.

Cc: Jason Baron <jbaron@redhat.com>
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7333/2: jump label: detect %c support for ARM
Rabin Vincent [Fri, 24 Feb 2012 16:06:20 +0000 (17:06 +0100)]
ARM: 7333/2: jump label: detect %c support for ARM

Some versions of ARM GCC which do support asm goto, do not support
the %c specifier.  Since we need the %c to support jump labels
on ARM, detect that too in the asm goto detection script to avoid
build errors with these versions.

http://gcc.gnu.org/bugzilla/show_bug.cgi?id=48637

Acked-by: Jason Baron <jbaron@redhat.com>
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7338/1: add support for early console output via semihosting
Nicolas Pitre [Wed, 22 Feb 2012 20:58:03 +0000 (21:58 +0100)]
ARM: 7338/1: add support for early console output via semihosting

This is a very simple method for code running in an emulator, or under
the supervision of a debugger, to use I/O facilities on the controlling
host.

Tested with OpenOCD, and ARM's Fast Models.

Details on semihosting can be found in chapter 8 of
DUI0203I_rvct_developer_guide.pdf from ARM Ltd.

Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: use set_current_blocked() and block_sigmask()
Matt Fleming [Mon, 5 Mar 2012 23:05:34 +0000 (15:05 -0800)]
ARM: use set_current_blocked() and block_sigmask()

As described in e6fa16ab ("signal: sigprocmask() should do
retarget_shared_pending()") the modification of current->blocked is
incorrect as we need to check for shared signals we're about to block.

Also, use the new helper function introduced in commit 5e6292c0f28f
("signal: add block_sigmask() for adding sigmask to current->blocked")
which centralises the code for updating current->blocked after
successfully delivering a signal and reduces the amount of duplicate code
across architectures.  In the past some architectures got this code wrong,
so using this helper function should stop that from happening again.

Cc: Arnd Bergmann <arnd.bergmann@linaro.org>
Cc: Dave Martin <dave.martin@linaro.org>
Cc: Nicolas Pitre <nicolas.pitre@linaro.org>
Cc: Will Deacon <will.deacon@arm.com>
Acked-by: Oleg Nesterov <oleg@redhat.com>
Signed-off-by: Matt Fleming <matt.fleming@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: exec: remove redundant set_fs(USER_DS)
Mathias Krause [Mon, 5 Mar 2012 23:05:34 +0000 (15:05 -0800)]
ARM: exec: remove redundant set_fs(USER_DS)

The address limit is already set in flush_old_exec() so this
set_fs(USER_DS) is redundant.

Signed-off-by: Mathias Krause <minipli@googlemail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7332/1: extract out code patch function from kprobes
Rabin Vincent [Sat, 18 Feb 2012 16:50:51 +0000 (17:50 +0100)]
ARM: 7332/1: extract out code patch function from kprobes

Extract out the code patching code from kprobes so that it can be used
from the jump label code.  Additionally, the separated code:

 - Uses the IS_ENABLED() macros instead of the #ifdefs for THUMB2
   support

 - Unifies the two separate functions in kprobes, providing one function
   that uses stop_machine() internally, and one that can be called from
   stop_machine() directly

 - Patches the text on all CPUs only on processors requiring software
   broadcasting of cache operations

Acked-by: Jon Medhurst <tixy@yxit.co.uk>
Tested-by: Jon Medhurst <tixy@yxit.co.uk>
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7331/1: extract out insn generation code from ftrace
Rabin Vincent [Sat, 18 Feb 2012 16:50:06 +0000 (17:50 +0100)]
ARM: 7331/1: extract out insn generation code from ftrace

Extract out the instruction generation code so that it can be used
for jump labels too.

Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7330/1: ftrace: use canonical Thumb-2 wide instruction format
Rabin Vincent [Sat, 18 Feb 2012 16:47:03 +0000 (17:47 +0100)]
ARM: 7330/1: ftrace: use canonical Thumb-2 wide instruction format

As commit 592201a9f15 (ARM: Thumb-2: Support Thumb-2 in undefined
instruction handler) says:

    32-bit Thumb instructions are specified in the form:
        ((first_half << 16 ) | second_half)
    which matches the layout used by the ARM ARM.

Convert the ftrace code to use the same format to avoid the usage of
different formats in kernel code.

Acked-by: Dave Martin <dave.martin@linaro.org>
Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7351/1: ftrace: remove useless memory checks
Rabin Vincent [Wed, 29 Feb 2012 14:59:07 +0000 (15:59 +0100)]
ARM: 7351/1: ftrace: remove useless memory checks

Before replacing an instruction, the ftrace code determines what the old
instruction should be and verifies that that's what's really there in
memory before replacing it.  This is useful if for example a bug in
mcountrecord causes it to record wrong locations.

However, in cases where we replace call sites in entry-common.S, these
checks are not needed.  For these, we currently just memcpy() the memory
content and then "verify" it -- this is quite useless and can be
removed.

Signed-off-by: Rabin Vincent <rabin@rab.in>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7316/1: kexec: EOI active and mask all interrupts in kexec crash path
Will Deacon [Fri, 3 Feb 2012 13:48:01 +0000 (14:48 +0100)]
ARM: 7316/1: kexec: EOI active and mask all interrupts in kexec crash path

The kexec machine crash code can be called in interrupt context via a
sysrq trigger made using the magic key combination. If the irq chip
dealing with the serial interrupt is using the fasteoi flow handler,
then we will never EOI the interrupt because the interrupt handler will
be fatal. In the case of a GIC, this results in the crash kernel not
receiving interrupts on that CPU interface.

This patch adds code (based on the PowerPC implementation) to EOI any
pending interrupts on the crash CPU before masking and disabling all
interrupts. Secondary cores are not a problem since they are placed into
a cpu_relax() loop via an IPI.

Reported-by: Lei Wen <leiwen@marvell.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: Versatile Express: add NO_IOPORT
Russell King [Wed, 15 Feb 2012 11:55:22 +0000 (11:55 +0000)]
ARM: Versatile Express: add NO_IOPORT

On Versatile Express, the PCI Express buses are broken and unusable, so
we aren't going to support PCI/ISA IO cycles on this platform.  Remove
the PCI/ISA IO inb et.al. support for this platform.

Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: get rid of asm/irq.h in asm/prom.h
Russell King [Thu, 9 Feb 2012 16:16:28 +0000 (16:16 +0000)]
ARM: get rid of asm/irq.h in asm/prom.h

Avoid potential build problems caused by lacking mach/irqs.h includes
on non-OF builds caused by an errant include in asm/prom.h.  asm/prom.h
requires nothing from asm/irq.h, as Grant says:

On Mon, Feb 06, 2012 at 05:56:23AM +0000, Grant Likely wrote:
> On Sat, Feb 04, 2012 at 10:17:48PM +0000, Russell King wrote:
> > Finally, do we need asm/irq.h in our asm/prom.h ?  That's causing
> > fragility between DT and non-DT builds, because people are finding
> > that their DT builds work without their mach/irqs.h includes but
> > fail when built with non-DT.  The only thing which DT might need -
> > at the most - is NR_IRQS, but I'd hope with things like irq domains
> > it doesn't actually require it.
>
> I don't think so.  There may be a file or two that break because they're
> not including everything they need, but I don't think anything in the
> header requires it.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7319/1: Print debug info for SIGBUS in user faults
Javi Merino [Mon, 6 Feb 2012 14:45:36 +0000 (15:45 +0100)]
ARM: 7319/1: Print debug info for SIGBUS in user faults

Print debug information on user faults for SIGBUS if user_debug = 16
in the kernel command line.

Reference: <1327333344-26340-1-git-send-email-javi.merino@arm.com>

Signed-off-by: Javi Merino <javi.merino@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7318/1: gic: refactor irq_start assignment
Will Deacon [Fri, 3 Feb 2012 13:52:14 +0000 (14:52 +0100)]
ARM: 7318/1: gic: refactor irq_start assignment

The irq_start and hwirq_base assignment code is fairly hairy and ended
up being difficult to read following a conflict resolution for 3.2.

This patch rearranges the code slightly to make it easier to read.

Cc: Marc Zyngier <marc.zyngier@arm.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7317/1: irq: avoid NULL check in for_each_irq_desc loop
Will Deacon [Fri, 3 Feb 2012 13:50:07 +0000 (14:50 +0100)]
ARM: 7317/1: irq: avoid NULL check in for_each_irq_desc loop

ARM unconditionally selects CONFIG_GENERIC_HARDIRQS, so the definition
of for_each_irq_desc will check that the desc is non-NULL anyway.

This patch removes a redundant check from the IRQ migration code.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7315/1: perf: add support for the Cortex-A7 PMU
Will Deacon [Fri, 3 Feb 2012 13:46:01 +0000 (14:46 +0100)]
ARM: 7315/1: perf: add support for the Cortex-A7 PMU

Cortex-A7 implements an ARMv7-compatible PMU compliant with the PMUv2
architecture specification.

This patch adds support for the PMU to the ARM perf backend.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: sync sched_clock() state on suspend
Russell King [Sat, 4 Feb 2012 12:31:27 +0000 (12:31 +0000)]
ARM: sync sched_clock() state on suspend

Ensure that the software state for sched_clock() is updated at the
point of suspend so that we avoid losing ticks since the last update.

This prevents the platform dependent possibility that sched_clock()
may appear to go backwards across a suspend/resume cycle.

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: Add compiled ISA to oops dumps
Russell King [Sat, 4 Feb 2012 12:12:11 +0000 (12:12 +0000)]
ARM: Add compiled ISA to oops dumps

Add the compiled ISA to oops dumps, along side the preempt/smp
configuration.  This allows us to see immediately whether the kernel
was compiled for Thumb-2 or not.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: Optimize multi-CPU tlb flushing a little more
Russell King [Sat, 4 Feb 2012 10:55:38 +0000 (10:55 +0000)]
ARM: Optimize multi-CPU tlb flushing a little more

The compiler does not conditionalize the assembly instructions for
the tlb operations, which leads to sub-optimal code being generated
when building a kernel for multiple CPUs.

We can tweak things fairly simply as the code fragment below shows:

    17f8:       e3120001        tst     r2, #1  ; 0x1
...
    1800:       0a000000        beq     1808 <handle_pte_fault+0x194>
    1804:       ee061f10        mcr     15, 0, r1, cr6, cr0, {0}
    1808:       e3120004        tst     r2, #4  ; 0x4
    180c:       0a000000        beq     1814 <handle_pte_fault+0x1a0>
    1810:       ee081f36        mcr     15, 0, r1, cr8, cr6, {1}
becomes:
    17f0:       e3120001        tst     r2, #1  ; 0x1
    17f4:       1e063f10        mcrne   15, 0, r3, cr6, cr0, {0}
    17f8:       e3120004        tst     r2, #4  ; 0x4
    17fc:       1e083f36        mcrne   15, 0, r3, cr8, cr6, {1}

Overall, for Realview with V6 and V7 CPUs configured:

   text    data     bss     dec     hex filename
4153998  207340 5371036 9732374  948116 ../build/realview/vmlinux.before
4153366  207332 5371036 9731734  947e96 ../build/realview/vmlinux.after

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7312/1: only show modules in the memory layout for MODULES=y
Uwe Kleine-König [Wed, 1 Feb 2012 10:16:51 +0000 (11:16 +0100)]
ARM: 7312/1: only show modules in the memory layout for MODULES=y

This line is irritating and wrong when modules are not supported, so
don't show it then.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Acked-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7001/2: Wire up support for the XZ decompressor
Imre Kaloz [Thu, 26 Jan 2012 12:08:57 +0000 (13:08 +0100)]
ARM: 7001/2: Wire up support for the XZ decompressor

Wire up support for the XZ decompressor

Signed-off-by: Imre Kaloz <kaloz@openwrt.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7311/1: Add generic instruction opcode manipulation helpers
Dave Martin [Wed, 1 Feb 2012 09:42:22 +0000 (10:42 +0100)]
ARM: 7311/1: Add generic instruction opcode manipulation helpers

This patch adds some endianness-agnostic helpers to convert machine
instructions between canonical integer form and in-memory
representation.

A canonical integer form for representing instructions is also
formalised here.

Signed-off-by: Dave Martin <dave.martin@linaro.org>
Acked-by: Nicolas Pitre <nico@linaro.org>
Tested-by: Jon Medhurst <tixy@yxit.co.uk>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7310/1: integrator: implement sched_clock across all boards
Linus Walleij [Tue, 31 Jan 2012 22:38:23 +0000 (23:38 +0100)]
ARM: 7310/1: integrator: implement sched_clock across all boards

Now that we can select a sched_clock at runtime, let's implement
it for the Integrator AP, default-select the one found in all
other board it for all plat-versatile boards and make the right
clock kick in at runtime.

Signed-off-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7294/1: vectors: use gate_vma for vectors user mapping
Will Deacon [Fri, 20 Jan 2012 11:01:13 +0000 (12:01 +0100)]
ARM: 7294/1: vectors: use gate_vma for vectors user mapping

The current user mapping for the vectors page is inserted as a `horrible
hack vma' into each task via arch_setup_additional_pages. This causes
problems with the MM subsystem and vm_normal_page, as described here:

https://lkml.org/lkml/2012/1/14/55

Following the suggestion from Hugh in the above thread, this patch uses
the gate_vma for the vectors user mapping, therefore consolidating
the horrible hack VMAs into one.

Acked-and-Tested-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: move CP15 definitions to separate header file
Russell King [Thu, 19 Jan 2012 10:05:41 +0000 (10:05 +0000)]
ARM: move CP15 definitions to separate header file

Avoid namespace conflicts with drivers over the CP15 definitions by
moving CP15 related prototypes and definitions to a private header
file.

Acked-by: Stephen Warren <swarren@nvidia.com>
Tested-by: Stephen Warren <swarren@nvidia.com> [Tegra]
Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Tested-by: H Hartley Sweeten <hsweeten@visionengravers.com> [EP93xx]
Acked-by: Nicolas Pitre <nico@linaro.org>
Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: SMP: use a timing out completion for cpu hotplug
Russell King [Wed, 18 Jan 2012 15:59:45 +0000 (15:59 +0000)]
ARM: SMP: use a timing out completion for cpu hotplug

Rather than open-coding the jiffy-based wait, and polling for the
secondary CPU to come online, use a completion instead.  This
removes the need to poll, instead we will be notified when the
secondary CPU has initialized.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoMerge branch 'sched_clock-for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git...
Russell King [Thu, 8 Mar 2012 08:51:13 +0000 (08:51 +0000)]
Merge branch 'sched_clock-for-rmk' of git://git./linux/kernel/git/maz/arm-platforms into devel-stable

12 years agomsm: timer: Support sched_clock()
Stephen Boyd [Wed, 22 Feb 2012 01:39:37 +0000 (01:39 +0000)]
msm: timer: Support sched_clock()

Now that sched_clock is mandatory on ARM it's simple to add
sched_clock support to the MSM timer code. Add it so that we get
more accurate sched_clock output than the jiffies based version
that's provided by default.

Signed-off-by: Stephen Boyd <sboyd@codeaurora.org>
Acked-by: David Brown <davidb@codeaurora.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
12 years agoARM: 7344/1: pxa: mainstone: add missing include for IRQ_BOARD_START
Rob Herring [Thu, 23 Feb 2012 13:30:51 +0000 (14:30 +0100)]
ARM: 7344/1: pxa: mainstone: add missing include for IRQ_BOARD_START

As part of mach/irqs.h include removal from sparse, mainstone.h was missed.
This fixes the compile of the pcmcia driver.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoMerge branch 'sched_clock-for-rmk' of git://git.kernel.org/pub/scm/linux/kernel/git...
Russell King [Sat, 4 Feb 2012 10:32:18 +0000 (10:32 +0000)]
Merge branch 'sched_clock-for-rmk' of git://git./linux/kernel/git/maz/arm-platforms into devel-stable

12 years agoMerge branch 'sparse_irq' of git://sources.calxeda.com/kernel/linux into devel-stable
Russell King [Sat, 4 Feb 2012 10:31:38 +0000 (10:31 +0000)]
Merge branch 'sparse_irq' of git://sources.calxeda.com/kernel/linux into devel-stable

12 years agoARM: Make the sched_clock framework mandatory
Marc Zyngier [Wed, 18 Jan 2012 15:05:11 +0000 (15:05 +0000)]
ARM: Make the sched_clock framework mandatory

All sched_clock() providers have been converted to the sched_clock
framework, which also provides a jiffy based implementation for
the platforms that do not provide a counter.

It is now possible to make the sched_clock framework mandatory,
effectively preventing new platforms to add new sched_clock()
functions, which would be detrimental to the single zImage work.

Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
12 years agoARM: prima2: convert to common sched_clock() implementation
Marc Zyngier [Mon, 16 Jan 2012 11:44:12 +0000 (11:44 +0000)]
ARM: prima2: convert to common sched_clock() implementation

Prima2 has its own sched_clock() implementation, which gets in the
way of a single zImage. Moving to the common sched_clock framework
makes the code slightly cleaner (the mapping hack in sched_clock()
goes away...).

Acked-by: Barry Song <baohua.song@csr.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
12 years agoARM: davinci: convert to common sched_clock() implementation
Marc Zyngier [Mon, 16 Jan 2012 11:44:12 +0000 (11:44 +0000)]
ARM: davinci: convert to common sched_clock() implementation

Davinci has its own sched_clock() implementation, which gets in the
way of a single zImage. Moving to the common sched_clock framework
makes the code slightly cleaner.

Acked-by: Sekhar Nori <nsekhar@ti.com>
Cc: Kevin Hilman <khilman@ti.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
12 years agoARM: davinci: time.c: group related header files together
Sekhar Nori [Fri, 23 Dec 2011 17:57:19 +0000 (17:57 +0000)]
ARM: davinci: time.c: group related header files together

Rearrange header files to keep related header files
together.

Signed-off-by: Sekhar Nori <nsekhar@ti.com>
Signed-off-by: Marc Zyngier <marc.zyngier@arm.com>
12 years agoARM: picoxcell: remove mach/irqs.h
Jamie Iles [Fri, 13 Jan 2012 17:42:45 +0000 (17:42 +0000)]
ARM: picoxcell: remove mach/irqs.h

picoxcell uses SPARSE_IRQ which means we don't need a mach/irqs.h
anymore so kill it off.

Signed-off-by: Jamie Iles <jamie@jamieiles.com>
Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: highbank: select SPARSE_IRQ and remove irqs.h
Rob Herring [Tue, 3 Jan 2012 20:44:31 +0000 (14:44 -0600)]
ARM: highbank: select SPARSE_IRQ and remove irqs.h

irqs.h is optional now for SPARSE_IRQ, so select it and remove mach/irqs.h
from highbank.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: only include mach/irqs.h for !SPARSE_IRQ
Rob Herring [Tue, 3 Jan 2012 21:17:23 +0000 (15:17 -0600)]
ARM: only include mach/irqs.h for !SPARSE_IRQ

Make mach/irqs.h optional for SPARSE_IRQ. With this change mach/irqs.h can
be removed by converting platforms over to sparse irq.

Platforms either need to set nr_irqs in their machine desc or all irqchips
used by a platform need to allocate their irq_descs. There cannot be a
mixture. Once this is done, the platforms can select SPARSE_IRQ. shmobile
does the latter, and mmp and pxa do the former.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: pgtable: get rid of TOP_PTE()
Russell King [Mon, 4 Jul 2011 10:25:53 +0000 (11:25 +0100)]
ARM: pgtable: get rid of TOP_PTE()

Get rid of the TOP_PTE() macro as we now have proper accessor functions
instead.  No one should be directly referencing the top pte table
anymore.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: pgtable: provide get_top_pte() to complement set_top_pte()
Russell King [Mon, 4 Jul 2011 10:22:27 +0000 (11:22 +0100)]
ARM: pgtable: provide get_top_pte() to complement set_top_pte()

Provide get_top_pte() to complement set_top_pte(), moving the only
users of TOP_PTE to arch/arm/mm/mm.h.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: pgtable: consolidate set_pte_ext(TOP_PTE,...) + tlb flush
Russell King [Sat, 2 Jul 2011 14:20:44 +0000 (15:20 +0100)]
ARM: pgtable: consolidate set_pte_ext(TOP_PTE,...) + tlb flush

A number of places establish a PTE in our top page table and
immediately flush the TLB.  Rather than having this at every callsite,
provide an inline function for this purpose.

This changes some global tlb flushes to be local; each time we setup
one of these mappings, we always do it with preemption disabled which
would prevent us migrating to another CPU.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: pgtable: use mk_pte rather than pfn_pte(page_to_pfn())
Russell King [Sat, 2 Jul 2011 13:56:42 +0000 (14:56 +0100)]
ARM: pgtable: use mk_pte rather than pfn_pte(page_to_pfn())

mk_pte is provided to do this translation for us, so use it rather
than open-coding it in the copypage code.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: pgtable: move TOP_PTE address definitions to arch/arm/mm/mm.h
Russell King [Sat, 2 Jul 2011 13:46:27 +0000 (14:46 +0100)]
ARM: pgtable: move TOP_PTE address definitions to arch/arm/mm/mm.h

Move the TOP_PTE address definitions to one central place so that it's
easy to discover what they're being used for.  This helps to ensure
that there are no overlaps.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoMerge branch 'amba' into for-armsoc
Russell King [Thu, 26 Jan 2012 19:59:44 +0000 (19:59 +0000)]
Merge branch 'amba' into for-armsoc

12 years agoARM: amba: samsung: use common amba device initializers
Russell King [Fri, 20 Jan 2012 09:14:40 +0000 (09:14 +0000)]
ARM: amba: samsung: use common amba device initializers

Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: spear: use common amba device initializers
Russell King [Fri, 20 Jan 2012 09:14:14 +0000 (09:14 +0000)]
ARM: amba: spear: use common amba device initializers

Acked-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: nomadik: use common amba device initializers
Russell King [Sun, 18 Dec 2011 15:28:51 +0000 (15:28 +0000)]
ARM: amba: nomadik: use common amba device initializers

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: u300: use common amba device initializers
Russell King [Sun, 18 Dec 2011 15:26:38 +0000 (15:26 +0000)]
ARM: amba: u300: use common amba device initializers

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: lpc32xx: use common amba device initializers
Russell King [Sun, 18 Dec 2011 15:22:18 +0000 (15:22 +0000)]
ARM: amba: lpc32xx: use common amba device initializers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: netx: use common amba device initializers
Russell King [Sun, 18 Dec 2011 15:20:05 +0000 (15:20 +0000)]
ARM: amba: netx: use common amba device initializers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: bcmring: use common amba device initializers
Russell King [Sun, 18 Dec 2011 15:19:04 +0000 (15:19 +0000)]
ARM: amba: bcmring: use common amba device initializers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: ep93xx: use common amba device initializers
Russell King [Sun, 18 Dec 2011 15:16:40 +0000 (15:16 +0000)]
ARM: amba: ep93xx: use common amba device initializers

Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: omap2: use common amba device initializers
Russell King [Sun, 18 Dec 2011 15:13:47 +0000 (15:13 +0000)]
ARM: amba: omap2: use common amba device initializers

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: integrator: use common amba device initializers
Russell King [Sun, 18 Dec 2011 14:50:51 +0000 (14:50 +0000)]
ARM: amba: integrator: use common amba device initializers

Tested-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: realview: get rid of private platform amba_device initializer
Russell King [Sun, 18 Dec 2011 13:38:49 +0000 (13:38 +0000)]
ARM: amba: realview: get rid of private platform amba_device initializer

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: shmobile: remove NR_IRQS
Rob Herring [Tue, 3 Jan 2012 22:57:33 +0000 (16:57 -0600)]
ARM: shmobile: remove NR_IRQS

Remove NR_IRQS and explicitly include mach/irqs.h as needed. shmobile
properly allocates irq_descs for each irqchip, so setting .nr_irqs for
each machine is not needed.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: pxa: remove NR_IRQS
Rob Herring [Tue, 3 Jan 2012 22:53:48 +0000 (16:53 -0600)]
ARM: pxa: remove NR_IRQS

Remove NR_IRQS and add a per machine .nr_irqs setting.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: mmp: remove NR_IRQS
Rob Herring [Tue, 3 Jan 2012 22:50:40 +0000 (16:50 -0600)]
ARM: mmp: remove NR_IRQS

Remove NR_IRQS and add a per machine .nr_irqs setting. Clean-up namespace
replacing usage of IRQ_BOARD_START with MMP_NR_IRQS.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agosh: intc: remove dependency on NR_IRQS
Rob Herring [Tue, 17 Jan 2012 19:10:25 +0000 (13:10 -0600)]
sh: intc: remove dependency on NR_IRQS

SH intc has a compile time dependency on NR_IRQS. Make this dependency a
local define so that shmobile (and ARM in general) can have run-time
NR_IRQS setting.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agosh: intc: unify evt2irq/irq2evt macros for sh and arm
Rob Herring [Tue, 17 Jan 2012 17:20:23 +0000 (11:20 -0600)]
sh: intc: unify evt2irq/irq2evt macros for sh and arm

Move evt2irq and irq2evt macros definitions out of sh and arm includes
into a common location.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: it8152: explicitly include mach/irqs.h
Rob Herring [Tue, 3 Jan 2012 21:52:42 +0000 (15:52 -0600)]
ARM: it8152: explicitly include mach/irqs.h

In preparation to make mach/irqs.h optional, directly include mach/irq.h
to get IRQ_BOARD_START.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: mc146818rtc: remove unnecessary include of mach/irqs.h
Rob Herring [Tue, 3 Jan 2012 20:55:24 +0000 (14:55 -0600)]
ARM: mc146818rtc: remove unnecessary include of mach/irqs.h

The include of mach/irqs.h isn't needed, so remove it. Compiled CMOS rtc
driver. Add a check to make sure nothing depends on RTC_IRQ.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoARM: remove mc146818rtc.h from time.c
Rob Herring [Sun, 15 Jan 2012 23:05:56 +0000 (17:05 -0600)]
ARM: remove mc146818rtc.h from time.c

mc146818rtc.h is not needed in time.c, so remove it.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agogpio: pxa: explicitly include mach/irqs.h
Rob Herring [Tue, 3 Jan 2012 21:52:42 +0000 (15:52 -0600)]
gpio: pxa: explicitly include mach/irqs.h

In preparation to make mach/irqs.h optional and remove from asm/irq.h,
directly include mach/irq.h to get MMP_GPIO_TO_IRQ and PXA_GPIO_TO_IRQ.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agosound: pxa2xx-ac97: include mach/irqs.h directly
Rob Herring [Tue, 3 Jan 2012 23:10:17 +0000 (17:10 -0600)]
sound: pxa2xx-ac97: include mach/irqs.h directly

In preparation of removing mach/irqs.h include from asm/irq.h, include
mach/irqs.h directly.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
12 years agoirq: make SPARSE_IRQ an optionally hidden option
Rob Herring [Thu, 26 Jan 2012 02:02:40 +0000 (20:02 -0600)]
irq: make SPARSE_IRQ an optionally hidden option

On ARM, we don't want SPARSE_IRQ to be a user visible option. Make
SPARSE_IRQ visible based on MAY_HAVE_SPARSE_IRQ instead of depending
on HAVE_SPARSE_IRQ.

With this, SPARSE_IRQ is not visible on C6X and ARM.

Signed-off-by: Rob Herring <rob.herring@calxeda.com>
Cc: Russell King <linux@arm.linux.org.uk>
Cc: Mark Salter <msalter@redhat.com>
Cc: Aurelien Jacquiot <a-jacquiot@ti.com>
Cc: Benjamin Herrenschmidt <benh@kernel.crashing.org>
Cc: Paul Mackerras <paulus@samba.org>
Cc: Paul Mundt <lethal@linux-sh.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Ingo Molnar <mingo@redhat.com>
Cc: "H. Peter Anvin" <hpa@zytor.com>
Cc: linux-arm-kernel@lists.infradead.org
Cc: linux-kernel@vger.kernel.org
Cc: linux-c6x-dev@linux-c6x.org
Cc: linuxppc-dev@lists.ozlabs.org
Cc: linux-sh@vger.kernel.org
12 years agoARM: amba: versatile: get rid of private platform amba_device initializer
Russell King [Sun, 18 Dec 2011 12:21:09 +0000 (12:21 +0000)]
ARM: amba: versatile: get rid of private platform amba_device initializer

Tested-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: vexpress: get rid of private platform amba_device initializer
Russell King [Sun, 18 Dec 2011 12:07:09 +0000 (12:07 +0000)]
ARM: amba: vexpress: get rid of private platform amba_device initializer

Acked-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: provide common initializers for static amba devices
Russell King [Sun, 18 Dec 2011 12:06:25 +0000 (12:06 +0000)]
ARM: amba: provide common initializers for static amba devices

Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: make use of -1 IRQs warn
Russell King [Sun, 18 Dec 2011 11:43:56 +0000 (11:43 +0000)]
ARM: amba: make use of -1 IRQs warn

Make the core warn about the use of -1 (NO_IRQ)

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: u300: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:42:44 +0000 (11:42 +0000)]
ARM: amba: u300: get rid of NO_IRQ initializers

Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: spear: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:42:30 +0000 (11:42 +0000)]
ARM: amba: spear: get rid of NO_IRQ initializers

Acked-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: netx: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:41:54 +0000 (11:41 +0000)]
ARM: amba: netx: get rid of NO_IRQ initializers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: nomadik: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:41:38 +0000 (11:41 +0000)]
ARM: amba: nomadik: get rid of NO_IRQ initializers

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: mxs: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:41:22 +0000 (11:41 +0000)]
ARM: amba: mxs: get rid of NO_IRQ initializers

Acked-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: lpc32xx: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:41:06 +0000 (11:41 +0000)]
ARM: amba: lpc32xx: get rid of NO_IRQ initializers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: integrator/realview/versatile/vexpress: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:40:46 +0000 (11:40 +0000)]
ARM: amba: integrator/realview/versatile/vexpress: get rid of NO_IRQ initializers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: samsung: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:42:14 +0000 (11:42 +0000)]
ARM: amba: samsung: get rid of NO_IRQ initializers

Acked-by: Kukjin Kim <kgene.kim@samsung.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: get rid of NO_IRQ initializers
Russell King [Sun, 18 Dec 2011 11:39:37 +0000 (11:39 +0000)]
ARM: amba: get rid of NO_IRQ initializers

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: ux500: get rid of NO_IRQ
Russell King [Sun, 18 Dec 2011 11:33:59 +0000 (11:33 +0000)]
ARM: amba: ux500: get rid of NO_IRQ

irq 0 now means no irq, so get rid of this unnecessary initializer.

Acked-by: srinidhi kasagar <srinidhi.kasagar@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: make irq 0 invalid
Russell King [Sun, 18 Dec 2011 11:31:51 +0000 (11:31 +0000)]
ARM: amba: make irq 0 invalid

Fix core bus and MMCI such that irq 0 means that there is no IRQ
attached.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: mxs: convert to use amba_device_alloc
Russell King [Sun, 18 Dec 2011 11:23:25 +0000 (11:23 +0000)]
ARM: amba: mxs: convert to use amba_device_alloc

Convert MXS to use the new amba_device_alloc APIs.

Acked-by: Shawn Guo <shawn.guo@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: integrator: convert to use amba_device_alloc
Russell King [Sun, 18 Dec 2011 11:20:37 +0000 (11:20 +0000)]
ARM: amba: integrator: convert to use amba_device_alloc

Convert Integrator IM/PD-1 to use the new amba_device_alloc APIs.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: ux500: convert to use amba_device_alloc
Russell King [Sun, 18 Dec 2011 11:16:59 +0000 (11:16 +0000)]
ARM: amba: ux500: convert to use amba_device_alloc

Convert ux500 to use the new amba_device_alloc APIs.

Acked-by: srinidhi kasagar <srinidhi.kasagar@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: of: convert to use amba_device_alloc
Russell King [Sun, 18 Dec 2011 11:45:17 +0000 (11:45 +0000)]
ARM: amba: of: convert to use amba_device_alloc

Convert DT code to use the new amba_device_alloc APIs.

Acked-by: Rob Herring <rob.herring@calxeda.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: amba: add amba_device allocation/add/put functions
Russell King [Sun, 18 Dec 2011 11:07:47 +0000 (11:07 +0000)]
ARM: amba: add amba_device allocation/add/put functions

Add functions to allocate and initialize AMBA device structures, and
add them to the Linux device manager.  This allows us to kill this
type of operation from individual platforms, moving it to core code.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: 7300/1: realview: fix definition of GPIO0 interrupt on PB1176 to match TRM
Will Deacon [Wed, 25 Jan 2012 10:36:33 +0000 (11:36 +0100)]
ARM: 7300/1: realview: fix definition of GPIO0 interrupt on PB1176 to match TRM

Currently, -1 is used as the GPIO0 interrupt on realview PB1176 and an
AMBA device is registered with this parameter. With the pending NO_IRQ
cleanup, this will lead to a warning at boot time, since -1 is obviously
broken.

This patch updates the interrupt used for GPIO0 to match that specified
by the TRM. Unfortunately, it's not clear how to trigger this interrupt
so we trust that the documentation is correct.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoMerge branches 'debug' and 'idle' into for-armsoc
Russell King [Mon, 23 Jan 2012 11:59:04 +0000 (11:59 +0000)]
Merge branches 'debug' and 'idle' into for-armsoc

12 years agoARM: earlier initialization of vectors page
Russell King [Wed, 18 Jan 2012 15:32:49 +0000 (15:32 +0000)]
ARM: earlier initialization of vectors page

Initialize the contents of the vectors page immediately after we
allocate the page, but before we map it.  This avoids any possible
aliases with other mappings which may need to be flushed after the
page has been mapped irrespective of the cache type.

We follow this later with a flush_cache_all() after all static memory
mappings have been initialized, which ensures that this is safe from
any cache effects.

Tested-by: Catalin Marinas <catalin.marinas@arm.com>
Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: add dma coherent region reporting via procfs
Russell King [Thu, 12 Jan 2012 23:08:07 +0000 (23:08 +0000)]
ARM: add dma coherent region reporting via procfs

Add a new seqfile for reporting coherent DMA allocations.  This contains
the address range, size and the function which was used to allocate
each region, allowing these allocations to be viewed in much the same
way as /proc/vmallocinfo.

The DMA coherent region has limited space, so this allows allocation
failures to be viewed, as well as finding out how much space is being
used.

Make sure this file is only readable by root - same as vmallocinfo - to
prevent information leakage.

Acked-by: Nicolas Pitre <nico@linaro.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
12 years agoARM: big removal of now unused arch_idle()
Nicolas Pitre [Mon, 19 Dec 2011 08:29:16 +0000 (03:29 -0500)]
ARM: big removal of now unused arch_idle()

When this is the only content remaining in mach/system.h then the
whole file is removed.

Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-and-tested-by: Jamie Iles <jamie@jamieiles.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Acked-by: David Brown <davidb@codeaurora.org>
Acked-by: Stephen Warren <swarren@nvidia.com>
Acked-by: Linus Walleij <linus.walleij@linaro.org>
12 years agoARM: substitute arch_idle()
Nicolas Pitre [Mon, 19 Dec 2011 08:03:58 +0000 (03:03 -0500)]
ARM: substitute arch_idle()

Now that all implementations of arch_idle() are equivalent to cpu_do_idle()
we can just use the later directly and stop including mach/system.h.

Signed-off-by: Nicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-and-tested-by: Jamie Iles <jamie@jamieiles.com>
Acked-by: Tony Lindgren <tony@atomide.com>
Tested-by: Stephen Warren <swarren@nvidia.com>
12 years agoARM: mach-tegra: properly disable CPU idle call
Nicolas Pitre [Wed, 3 Aug 2011 16:21:16 +0000 (12:21 -0400)]
ARM: mach-tegra: properly disable CPU idle call

Signed-off-by: nicolas Pitre <nicolas.pitre@linaro.org>
Acked-by: Stephen Warren <swarren@nvidia.com>
12 years agoARM: mach-s3c64xx: use standard arch_idle() implementation
Nicolas Pitre [Wed, 3 Aug 2011 16:21:16 +0000 (12:21 -0400)]
ARM: mach-s3c64xx: use standard arch_idle() implementation

Signed-off-by: nicolas Pitre <nicolas.pitre@linaro.org>
Tested-by: Mark Brown <broonie@opensource.wolfsonmicro.com>