pandora-kernel.git
13 years agoMerge branch 'devel-pmu' into devel
Russell King [Mon, 17 May 2010 16:21:23 +0000 (17:21 +0100)]
Merge branch 'devel-pmu' into devel

13 years agoARM: 6136/1: ARCH_REQUIRE_GPIOLIB selects GENERIC_GPIO
Hartley Sweeten [Mon, 17 May 2010 16:18:10 +0000 (17:18 +0100)]
ARM: 6136/1: ARCH_REQUIRE_GPIOLIB selects GENERIC_GPIO

The ARCH_REQUIRE_GPIOLIB config option will select GPIOLIB which
in turn will select GENERIC_GPIO.  Because of this, there is no
reason to do the select GENERIC_GPIO in arch/arm/Kconfig for the
architectures that have ARCH_REQUIRE_GPIOLIB.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6074/1: oprofile: convert from sysdev to platform device
Will Deacon [Fri, 30 Apr 2010 10:38:39 +0000 (11:38 +0100)]
ARM: 6074/1: oprofile: convert from sysdev to platform device

This is a reworking of an original patch posted by Aaro Koskinen:

oprofile does not work with PM, because sysdev_suspend() is done with
interrupts disabled and oprofile needs a mutex. Implementing oprofile
as a platform device solves this problem.

Cc: Aaro Koskinen <aaro.koskinen@nokia.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Aaro Koskinen <aaro.koskinen@nokia.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6073/1: oprofile: remove old files and update KConfig
Will Deacon [Fri, 30 Apr 2010 10:37:51 +0000 (11:37 +0100)]
ARM: 6073/1: oprofile: remove old files and update KConfig

Enable hardware perf-events if CPU_HAS_PMU and select
HAVE_OPROFILE if HAVE_PERF_EVENTS. If no hardware support
is present, OProfile will fall back to timer mode.

This patch also removes the old OProfile drivers in favour
of the code implemented by perf.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6072/1: oprofile: use perf-events framework as backend
Will Deacon [Fri, 30 Apr 2010 10:36:54 +0000 (11:36 +0100)]
ARM: 6072/1: oprofile: use perf-events framework as backend

There are currently two hardware performance monitoring subsystems in
the kernel for ARM: OProfile and perf-events. This creates the
following problems:

1.) Duplicate PMU accessor code. Inevitable code drift may lead to
bugs in one framework that are fixed in the other.

2.) Locking issues. OProfile doesn't reprogram hardware counters
between profiling runs if the events to be monitored have not been
changed. This means that other profiling frameworks cannot use the
counters if OProfile is in use.

3.) Due to differences in the two frameworks, it may not be possible to
compare the results obtained by OProfile with those obtained by perf.

This patch removes the OProfile PMU driver code and replaces it with
calls to perf, therefore solving the issues mentioned above.

The only userspace-visible change is the lack of SCU counter support
for 11MPCore. This is currently unsupported by OProfile userspace tools anyway and therefore shouldn't cause any problems.

Cc: Ingo Molnar <mingo@elte.hu>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Robert Richter <robert.richter@amd.com>
Cc: Jamie Iles <jamie.iles@picochip.com>
Cc: Jean Pihet <jpihet@mvista.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6071/1: perf-events: allow modules to query the number of hardware counters
Will Deacon [Fri, 30 Apr 2010 10:34:26 +0000 (11:34 +0100)]
ARM: 6071/1: perf-events: allow modules to query the number of hardware counters

For OProfile to initialise oprofilefs correctly, it needs to know
the number of counters it can represent.

This patch adds a function to the ARM perf-events backend to return
the number of hardware counters available for the current PMU.

Cc: Jamie Iles <jamie.iles@picochip.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6070/1: perf-events: add support for xscale PMUs
Will Deacon [Fri, 30 Apr 2010 10:33:33 +0000 (11:33 +0100)]
ARM: 6070/1: perf-events: add support for xscale PMUs

The perf-events framework for ARM only supports v6 and v7 cores.

This patch adds support for xscale v1 and v2 PMUs to perf, based on the
OProfile drivers in arch/arm/oprofile/op_model_xscale.c

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6069/1: perf-events: use numeric ID to identify PMU
Will Deacon [Fri, 30 Apr 2010 10:32:44 +0000 (11:32 +0100)]
ARM: 6069/1: perf-events: use numeric ID to identify PMU

The ARM perf-events framework provides support for a number of different
PMUs using struct arm_pmu. The char *name field of this struct can be
used to identify the PMU, but this is cumbersome if used outside of perf.

This patch replaces the name string for a PMU with an enum, which holds
a unique ID for the PMU being represented. This ID can be used to index
an array of names within perf, so no functionality is lost. The presence
of the ID field, allows other kernel subsystems [currently oprofile] to
use their own mappings for the PMU name.

Cc: Jean Pihet <jpihet@mvista.com>
Acked-by: Jamie Iles <jamie.iles@picochip.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6064/1: pmu: register IRQs at runtime
Will Deacon [Thu, 29 Apr 2010 16:13:24 +0000 (17:13 +0100)]
ARM: 6064/1: pmu: register IRQs at runtime

The current PMU infrastructure for ARM requires that the IRQs for the PMU
device are fixed at compile time and are selected based on the ARCH_ or MACH_ flags. This has the disadvantage of tying the Kernel down to a
particular board as far as profiling is concerned.

This patch replaces the compile-time IRQ registration with a runtime mechanism which allows the IRQs to be registered with the framework as
a platform_device.

A further advantage of this change is that there is scope for registering
different types of performance counters in the future by changing the id
of the platform_device and attaching different resources to it.

Acked-by: Jamie Iles <jamie.iles@picochip.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoMerge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa...
Russell King [Mon, 17 May 2010 10:52:31 +0000 (11:52 +0100)]
Merge branches 'at91', 'bcmring', 'ep93xx', 'iop', 'misc', 'nomadik', 'omap', 'pxa', 'spear' and 'versatile' into devel

Conflicts:
arch/arm/Makefile
arch/arm/common/Makefile
arch/arm/mm/Kconfig

13 years agoARM: Optionally allow ARMv6 to use 'normal, bufferable' memory for DMA
Russell King [Sat, 15 May 2010 10:02:43 +0000 (11:02 +0100)]
ARM: Optionally allow ARMv6 to use 'normal, bufferable' memory for DMA

Provide a configuration option to allow the ARMv6 to use normal
bufferable memory for coherent DMA.  This option is forced to 'y'
for ARMv7, and offered as a configuration option on ARMv6.

Enabling this option requires drivers to have the necessary barriers
to ensure that data in DMA coherent memory is visible prior to the
DMA operation commencing.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6134/1: Handle instruction cache maintenance fault properly
Kirill A. Shutemov [Sat, 15 May 2010 08:57:06 +0000 (09:57 +0100)]
ARM: 6134/1: Handle instruction cache maintenance fault properly

Between "clean D line..." and "invalidate I line" operations in
v7_coherent_user_range(), the memory page may get swapped out.
And the fault on "invalidate I line" could not be properly handled
causing the oops.

In ARMv6 "external abort on linefetch" replaced by "instruction cache
maintenance fault". Let's handle it as translation fault. It fixes the
issue.

I'm not sure if it's reasonable to check arch version in run-time.
Let's do it in compile time for now.

Reviewed-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Siarhei Siamashka <siarhei.siamashka@nokia.com>
Signed-off-by: Kirill A. Shutemov <kirill@shutemov.name>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: nwfpe: allow debugging output to be configured at runtime
Russell King [Sat, 15 May 2010 09:40:21 +0000 (10:40 +0100)]
ARM: nwfpe: allow debugging output to be configured at runtime

Enabling CONFIG_USER_DEBUG allows NWFPE to complain about every FP
exception, which with some programs can cause the kernel message log
to fill with NWFPE debug, swamping out other messages.

This change allows NWFPE debugging to be configured at run time.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: rename mach_cpu_disable() to platform_cpu_disable()
Russell King [Sat, 15 May 2010 09:18:05 +0000 (10:18 +0100)]
ARM: rename mach_cpu_disable() to platform_cpu_disable()

Consistently name all SMP platform related functions.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6132/1: PL330: Add common core driver
Jassi Brar [Fri, 14 May 2010 14:18:54 +0000 (15:18 +0100)]
ARM: 6132/1: PL330: Add common core driver

PL330 is a configurable DMA controller PrimeCell device.
The register map of the device is well defined.
The configuration of a particular implementation can be
read from the six configuration registers CR0-4,Dn.

This patch implements a driver for the specification:-
http://infocenter.arm.com/help/topic/com.arm.doc.ddi0424a/DDI0424A_dmac_pl330_r0p0_trm.pdf

The exported interface should be sufficient to implement
a driver for any DMA API.

Signed-off-by: Jassi Brar <jassisinghbrar@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6094/1: Extend cache-l2x0 to support the 16-way PL310
Jason McMullan [Wed, 5 May 2010 17:59:37 +0000 (18:59 +0100)]
ARM: 6094/1: Extend cache-l2x0 to support the 16-way PL310

The L310 cache controller's interface is almost identical
to the L210. One major difference is that the PL310 can
have up to 16 ways.

This change uses the cache's part ID and the Associativity
bits in the AUX_CTRL register to determine the number of ways.

Also, this version prints out the CACHE_ID and AUX_CTRL registers.

Acked-by: Will Deacon <will.deacon@arm.com>
Acked-by: Acked-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Jason S. McMullan <jason.mcmullan@netronome.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Move memory mapping into mmu.c
Russell King [Thu, 25 Mar 2010 18:56:05 +0000 (18:56 +0000)]
ARM: Move memory mapping into mmu.c

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Ensure meminfo is sorted prior to sanity_check_meminfo
Russell King [Thu, 25 Mar 2010 18:47:20 +0000 (18:47 +0000)]
ARM: Ensure meminfo is sorted prior to sanity_check_meminfo

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Remove useless linux/bootmem.h includes
Russell King [Thu, 25 Mar 2010 17:06:19 +0000 (17:06 +0000)]
ARM: Remove useless linux/bootmem.h includes

These files include linux/bootmem.h without using anything from this
file; remove the unnecessary include.

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: convert /proc/cpu/aligment to seq_file
Alexey Dobriyan [Sun, 2 May 2010 09:40:35 +0000 (12:40 +0300)]
ARM: convert /proc/cpu/aligment to seq_file

Convert code away from ->read_proc/->write_proc interfaces.  Switch to
proc_create()/proc_create_data() which makes addition of proc entries
reliable wrt NULL ->proc_fops, NULL ->data and so on.

Problem with ->read_proc et al is described here commit
786d7e1612f0b0adb6046f19b906609e4fe8b1ba "Fix rmmod/read/write races in
/proc entries"

This patch is part of an effort to remove the old simple procfs PAGE_SIZE
buffer interface.

Signed-off-by: Alexey Dobriyan <adobriyan@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoarm: use asm-generic/scatterlist.h
FUJITA Tomonori [Sun, 4 Apr 2010 14:25:52 +0000 (23:25 +0900)]
arm: use asm-generic/scatterlist.h

Signed-off-by: FUJITA Tomonori <fujita.tomonori@lab.ntt.co.jp>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6107/1: plat-nomadik: use the MTU clocksrc for sched_clock
Linus Walleij [Fri, 7 May 2010 09:03:02 +0000 (10:03 +0100)]
ARM: 6107/1: plat-nomadik: use the MTU clocksrc for sched_clock

This provides some serious scheduling for the Nomadik family by
introducing a sched_clock() using the MTU clock source in the
same manner as e.g. OMAP or U300. This type of solutions has been
discussed at no end in the past, however we need this resolution
for making measurements and using HRTimers.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6124/1: ep93xx: SPI driver platform support code
Mika Westerberg [Tue, 11 May 2010 14:34:54 +0000 (15:34 +0100)]
ARM: 6124/1: ep93xx: SPI driver platform support code

This patch adds platform side support code for the EP93xx SPI
driver. This includes clock, resources and muxing. There is a new
function: ep93xx_register_spi() which can be used by board support
code to register new SPI devices for the board.

This patch depends on patch
  5998/1 ep93xx: added chip revision reading function

Cc: Ryan Mallon <ryan@bluewatersys.com>
Cc: David Brownell <dbrownell@users.sourceforge.net>
Cc: Grant Likely <grant.likely@secretlab.ca>
Signed-off-by: Mika Westerberg <mika.westerberg@iki.fi>
Acked-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Acked-by: Martin Guy <martinwguy@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6104/1: nomadik-gpio: use clk API
Rabin Vincent [Thu, 6 May 2010 10:14:17 +0000 (11:14 +0100)]
ARM: 6104/1: nomadik-gpio: use clk API

Add clocks with appropriate names in platforms that use it, and use the
clk API in nomadik-gpio.

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6103/1: nomadik: define clocks statically
Rabin Vincent [Thu, 6 May 2010 09:47:25 +0000 (10:47 +0100)]
ARM: 6103/1: nomadik: define clocks statically

Add a table for clocks to be defined statically, so that new clocks can
be added without having to call nmdk_clk_create() for each of them.
Remove the now unused nmdk_clk_create() function.

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6102/1: nomadik-gpio: set a default trigger for interrupts
Rabin Vincent [Thu, 6 May 2010 09:45:18 +0000 (10:45 +0100)]
ARM: 6102/1: nomadik-gpio: set a default trigger for interrupts

Set a default trigger type for interrupts, otherwise if request_irq is
called without specifiying a trigger type, the interrupt will not
actually be enabled.

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6101/1: nomadik-gpio: don't enable in set_type
Rabin Vincent [Thu, 6 May 2010 09:43:55 +0000 (10:43 +0100)]
ARM: 6101/1: nomadik-gpio: don't enable in set_type

On this peripheral, setting the trigger type enables the interrupt, and
the current set_type() implementation unconditionally enables the
interrupt, even if it is called when the interrupt is disabled.  Fix
set_type() to:

 - if the interrupt is disabled, defer the actual trigger setting to
   when it is unmasked

 - if the interrupt is enabled, change the type immediately by clearing
   the old type and then re-enabling with the new type.

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6100/1: nomadik-gpio: factor out helper to enable/disable irqs
Rabin Vincent [Thu, 6 May 2010 09:42:42 +0000 (10:42 +0100)]
ARM: 6100/1: nomadik-gpio: factor out helper to enable/disable irqs

Remove some nearly-duplicated code to make the following patch simpler.

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6099/1: nomadik-gpio: fix mask/unmask
Rabin Vincent [Thu, 6 May 2010 09:40:47 +0000 (10:40 +0100)]
ARM: 6099/1: nomadik-gpio: fix mask/unmask

Mask/unmask should modify the interrupt mask register (RIMSC
and FIMSC) not the wakeup mask registers (RWIMSC and FWIMSC).

Acked-by: Alessandro Rubini <rubini@unipv.it>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 5966/1: at91_udc HW glitch
Harro Haan [Mon, 1 Mar 2010 16:54:55 +0000 (17:54 +0100)]
ARM: 5966/1: at91_udc HW glitch

Add some delay to avoid reading CSR TXCOUNT too early after
updating it.

For more info about this HW glitch see:
http://lists.arm.linux.org.uk/lurker/message/20090325.150843.f515c02f.en.html
http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20100129/10ba0f8b/attachment.el
http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20100203/09cdb3b4/attachment.el
http://lists.infradead.org/pipermail/linux-arm-kernel/attachments/20100203/08b5b249/attachment.el

First applied: "Fix soft lockup in at91 udc driver"
http://www.arm.linux.org.uk/developer/patches/viewpatch.php?id=5965

Signed-off-by: Anti Sullin <anti.sullin@artecdesign.ee>
Signed-off-by: Harro Haan <hrhaan@gmail.com>
Acked-by: Remy Bohmer <linux@bohmer.net>
Acked-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6090/1: ux500: add U5500 support
Rabin Vincent [Mon, 3 May 2010 07:46:51 +0000 (08:46 +0100)]
ARM: 6090/1: ux500: add U5500 support

Add basic support for the U5500 platform.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6089/1: ux500: rename cpu-u8500.c to cpu-db8500.c
Rabin Vincent [Mon, 3 May 2010 07:42:07 +0000 (08:42 +0100)]
ARM: 6089/1: ux500: rename cpu-u8500.c to cpu-db8500.c

Move the DB8500-specific file to a more appropriate name.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6088/1: ux500: use UX500_* macros instead of U8500_*
Rabin Vincent [Mon, 3 May 2010 07:31:35 +0000 (08:31 +0100)]
ARM: 6088/1: ux500: use UX500_* macros instead of U8500_*

So that the correct addresses get used on U5500.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6087/1: ux500: move sys_timer to cpu.c
Rabin Vincent [Mon, 3 May 2010 07:28:05 +0000 (08:28 +0100)]
ARM: 6087/1: ux500: move sys_timer to cpu.c

Move the common system timer setup code to cpu.c.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6086/1: ux500: move gpio devices to devices-db8500.c
Rabin Vincent [Mon, 3 May 2010 07:25:52 +0000 (08:25 +0100)]
ARM: 6086/1: ux500: move gpio devices to devices-db8500.c

The GPIO layout is different on DB5500, so move the current one to
devices-db8500.c.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6085/1: ux500: reorganize i2c devices
Rabin Vincent [Mon, 3 May 2010 07:24:37 +0000 (08:24 +0100)]
ARM: 6085/1: ux500: reorganize i2c devices

Move common i2c devices to devices.c and DB8500-specific I2C
devices to devices-db8500.c.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6084/1: ux500: move UART devices to devices.c
Rabin Vincent [Mon, 3 May 2010 07:18:38 +0000 (08:18 +0100)]
ARM: 6084/1: ux500: move UART devices to devices.c

The three PL011 UARTs are common among Ux500 SoCs, so move them to
devices.c.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6083/1: ux500: put DB8500-specific devices in devices-db8500.c
Rabin Vincent [Mon, 3 May 2010 07:03:52 +0000 (08:03 +0100)]
ARM: 6083/1: ux500: put DB8500-specific devices in devices-db8500.c

Add devices-db8500.c for DB8500-specific devices, starting
with SSP0.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6082/1: ux500: put common devices into devices.c
Rabin Vincent [Mon, 3 May 2010 06:46:56 +0000 (07:46 +0100)]
ARM: 6082/1: ux500: put common devices into devices.c

Introduce devices.c, for placing devices common among Ux500 SoCs.  Start
with the PL031 device.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6081/1: ux500: move gpio macros to common header
Rabin Vincent [Mon, 3 May 2010 06:43:48 +0000 (07:43 +0100)]
ARM: 6081/1: ux500: move gpio macros to common header

Move GPIO macros to a common header, and allow them to use the correct
macros for the appropriate SoC, and be named accordingly.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6080/1: ux500: move irq and common maps to cpu.c
Rabin Vincent [Mon, 3 May 2010 06:39:02 +0000 (07:39 +0100)]
ARM: 6080/1: ux500: move irq and common maps to cpu.c

Move IRQ initialization and common io mapping setup code to cpu.c,
renaming U8500* to UX500* along the way.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6079/1: ux500: allow choice of the DEBUG_LL UART
Rabin Vincent [Mon, 3 May 2010 06:38:06 +0000 (07:38 +0100)]
ARM: 6079/1: ux500: allow choice of the DEBUG_LL UART

Allow the UART used for DEBUG_LL to be selected.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6078/1: ux500: add per-SoC register definitions
Rabin Vincent [Mon, 3 May 2010 06:34:53 +0000 (07:34 +0100)]
ARM: 6078/1: ux500: add per-SoC register definitions

Split up all the hardware register definitions previously found in
hardware.h into per-SoC files db8500-regs.h and db5500-regs.h.  Rename a
couple of macros to prepare for sharing code between the variants.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6077/1: ux500: add SOC Kconfig variables
Rabin Vincent [Mon, 3 May 2010 06:27:31 +0000 (07:27 +0100)]
ARM: 6077/1: ux500: add SOC Kconfig variables

This adds the different config options for SoCs DB8500 and DB5500 and
refines the SoC/CPU detection code to support the DB5500 as well via
these.  The selection between DB5500 and DB8500 is currently a simple
compile-time choice.

Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Acked-by: Srinidhi Kasagar <srinidhi.kasagar@stericsson.com>
Signed-off-by: Rabin Vincent <rabin.vincent@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6092/1: atmel_serial: support for RS485 communications
Claudio Scordino [Mon, 3 May 2010 12:31:28 +0000 (13:31 +0100)]
ARM: 6092/1: atmel_serial: support for RS485 communications

Final version of the patch that adds support for RS485 communications to the atmel_serial driver.

The patch has been already sent and discussed on both linux-kernel and linux-arm-kernel mailing lists several times.

Many people collaborated to improve and test the code:

Tested-by: Sebastian Heutling <Sebastian.Heutling@who-ing.de>
Tested-by: Bernhard Roth <br@pwrnet.de>
Reviewed-by: Ryan Mallon <ryan@bluewatersys.com>
Signed-off-by: Claudio Scordino <claudio@evidence.eu.com>
Signed-off-by: Michael Trimarchi <michael@evidence.eu.com>
Signed-off-by: Rick Bronson <rick@efn.org>
Signed-off-by: Sebastian Heutling <Sebastian.Heutling@who-ing.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6091/1: ST SPEAr: Adding support for shared irq layer
viresh kumar [Mon, 3 May 2010 08:24:30 +0000 (09:24 +0100)]
ARM: 6091/1: ST SPEAr: Adding support for shared irq layer

Multiple peripherals in SPEAr share common hardware interrupt lines.
This patch adds support for a shared irq layer, which registers hardware
irqs by itself and exposes virtual irq numbers to peripherals.

Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6053/1: AT91: Save power by disabling the processor clock when CPU is idle
Anders Larsen [Tue, 13 Apr 2010 11:05:32 +0000 (12:05 +0100)]
ARM: 6053/1: AT91: Save power by disabling the processor clock when CPU is idle

Disable the processor clock when the CPU is idle.

This saves much more power than merely entering 'Wait for Interrupt' mode.
Since JTAG-debugging doesn't work when the processor clock is switched off,
make it conditional on CONFIG_DEBUG_KERNEL.

Signed-off-by: Anders Larsen <al@alarsen.net>
Acked-by: Andrew Victor <avictor.za@gmail.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 6057/1: Realview: register PMU IRQs during board initialisation
Will Deacon [Thu, 15 Apr 2010 09:16:26 +0000 (10:16 +0100)]
ARM: 6057/1: Realview: register PMU IRQs during board initialisation

This patch updates the initialisation routines for the Realview boards
and the Versatile Express board [ca9x4 tile] so that they register their
PMU IRQs with the PMU framework in the Kernel.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Add Versatile Express SMP support
Russell King [Thu, 11 Feb 2010 21:56:07 +0000 (21:56 +0000)]
ARM: Add Versatile Express SMP support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Add Versatile Express CA9x4 processor support
Russell King [Sun, 28 Feb 2010 17:26:25 +0000 (17:26 +0000)]
ARM: Add Versatile Express CA9x4 processor support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Add Versatile Express support
Russell King [Thu, 11 Feb 2010 21:44:53 +0000 (21:44 +0000)]
ARM: Add Versatile Express support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Indirect round/set_rate operations through clk structure
Russell King [Mon, 1 Mar 2010 16:18:39 +0000 (16:18 +0000)]
ARM: Indirect round/set_rate operations through clk structure

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: 5890/1: Fix incorrect Realview board IRQs for L220 and PMU
Will Deacon [Wed, 20 Jan 2010 18:06:26 +0000 (19:06 +0100)]
ARM: 5890/1: Fix incorrect Realview board IRQs for L220 and PMU

In anticipation of PMU support for Realview boards, the IRQs defined
for some of these boards need updating.

This patch removes incorrect L220 IRQ definitions, corrects incorrect PMU
IRQs and adds any missing IRQs that are required.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Make Integrator/Versatile/Reaview VCO code similar
Russell King [Thu, 14 Jan 2010 20:09:34 +0000 (20:09 +0000)]
ARM: Make Integrator/Versatile/Reaview VCO code similar

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Realview/Versatile: separate out common sched_clock()
Russell King [Thu, 14 Jan 2010 20:07:35 +0000 (20:07 +0000)]
ARM: Realview/Versatile: separate out common sched_clock()

Provide a common sched_clock() implementation for Versatile and
Realview.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Integrator: move 16-bit timer support to Integrator/AP
Russell King [Sun, 17 Jan 2010 16:20:56 +0000 (16:20 +0000)]
ARM: Integrator: move 16-bit timer support to Integrator/AP

Only Integrator/AP has 16-bit timers, so move the support into the
Integrator/AP specific support files.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Integrator: convert Integrator/CP to use SP804 timer support
Russell King [Sat, 16 Jan 2010 23:52:12 +0000 (23:52 +0000)]
ARM: Integrator: convert Integrator/CP to use SP804 timer support

The Integrator/CP board has SP804-compatible timer modules, so use
the SP804-compatible code from Versatile and Realview.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Realview/Versatile/Integrator: remove unused definitions from platform.h
Russell King [Sun, 17 Jan 2010 19:27:09 +0000 (19:27 +0000)]
ARM: Realview/Versatile/Integrator: remove unused definitions from platform.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Realview/Versatile: don't use magic numbers for timer frequency
Russell King [Fri, 15 Jan 2010 18:19:56 +0000 (18:19 +0000)]
ARM: Realview/Versatile: don't use magic numbers for timer frequency

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Realview/Versatile: remove useless TIMER_RELOAD calculations
Russell King [Thu, 14 Jan 2010 22:37:12 +0000 (22:37 +0000)]
ARM: Realview/Versatile: remove useless TIMER_RELOAD calculations

Realview/Versatile copied the Integrator timer code, including the
calculations for ensuring that the reload value fits into the 16-bit
counter.  However, these platforms have a 32-bit counter which is
clocked at a slower rate.

The result is that the preprocessor conditions are never triggered:
TICKS_PER_uSEC = 1, mSEC_10 = 10000, which is 0x2710 - less than
0x10000.

So, remove the unnecessary complexity, reducing the TIMER_RELOAD
calculation to just:

TICKS_PER_uSEC * mSEC_10

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Realview/Versatile: separate out common SP804 timer code
Russell King [Thu, 14 Jan 2010 13:30:16 +0000 (13:30 +0000)]
ARM: Realview/Versatile: separate out common SP804 timer code

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Realview/Versatile/Integrator: separate out common clock code
Russell King [Thu, 14 Jan 2010 12:48:06 +0000 (12:48 +0000)]
ARM: Realview/Versatile/Integrator: separate out common clock code

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: ICST: kill duplicate icst code
Russell King [Sat, 16 Jan 2010 20:16:10 +0000 (20:16 +0000)]
ARM: ICST: kill duplicate icst code

The only difference between ICST307 and ICST525 are the two arrays
for calculating the S parameter; the code is now identical.  Merge
the two files and kill the duplicated code.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: ICST: indirect s2div and idx2s arrays via icst_params
Russell King [Sat, 16 Jan 2010 19:46:19 +0000 (19:46 +0000)]
ARM: ICST: indirect s2div and idx2s arrays via icst_params

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: ICST: move minimum VCO frequency to icst_params
Russell King [Sat, 16 Jan 2010 19:49:39 +0000 (19:49 +0000)]
ARM: ICST: move minimum VCO frequency to icst_params

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: ICST: use Hz instead of kHz
Russell King [Sat, 16 Jan 2010 17:28:44 +0000 (17:28 +0000)]
ARM: ICST: use Hz instead of kHz

This makes the ICST support fit more nicely with the clk API,
eliminating the need to *1000 and /1000 in places.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: ICST: provide definitions for max/min VCO frequencies
Russell King [Sat, 16 Jan 2010 18:08:47 +0000 (18:08 +0000)]
ARM: ICST: provide definitions for max/min VCO frequencies

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: ICST: icst.*_ps_to_vco() functions are unused, remove them
Russell King [Sat, 16 Jan 2010 17:15:07 +0000 (17:15 +0000)]
ARM: ICST: icst.*_ps_to_vco() functions are unused, remove them

These functions were originally implemented for the CLCD driver before
we had clk API support.  Since the CLCD driver does not use these
anymore, we can remove them.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: ICST: merge common ICST VCO structures
Russell King [Sat, 16 Jan 2010 16:27:28 +0000 (16:27 +0000)]
ARM: ICST: merge common ICST VCO structures

The structures for the ICST307 and ICST525 VCO devices are
identical, so merge them together.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Integrator: convert to use register definitions
Russell King [Sun, 17 Jan 2010 20:45:12 +0000 (20:45 +0000)]
ARM: Integrator: convert to use register definitions

Rather than using converted base address plus offset, use the register
address itself now that IO_ADDRESS() can cope with these.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Integrator: allow IO_ADDRESS() to be used for register addresses
Russell King [Sun, 17 Jan 2010 20:23:57 +0000 (20:23 +0000)]
ARM: Integrator: allow IO_ADDRESS() to be used for register addresses

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
13 years agoARM: Integrator: fix Integrator/CP definitions, move to platform.h
Russell King [Sun, 17 Jan 2010 19:59:58 +0000 (19:59 +0000)]
ARM: Integrator: fix Integrator/CP definitions, move to platform.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6046/1: ARM: OMAP: register PMU IRQs during board initialisation
Will Deacon [Fri, 9 Apr 2010 12:54:43 +0000 (13:54 +0100)]
ARM: 6046/1: ARM: OMAP: register PMU IRQs during board initialisation

This patch updates the initialisation routines for the OMAP2 and OMAP3
boards so that they register their PMU IRQs with the PMU framework in
the Kernel.

Cc: Tony Lindgren <tony@atomide.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6049/1: ARM: pxa: register PMU IRQs during board initialisation
Will Deacon [Fri, 9 Apr 2010 12:57:51 +0000 (13:57 +0100)]
ARM: 6049/1: ARM: pxa: register PMU IRQs during board initialisation

This patch adds an initcall for the pxa platforms so that they
register their PMU IRQs with the PMU framework in the Kernel.

Cc: Eric Miao <eric.y.miao@gmail.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: Integrator: pass 'khz' to integrator_time_init
Russell King [Fri, 15 Jan 2010 22:12:46 +0000 (22:12 +0000)]
ARM: Integrator: pass 'khz' to integrator_time_init

This is now what the clocksource/clockevent initialization functions
want, so give them the timer tick rate directly.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: Integrator: convert to generic clockevent support
Russell King [Fri, 15 Jan 2010 21:49:23 +0000 (21:49 +0000)]
ARM: Integrator: convert to generic clockevent support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: Integrator: convert to generic time support
Russell King [Fri, 15 Jan 2010 18:10:33 +0000 (18:10 +0000)]
ARM: Integrator: convert to generic time support

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: Improve documentation in arm_timer.h
Russell King [Sat, 16 Jan 2010 15:07:08 +0000 (15:07 +0000)]
ARM: Improve documentation in arm_timer.h

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: Fix Versatile&Integrator includes to behave in the same way as Realview
Russell King [Thu, 14 Jan 2010 19:59:37 +0000 (19:59 +0000)]
ARM: Fix Versatile&Integrator includes to behave in the same way as Realview

Realview doesn't include mach/platform.h in mach/hardware.h, so
make versatile behave in the same way.  Also, move the definition
of __io_address() into mach/hardware.h, just like Realview.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6048/1: ARM: iop3xx: register PMU IRQs during board initialisation
Will Deacon [Fri, 9 Apr 2010 12:57:02 +0000 (13:57 +0100)]
ARM: 6048/1: ARM: iop3xx: register PMU IRQs during board initialisation

This patch adds an initcall for the iop3xx platforms so that they
register their PMU IRQS with the PMU framework in the Kernel.

Cc: Lennert Buytenhek <kernel@wantstofly.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 5943/1: iop: n2100: enable serial interrupt
Aaro Koskinen [Tue, 16 Feb 2010 21:06:14 +0000 (22:06 +0100)]
ARM: 5943/1: iop: n2100: enable serial interrupt

Thecus N2100 has a jumper (J3/J4) to select whether the XINT1 interrupt
line is connected to the second UHCI controller (position J3) or to
the serial port UART (position J4). Currently, the kernel is hardcoded
to assume the J3 position, and the serial port is always being used in
polling mode.

The patch adds the IRQ autodetection flag for the serial port interrupt,
and also marks it as shared (as the driver for the second UHCI controller
will request the interrupt in any case). Now, when the jumper is set to
the J4 position, the serial port will have an interrupt line, resulting
in less CPU overhead and faster throughput.

Tested-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Aaro Koskinen <aaro.koskinen@iki.fi>
Acked-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6047/1: ARM: BCMRING: register PMU IRQ during board initialisation
Will Deacon [Fri, 9 Apr 2010 12:55:54 +0000 (13:55 +0100)]
ARM: 6047/1: ARM: BCMRING: register PMU IRQ during board initialisation

This patch updates the initialisation routine for the BCMRING platform
so that it registers its PMU IRQ with the PMU framework in the Kernel.

Acked-by: Leo Chen <leochen@broadcom.com>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6063/1: pmu: add enum describing PMU types
Will Deacon [Thu, 29 Apr 2010 16:11:45 +0000 (17:11 +0100)]
ARM: 6063/1: pmu: add enum describing PMU types

This patch adds an enum describing the potential PMU device types in
preparation for PMU device registration via platform devices.

Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6058/1: Add support for PCI domains
Anton Vorontsov [Mon, 19 Apr 2010 12:20:49 +0000 (13:20 +0100)]
ARM: 6058/1: Add support for PCI domains

This patch adds support for PCI domains on ARM platforms.

Also, protect asm/mach/pci.h from multiple inclustions, otherwise
build fails because of pci_domain_nr() and pci_proc_domain()
redefinitions.

Signed-off-by: Anton Vorontsov <avorontsov@mvista.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6056/1: AT91: at91sam9g10 chip identification changed
Nicolas Ferre [Wed, 14 Apr 2010 16:54:04 +0000 (17:54 +0100)]
ARM: 6056/1: AT91: at91sam9g10 chip identification changed

A bit in the at91sam9g10 identification number changed between Engineering
Sample and final product. This patch will identify both as being at91sam9g10.

Signed-off-by: Nicolas Ferre <nicolas.ferre@atmel.com>
Acked-by: Andrew Victor <linux@maxim.org.za>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6034/1: ARM: U300: set f_max to 24 MHz for MMCI
Linus Walleij [Thu, 8 Apr 2010 06:40:13 +0000 (07:40 +0100)]
ARM: 6034/1: ARM: U300: set f_max to 24 MHz for MMCI

This employs the frequency setting mechanism introduced to the
MMCI to specify that this system can actually be clocked at 24 MHz.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6033/1: ARM: MMCI: pass max frequency from platform
Linus Walleij [Thu, 8 Apr 2010 06:39:38 +0000 (07:39 +0100)]
ARM: 6033/1: ARM: MMCI: pass max frequency from platform

This introduce the field f_max into the mmci_platform_data,
making it possible to pass in a desired block clocking frequency
from a board configuration. This is often more desirable than
using a module parameter. We keep the module parameter as a
fallback as well as the default frequency specified for this
parameter if a parameter is not provided.

This also adds some kerneldoc style documentation to the
platform data struct in mmci.h.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6032/1: ARM: MMCI: support 8bit mode on the ST Micro version
Linus Walleij [Thu, 8 Apr 2010 06:38:52 +0000 (07:38 +0100)]
ARM: 6032/1: ARM: MMCI: support 8bit mode on the ST Micro version

This adds support for an 8bit wide bus to the card (data lines
MCIDAT0 through 7 exist) on the ST Micro version and alters the
U300 platform to support this. Also add some ST_ prefix to the
ST-specific registers.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6027/1: ux500: enable l2x0 support
Srinidhi Kasagar [Sat, 3 Apr 2010 18:10:45 +0000 (19:10 +0100)]
ARM: 6027/1: ux500: enable l2x0 support

This enables the l2x0 support and ensures that the secondary
CPU can see the page table and secondary data at this point.

Signed-off-by: srinidhi kasagar <srinidhi.kasagar@stericsson.com>
Acked-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: dma: add /proc/dma support to arch/arm/kernel/dma.c
Russell King [Thu, 24 Dec 2009 18:32:13 +0000 (18:32 +0000)]
ARM: dma: add /proc/dma support to arch/arm/kernel/dma.c

We have our own private implementation for ISA-like DMA which has been
missing exposure via the /proc/dma interface.  Add support for this.

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: remove unnecessary cache flush
Russell King [Thu, 24 Dec 2009 12:57:01 +0000 (12:57 +0000)]
ARM: remove unnecessary cache flush

This cache flush occurs when we first insert a page into the page
tables, where a page did not exist previously.  There can be no
cache lines associated with this virtual mapping, so this cache
flush is redundant.

Tested-by: Mike Rapoport <mike@compulab.co.il>
Tested-by: Mikael Pettersson <mikpe at it.uu.se>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6026/1: ARM: Add support for LZMA-compressed kernel images
Albin Tonnerre [Sat, 3 Apr 2010 10:40:28 +0000 (11:40 +0100)]
ARM: 6026/1: ARM: Add support for LZMA-compressed kernel images

This patch allows using a kernel image compressed with LZMA on ARM.
Extracting the image is fairly slow, but it might be useful on machines
with a very limited amount of storage, as the size benefit is quite
significant (about 25% smaller with LZMA compared to GZIP)

Tested-by: Martin Michlmayr <tbm@cyrius.com>
Tested-by: Paulius Zaleckas <paulius.zaleckas@gmail.com>
Signed-off-by: Albin Tonnerre <albin.tonnerre@free-electrons.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6021/1: ST SPEAr: Added ARM PrimeXsys System Controller SP810 header file
viresh kumar [Thu, 1 Apr 2010 11:49:09 +0000 (12:49 +0100)]
ARM: 6021/1: ST SPEAr: Added ARM PrimeXsys System Controller SP810 header file

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6020/1: ST SPEAr: Adding gpio pad multiplexing support
viresh kumar [Thu, 1 Apr 2010 11:31:29 +0000 (12:31 +0100)]
ARM: 6020/1: ST SPEAr: Adding gpio pad multiplexing support

GPIO Pads in spear platform are are multiplexed in various machines.
This patch adds support for this pad multiplexing.

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6019/1: ST SPEAr: Added default configuration files for SPEAr machines
viresh kumar [Thu, 1 Apr 2010 11:31:17 +0000 (12:31 +0100)]
ARM: 6019/1: ST SPEAr: Added default configuration files for SPEAr machines

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6018/1: ST SPEAr: Updated Maintainers and added Documentation/arm/SPEAr
viresh kumar [Thu, 1 Apr 2010 11:31:21 +0000 (12:31 +0100)]
ARM: 6018/1: ST SPEAr: Updated Maintainers and added Documentation/arm/SPEAr

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6017/1: ST SPEAr: Added source files for SPEAr3xx machine family
viresh kumar [Thu, 1 Apr 2010 11:30:58 +0000 (12:30 +0100)]
ARM: 6017/1: ST SPEAr: Added source files for SPEAr3xx machine family

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6016/1: ST SPEAr: Added support for SPEAr platform and machines in arch/arm/
viresh kumar [Thu, 1 Apr 2010 11:31:05 +0000 (12:31 +0100)]
ARM: 6016/1: ST SPEAr: Added support for SPEAr platform and machines in arch/arm/

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6015/1: ST SPEAr: Added source files for SPEAr6xx machine family
viresh kumar [Thu, 1 Apr 2010 11:31:01 +0000 (12:31 +0100)]
ARM: 6015/1: ST SPEAr: Added source files for SPEAr6xx machine family

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
14 years agoARM: 6014/1: ST SPEAr: Added clock framework for SPEAr platform and machines
viresh kumar [Thu, 1 Apr 2010 11:30:46 +0000 (12:30 +0100)]
ARM: 6014/1: ST SPEAr: Added clock framework for SPEAr platform and machines

Clock framework for SPEAr is based upon clkdev framework for ARM

Reviewed-by: Linus Walleij <linux.walleij@stericsson.com>
Signed-off-by: Viresh Kumar <viresh.kumar@st.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>