Russell King [Tue, 20 Feb 2007 10:52:01 +0000 (10:52 +0000)]
[ARM] Merge remaining IOP code
Conflicts:
include/asm-arm/arch-at91rm9200/entry-macro.S
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sun, 18 Feb 2007 11:31:14 +0000 (11:31 +0000)]
Merge the easy part of the IOP branch
Russell King [Sun, 18 Feb 2007 11:27:07 +0000 (11:27 +0000)]
Merge NetSilicon NS93xx tree
Fixed conflicts:
arch/arm/Makefile
arch/arm/mm/Kconfig
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Lennert Buytenhek [Thu, 8 Feb 2007 00:03:17 +0000 (01:03 +0100)]
[ARM] 4058/2: iop32x: set ->broken_parity_status on n2100 onboard r8169 ports
On the n2100, both onboard r8169 ports exhibit PCI parity problems.
Set the ->broken_parity_status flag for both ports so that the r8169
drivers knows it should ignore error interrupts.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Kevin Hilman [Wed, 7 Feb 2007 04:46:47 +0000 (05:46 +0100)]
[ARM] 4140/1: AACI stability add ac97 timeout and retries
Add timeouts to hardware read/write/probe functions in order
to avoid lockups on buggy/broken hardware.
Signed-off-by: Kevin Hilman <khilman@mvista.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Kevin Hilman [Wed, 7 Feb 2007 04:45:32 +0000 (05:45 +0100)]
[ARM] 4139/1: AACI record support
Add PCM audio capture support for AACI audio on Versatile platform.
Signed-off-by: Kevin Hilman <khilman@mvista.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Kevin Hilman [Wed, 7 Feb 2007 04:41:37 +0000 (05:41 +0100)]
[ARM] 4138/1: AACI: multiple channel support for IRQ handling
Add AACI channel support to interrupt handler.
Also, clear underrun interrupt for correct channel.
Signed-off-by: Kevin Hilman <khilman@mvista.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Sat, 17 Feb 2007 20:09:53 +0000 (20:09 +0000)]
Merge AT91, EP93xx, General devel, PXA, S3C, V6+ and Xscale trees
Uwe Kleine-König [Fri, 16 Feb 2007 14:38:49 +0000 (15:38 +0100)]
[ARM] 4211/1: Provide a defconfig for ns9xxx
This is a follow up for the patch providing the base support for the
ns9xxx machine type.
Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Uwe Kleine-König [Fri, 16 Feb 2007 14:36:55 +0000 (15:36 +0100)]
[ARM] 4210/1: base for new machine type "NetSilicon NS9360"
Signed-off-by: Uwe Kleine-König <ukleinek@informatik.uni-freiburg.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sat, 17 Feb 2007 15:41:12 +0000 (16:41 +0100)]
[ARM] 4222/1: S3C2443: Remove reference to missing S3C2443_PM
S3C2443_PM is not defined in our Kconfig, so
remove the reference from CPU_S3C2443 to stop
the configuration process warning about it.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dan Williams [Tue, 13 Feb 2007 16:13:34 +0000 (17:13 +0100)]
[ARM] 4187/1: iop: unify time implementation across iop32x, iop33x, and iop13xx
* architecture specific details are handled in asm/arch/time.h
* ARCH_IOP13XX now selects PLAT_IOP
* as suggested by Lennert use ifdef CONFIG_XSCALE to skip the cp_wait on
XSC3
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dan Williams [Tue, 13 Feb 2007 16:13:04 +0000 (17:13 +0100)]
[ARM] 4186/1: iop: remove cp6_enable/disable routines
This functionality is replaced by cp6_trap
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dan Williams [Fri, 16 Feb 2007 21:16:32 +0000 (22:16 +0100)]
[ARM] 4185/2: entry: introduce get_irqnr_preamble and arch_ret_to_user
get_irqnr_preamble allows machines to take some action before entering the
get_irqnr_and_base loop. On iop we enable cp6 access.
arch_ret_to_user is added to the userspace return path to allow individual
architectures to take actions, like disabling coprocessor access, before
the final return to userspace.
Per Nicolas Pitre's note, there is no need to cp_wait on the return to user
as the latency to return is sufficient.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sat, 17 Feb 2007 14:41:50 +0000 (15:41 +0100)]
[ARM] 4221/1: S3C2443: DMA support
Add initialisation and mappings for S3C2443 DMA
system
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sat, 17 Feb 2007 14:37:14 +0000 (15:37 +0100)]
[ARM] 4220/1: S3C24XX: DMA system initialised from sysdev
This patch gets the DMA system for the S3C24XX
ready for the S3C2443, which requires 6 dma channels
at a different stride, and different base IRQ.
The DMA system is now initialised from the same
drivers which apply the DMA mappings, as well
as removing the DMA sysdev intialisation out of
the main init code (which is now being called
from a sysdev probe, so cannot add a new sysdev)
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sat, 17 Feb 2007 14:05:17 +0000 (15:05 +0100)]
[ARM] 4219/1: S3C2443: DMA source definitions
Defines for the S3C2443 DMA source selection,
and update the maximum channels to 6 if the S3C2443
is selected.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sat, 17 Feb 2007 13:04:33 +0000 (14:04 +0100)]
[ARM] 4218/1: S3C2412: fix CONFIG_CPU_S3C2412_ONLY wrt to S3C2443
Update the Kconfig of arch/arm/mach-s3c2443 to
add the CONFIG_CPU_S3C2443 to the list of config
variabls which mean CONFIG_CPU_S3C2412_ONLY cannot
be set
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sat, 17 Feb 2007 13:02:37 +0000 (14:02 +0100)]
[ARM] 4217/1: S3C24XX: remove the dma channel show at startup
Remove the DMA code's channel printing at startup
as this is firstly a waste of console output on
initialsaion, and secondly is going to be obsolete
once the S3C2443 DMA code has been merged
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Nicolas Pitre [Sat, 17 Feb 2007 02:18:39 +0000 (03:18 +0100)]
[ARM] 4090/2: avoid clash between PXA and SA1111 defines
The Lubbock platform uses both a PXA25x and a SA1111 at the same time.
Both chips have the same "Serial Audio Controller" registers although
the SA1111 one is never expected to be used in preference to the PXA25x
one. So let's disable the SA1111 defines whenever compilation is for a
PXA architecture and make the PXA defines always defined.
This removes a bunch of "already defined" warnings as well since the
current hack to prevent them depended on include ordering which wasn't
always right.
While at it, clean up the SA1111 defines allowing to get rid of the
__CCREG() macro.
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Nicolas Pitre [Sat, 17 Feb 2007 02:37:02 +0000 (03:37 +0100)]
[ARM] 4216/1: add .gitignore entries for ARM specific files
Signed-off-by: Nicolas Pitre <nico@cam.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Fri, 16 Feb 2007 23:52:37 +0000 (00:52 +0100)]
[ARM] 4214/2: S3C2410: Add Armzone QT2410
Patch from: Harald Welte <laforge@openmoko.org>
Add support for the Armzone QT2410 system, with
basic peripheral support for TFT display, SPI
and LEDs.
Signed-off-by: Harald Welte <laforge@openmoko.org>
Signed-off-by: Ben Dooks <ben-linux@fluf.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Arnaud Patard [Fri, 16 Feb 2007 22:50:32 +0000 (23:50 +0100)]
[ARM] 4215/1: s3c2410 usb device: per-platform vbus_draw
Introduce a platform_device (machine) specific callback function
which gets called when the amount of power we can draw from Vbus
has changed.
Signed-off-by: Harald Welte <laforge@openmoko.org>
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Arnaud Patard [Fri, 16 Feb 2007 21:19:48 +0000 (22:19 +0100)]
[ARM] 4213/1: S3C2410 - Update definition of ADCTSC_XY_PST
Update S3C2410_ADCTSC_XY_PST macro to allow setting the ADCTSC_XY_PST
bits.
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
David Brownell [Wed, 17 Jan 2007 21:11:27 +0000 (22:11 +0100)]
[ARM] 4098/1: ARM: rtc_lock only used with rtc_cmos
Fix build glitches on ARM ... the only user of "rtc_lock" today is the
optional PC-style "CMOS" RTC driver, the legacy SA1100 RTC driver is
not even in the tree any more.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Richard Purdie [Tue, 6 Feb 2007 20:29:00 +0000 (21:29 +0100)]
[ARM] 4137/1: Add kexec support
Add kexec support to ARM.
Improvements like commandline handling could be made but this patch gives
basic functional support. It uses the next available syscall number, 347.
Once the syscall number is known, userspace support will be
finalised/submitted to kexec-tools, various patches already exist.
Originally based on a patch by Maxim Syrchin but updated and forward
ported by various people.
Signed-off-by: Richard Purdie <rpurdie@rpsys.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Catalin Marinas [Thu, 15 Feb 2007 18:05:29 +0000 (19:05 +0100)]
[ARM] 4201/1: SMP barriers pair needed for the secondary boot process
In some situations, the pen_release store in platform_secondary_init()
may stay forever in the write buffer while the CPU is waiting on the
boot_lock to be released in boot_secondary(). The primary CPU could
never see the pen_release update without the barriers.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Jan Altenberg [Fri, 16 Feb 2007 09:37:10 +0000 (01:37 -0800)]
[ARM] at91: correct value for AT91_RSTC_KEY
- Remove a duplicated define for AT91_RSTC_KEY
- Set AT91_RSTC_KEY to the correct value
- Replace the hardcoded keys in at91sam9620.c and at91sam9261.c
by AT91_RSTC_KEY
Signed-off-by: Jan Altenberg <jan@linutronix.de>
Acked-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
David Brownell [Fri, 16 Feb 2007 05:36:50 +0000 (06:36 +0100)]
[ARM] 4207/1: defconfig fixes, use RTC_DRV_AT91RM9200
When "rtc-at91" was renamed to "rtc-at91rm9200" not all the relevant
defconfig entries were updated.
Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Pavel Pisa [Mon, 12 Feb 2007 22:34:38 +0000 (23:34 +0100)]
[ARM] 4171/1: i.MX/MX1 optimize interrupt source retrieval
The macro "get_irqnr_and_base" in "entry-macro.S" optimized
according to Lennert Buytenhek suggestion.
Comments from Pavel Pisa:
Sascha has approved patch some days ago
Signed-off-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Acked-by: Sascha Hauer <s.hauer@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
George G. Davis [Wed, 14 Feb 2007 16:44:28 +0000 (17:44 +0100)]
[ARM] 4191/1: Remove redundant __flush_dcache_page() function prototype
Commit
1c9d3df5e88ad7db23f5b22f4341c39722a904a4 added function prototype
__flush_dcache_page() in include/asm-arm/cacheflush.h. So we can remove
the prototype for same in arch/arm/mm/fault-armv.c since it is now
redundant to have it there.
Signed-off-by: George G. Davis <gdavis@mvista.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Fri, 16 Feb 2007 12:02:42 +0000 (13:02 +0100)]
[ARM] 4202/2: S3C2443: IRQ sub source handlers
Add IRQ handlers for the IRQs which originate
from the sub-interrupt register on the S3C2443
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Fri, 16 Feb 2007 11:54:15 +0000 (12:54 +0100)]
[ARM] 4209/1: S3C24XX: remove unnecessary includes of iomd.h
Machines in the S3C24XX architectures should not
be including <asm/hardware/iomd.h> as this is not
needed.
Also remove commented out includes
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 23:17:07 +0000 (00:17 +0100)]
[ARM] 4206/1: SMDK2440: Fix lcd type in platform data
Set the LCD display type field in the platform data
so that the LCD driver initialise the display as an
TFT display
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 21:53:52 +0000 (22:53 +0100)]
[ARM] 4205/1: S3C2443: Add cpu specific reset hook
Hook in a cpu specific reset function for the S3C2443
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 21:52:15 +0000 (22:52 +0100)]
[ARM] 4204/1: S3C24XX: add hook to specify cpu reset
Add hook code to specify cpu specific reset call
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 21:29:36 +0000 (22:29 +0100)]
[ARM] 4203/1: S3C2443: use S3C2412 nand driver
Use the S3C2412 nand driver for the S3C2443 as it
is register compatible.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 16:32:20 +0000 (17:32 +0100)]
[ARM] 4200/1: S3C2443: Update s3c2410_defconfig to add SMDK2443
Add SMDK2443 to s3c2410_defconfig
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 15:48:58 +0000 (16:48 +0100)]
[ARM] 4199/1: S3C2443: SMDK2443 machine addition
Add support for SMDK2443 to arch/arm/mach-s3c2443
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Fri, 16 Feb 2007 11:12:31 +0000 (12:12 +0100)]
[ARM] 4198/2: S3C2443: arch/arm/mach-s3c2443 and related support
Add arch/arm/mach-s3c2443 for support of the Samsung S3C2443 SoC
This patch adds the core CPU support, clock framework, times
and initial IRQ support, as well as adding the directory into
the build tree.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 15:35:51 +0000 (16:35 +0100)]
[ARM] 4197/1: S3C2443: IRQ number updates
Update IRQ numbers for S3C2443
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 15 Feb 2007 07:17:38 +0000 (08:17 +0100)]
[ARM] 4192/1: AT91: Support for AT91SAM9XE processors.
Add support for the Atmel AT91SAM9XE range of processors. These are
basically AT91SAM9260's with different amounts of internal SRAM and
Flash.
We make use of the existing AT91SAM9260 support, but just perform
run-time detection of the size of the internal SRAM.
Original patch from Nicolas Ferre.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 15:28:11 +0000 (16:28 +0100)]
[ARM] 4196/1: S3C24XX: add S3C2410_IRQSUB() to define IRQ for sub-sources
Add a define of S3C2410_IRQSUB() to define all
the sources from the IRQSUB register, to make it
easier to work out the datasheet=>irq mappings
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 11:57:20 +0000 (12:57 +0100)]
[ARM] 4195/1: S3C2443: include/asm-arm/arch-s3c2410/regs-serial.h updates
Updates for regs-serial.h for S3C2443
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 11:52:01 +0000 (12:52 +0100)]
[ARM] 4194/1: S3C2443: include/asm-arm/arch-s3c2410/regs-gpio.h updates
Updates for regs-gpio.h for S3C2443
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Thu, 15 Feb 2007 11:50:03 +0000 (12:50 +0100)]
[ARM] 4193/1: S3C2443: clock register definitions
Clock register definitions for the S3C2443
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Catalin Marinas [Mon, 5 Feb 2007 13:48:24 +0000 (14:48 +0100)]
[ARM] 4130/1: Add L220 support to RealView/EB
This patch enables the L220 on the RealView/EB MPCore platform.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Thu, 15 Feb 2007 15:07:40 +0000 (15:07 +0000)]
Merge Realview GIC code
Catalin Marinas [Wed, 14 Feb 2007 18:20:28 +0000 (19:20 +0100)]
[ARM] 4109/2: Add support for the RealView/EB MPCore revC platform
The kernel originally supported revB only. This patch enables revC by
default and adds a config option for building the kernel for the revB
platform. Since the SCU base address was hard-coded in the proc-v6.S
file (and only valid for RealView/EB revB), this patch also adds a
more generic support for defining the SCU information.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Catalin Marinas [Wed, 14 Feb 2007 18:18:09 +0000 (19:18 +0100)]
[ARM] 4190/2: Add the secondary GIC support for the RealView/EB
MPCore platform
This patch adds the registration of the secondary GIC on the
baseboard, together with the IRQ chaining setup.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Catalin Marinas [Wed, 14 Feb 2007 18:14:56 +0000 (19:14 +0100)]
[ARM] 4108/2: Allow multiple GIC interrupt controllers in a system
The current implementation only assumes one GIC to be present in the
system. However, there are platforms with more than one cascaded interrupt
controllers (RealView/EB MPCore for example).
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Wed, 14 Feb 2007 07:44:43 +0000 (08:44 +0100)]
[ARM] 4189/1: AT91: MACB Ethernet clock
The MACB Ethernet driver searches for a "macb_clk" clock, so rename the
"ether_clk" on the SAM9260 and SAM9263 to "macb_clk".
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dan Williams [Tue, 13 Feb 2007 16:12:04 +0000 (17:12 +0100)]
[ARM] 4184/1: iop: cp6 access handler (undef_hook)
Enable svc access to cp6 via an undefined instruction hook. Do not enable
access for usr code.
This patch also makes iop13xx select PLAT_IOP, this requires a small change
to drivers/i2c/busses/i2c-iop3xx.c.
Per Lennert Buytenhek's note, the cp6 trap routine is moved to arch/arm/plat-iop
Per Nicolas Pitre's note, the cp_wait is skipped since the latency to
return to the faulting function is longer than cp_wait.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dan Williams [Tue, 13 Feb 2007 16:11:34 +0000 (17:11 +0100)]
[ARM] 4183/1: do_undefinstr: read svc undefined instructions with svc privileges
do_undefinstr currently does not expect undefined instructions in kernel
code, since it always uses get_user() to read the instruction.
Dereference the 'pc' pointer directly in the SVC case.
Per Nicolas Pitre's note, kernel code is never in thumb mode.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Dan Williams [Tue, 13 Feb 2007 16:11:04 +0000 (17:11 +0100)]
[ARM] 4182/1: iop3xx: fix the ioremap implementation to not remap static ranges
Implement a custom ioremap implementation for iop3xx. This saves
establishing new mappings. It also cleans up the PCI IO resource to be a
physical address rather than a virtual address as Russell pointed out on
the original iop13xx port.
Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 13 Feb 2007 16:48:59 +0000 (17:48 +0100)]
[ARM] 4188/1: S3C24XX: add CRAMFS to s3c2410_defconfig
Add cramfs support in by default, as a lot of
our initrds are cramfs images.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 13 Feb 2007 12:29:46 +0000 (13:29 +0100)]
[ARM] 4181/1: S3C24XX: Document new layout
Update Documentation/arm/Samsung-S3C24XX/Overview.txt
with the new directory layout.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 13 Feb 2007 12:20:08 +0000 (13:20 +0100)]
[ARM] 4180/1: S3C24XX: Update docs for S3C2412 and S3C2413
The S3C2412 and S3C2413 are supported, so document
this as so
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 13 Feb 2007 12:14:12 +0000 (13:14 +0100)]
[ARM] 4179/1: S3C2440: DMA ordering list
Add DMA ordering list for S3C2440
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 13 Feb 2007 12:12:16 +0000 (13:12 +0100)]
[ARM] 4178/1: S3C2410: DMA ordering list
Add DMA ordering list for S3C2410
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Tue, 13 Feb 2007 12:02:52 +0000 (13:02 +0100)]
[ARM] 4177/1: S3C24XX: Add DMA channel allocation order
Allow the CPU code, and any board specific initialisation
code to change the allocation order of the DMA channels,
or stop a peripheral allocating any DMA at-all.
This is due to the scarce mapping of DMA channels on
some earlier S3C24XX cpus, where the selection changes
depending on the channel in use.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Arnaud Patard [Mon, 12 Feb 2007 23:50:34 +0000 (00:50 +0100)]
[ARM] 4176/1: H1940 leds
H1940 leds device addition.
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Mon, 12 Feb 2007 23:39:08 +0000 (00:39 +0100)]
[ARM] 4175/1: SMDK2413: add udc pull-up control
USB gadget pull-up control and device addition
for the SMDK2413/SMDK2412 board.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Arnaud Patard [Mon, 12 Feb 2007 23:21:26 +0000 (00:21 +0100)]
[ARM] 4174/1: H1940 usb device definitions
This patch is adding the usb device controller to the h1940 device
list. It's also adding the code to handle the usb pull-ups.
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Arnaud Patard [Mon, 12 Feb 2007 23:18:33 +0000 (00:18 +0100)]
[ARM] 4173/1: S3C24XX usb device platform datas
This patch is adding the functions and structures used for handling the
S3C24XX udc driver platform datas.
Signed-off-by: Arnaud Patard <arnaud.patard@rtp-net.org>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Matt Reimer [Mon, 12 Feb 2007 19:42:52 +0000 (20:42 +0100)]
[ARM] 4168/1: S3C24XX: use defines instead of numbers
Use defines instead of numbers.
Signed-off-by: Matt Reimer <mreimer@vpop.net>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Matt Reimer [Mon, 12 Feb 2007 20:05:02 +0000 (21:05 +0100)]
[ARM] 4170/1: S3C2410: don't save and restore cp register 15
Don't save and restore cp register 15 since it is only a test register on S3C2410. This is probably a leftover from the PXA sleep.S from which this was derived.
Supersedes patch 4167.
Signed-off-by: Matt Reimer <mreimer@vpop.net>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Matt Reimer [Mon, 12 Feb 2007 20:00:32 +0000 (21:00 +0100)]
[ARM] 4169/1: S3C2410: align to a cache line
Align the code to the start of the next cache line, rather than the start of the next 256-byte page.
(On i386 and ARM, the ".align" assembler directive takes its first argument as the number of low-order bits that must be zero, not the number of words comprising a cache line.)
Supercedes patch 4166.
Signed-off-by: Matt Reimer <mreimer@vpop.net>
Acked-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Mon, 12 Feb 2007 17:57:05 +0000 (18:57 +0100)]
[ARM] 4164/1: S3C2412: Add SMDK2412 to SMDK2413
Our current support for the SMDK2413 is the same
as the SMDK2412 (which is very similar), so add
SMDK2412 to the list of machines that mach-smdk2413.c
supports
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Mon, 12 Feb 2007 15:03:22 +0000 (16:03 +0100)]
[ARM] 4163/1: S3C2410: minor typo in init comment
Fix a reference to s3c2440 in the s3c2410 cpu file
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Mon, 12 Feb 2007 19:26:05 +0000 (19:26 +0000)]
[ARM] Provide dummy noncoherent DMA API
We don't currently support the noncoherent DMA API, but it needs to
be provided for kernels with devres to link.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Mon, 12 Feb 2007 13:38:26 +0000 (14:38 +0100)]
[ARM] 4162/1: S3C24XX: update defconfig_s3c2410 after move
Update the s3c2410_defconfig after the movement of
arch/arm/mach-s3c2410
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Mon, 12 Feb 2007 10:53:50 +0000 (10:53 +0000)]
[ARM] Convert dmabounce statistics to use a device attribute
Rather than printk'ing the dmabounce statistics occasionally to
the kernel log, provide a sysfs file to allow this information
to be periodically read.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Mon, 12 Feb 2007 10:28:24 +0000 (10:28 +0000)]
[ARM] Add a reference from struct device to the dma bounce info
dmabounce keeps a per-device structure, and finds the correct
structure by walking a list. Since architectures can now add
fields to struct device, we can attach this structure direct to
the struct device, thereby eliminating the code to search the
list.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sun, 11 Feb 2007 19:33:13 +0000 (20:33 +0100)]
[ARM] 4161/1: S3C24XX: fix leakage of plat-s3c24xx Kconfig items
Do not export S3C24XX from plat-s3c24xx on non-s3c24xx systems
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sun, 11 Feb 2007 17:58:58 +0000 (18:58 +0100)]
[ARM] 4160/1: S3C24XX: defconfig update for 2.6.20
Update defconfig for the 2.6.20 release, and ensure that the
AML5900 machine is built.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sun, 11 Feb 2007 17:56:03 +0000 (18:56 +0100)]
[ARM] 4159/1: S3C2410: fix compile of arch/arm/mach-s3c2410/mach-aml5900.c
Fix compile of arch/arm/mach-s3c2410/mach-aml5900.c due to missing
fixes that have been applied to the rest of the tree.
Include <linux/serial_core.h> to provide the upf_t type needed for
the serial code, and remove the old static map of the SPI which is
not needed for the new spi drivers.
mach-amlm5900.c:51: include/asm/arch/regs-serial.h:200: error: parse error befo
re "upf_t"
mach-amlm5900.c:117: error: 'S3C24XX_VA_SPI' undeclared here (not in a function)
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Sun, 11 Feb 2007 17:31:01 +0000 (18:31 +0100)]
[ARM] 4157/2: S3C24XX: move arch/arch/mach-s3c2410 into cpu components
The following patch and script moves the arch/arm/mach-s3c2410
directory into arch/arm/plat-s3c24xx for the generic core code
and inti arch/arm/mach-s3c{cpu} for the cpu/machine support files
Include directory include/asm-arm/plat-s3c24xx is added for the
core include files.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Imre_Deak [Sun, 11 Feb 2007 12:45:13 +0000 (13:45 +0100)]
[ARM] 4158/1: Fix user page protection macros
The PAGE_* user page protection macros don't take into account the
configured memory policy and other architecture specific bits like
the global/ASID and shared mapping bits. Instead of constants let
these depend on a variable fixed up at init just like PAGE_KERNEL.
Signed-off-by: Imre Deak <imre.deak@solidboot.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Fri, 9 Feb 2007 18:24:45 +0000 (19:24 +0100)]
[ARM] 4156/1: S3C24XX: Add CONFIG_S3C2410_GPIO
In preperation for splitting the arch-s3c2410 directory
up, add a CONFIG_S3C2410_GPIO instead of implicitly
making the .o for CONFIG_CPU_S3C2410 and CONFIG_CPU_S3C2440
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ben Dooks [Fri, 9 Feb 2007 18:20:47 +0000 (19:20 +0100)]
[ARM] 4155/1: S3C24XX: remove obj-dma-* from Makefile
In preperation for splitting the arch-s3c2410 directory
up, remove the use of obj-dma-y in the Makefile and move
to using CONFIG_S3C2440_DMA, CONFIG_S3C2412_DMA, etc.
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Catalin Marinas [Mon, 5 Feb 2007 13:48:19 +0000 (14:48 +0100)]
[ARM] 4135/1: Add support for the L210/L220 cache controllers
This patch adds the support for the L210/L220 (outer) cache
controller. The cache range operations are done by index/way since L2
cache controller only accepts physical addresses.
Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Ahmed S. Darwish [Tue, 6 Feb 2007 00:10:25 +0000 (16:10 -0800)]
[ARM] Use ARRAY_SIZE macro when appropriate
Use ARRAY_SIZE macro already defined in linux/kernel.h
Signed-off-by: Ahmed S. Darwish <darwish.07@gmail.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Lennert Buytenhek [Tue, 6 Feb 2007 00:10:22 +0000 (16:10 -0800)]
[ARM] amba-pl010: add reference to ep93xx to Kconfig help entry
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Pavel Pisa [Tue, 6 Feb 2007 00:10:20 +0000 (16:10 -0800)]
[ARM] i.MX serial: fix IRQ allocation
If RTS interrupt is caused by RTS senzing logic inside i.MX UART module the
IRQ type cannot be set.
It applies only for interrupts going through GPIO layer. The problem has
been noticed by Konstantin Kletschke some time ago.
No IRQF_TRIGGER set_type function for IRQ 26 (MPU)
I would not change type to fixed 0, because it could be possible to use
different GPIO MX1 pin for RTS in the theory. On the other hand it is only
for documentation purposes now, because RTS read code would have to be
adjusted in such case.
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Sascha Hauer [Tue, 6 Feb 2007 00:10:16 +0000 (16:10 -0800)]
[ARM] i.MX serial: fix tx buffer overflows
Fix occasional tx buffer overflows in the i.MX serial driver which came
from the fact that space in the buffer was checked after sending the first
byte. Also, fifosize is 32 bytes, not 8.
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de
Acked-by: Pavel Pisa <pisa@cmp.felk.cvut.cz>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 16:36:34 +0000 (17:36 +0100)]
[ARM] 4154/1: AT91: Clock update
Unconditionally disabling the PCKs (Programmable Clocks) is not a good
idea as it breaks boards that depend on those clocks being enabled by
bootloaders.
Therefore only disable unused clocks late in the init process, giving
the board init code the chance to claim the clock.
Patch from Steven Scholz.
Since the HCK clocks on SAM9261 are already being registered as a
independent clocks, we don't need the special case for HCK0 on the
SAM9261. Platform-init code and drivers should use the clock API to
enable/disable the clock.
Patch from Nicolas Ferre.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Russell King [Thu, 8 Feb 2007 20:46:20 +0000 (20:46 +0000)]
[ARM] Always mark ARMv6 PTWs outer cacheable
Other platforms other than SMP may have an outer cache. For these, we
also need to mark the page table walks outer cacheable. Since marking
the walks always outer cacheable apparantly has no side effects, we
might as well always mark them so.
However, we continue to only mark PTWs shared if we have SMP enabled.
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Lennert Buytenhek [Thu, 8 Feb 2007 15:26:23 +0000 (16:26 +0100)]
[ARM] 4153/1: fix consistent_sync() off-by-one BUG check
In consistent_sync(), start + size can end up pointing one byte
beyond the end of the direct RAM mapping. We shouldn't BUG() when
this happens.
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Liam Girdwood [Thu, 8 Feb 2007 15:23:29 +0000 (16:23 +0100)]
[ARM] 4152/1: Add PXA SSP audio register defs and fixups
This patchs adds some missing register bit defs for the PXA SSP ports audio registers and fixes up some other broken bit definitions as noticed by Russell.
Signed-off-by: Liam Girdwood <liam.girdwood@wolfsonmicro.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 10:31:22 +0000 (11:31 +0100)]
[ARM] 4151/1: AT91 / AVR32: Move at91_pdc.h to linux/atmel_pdc.h
The Atmel AT91 and AVR32 processor architectures share many of the same
peripherals. The PDC (Peripheral Data Controller) registers are also
implemented within in a number of the on-chip peripherals (eg, USART,
MMC, SPI, SSC, etc).
In a attempt not to duplicate the register definitions in each
peripheral, or in each architecture, the at91_pdc.h header in
asm-arm/arch-at91 and asm-avr32/arch-at32ap has been replaced with
linux/atmel_pdc.h.
The definitions have also been renamed from AT91_PDC_* to ATMEL_PDC_*,
and the drivers updated accordingly.
Original patch from Nicolas Ferre.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Acked-by: Haavard Skinnemoen <hskinnemoen@atmel.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Milan Svoboda [Wed, 7 Feb 2007 07:43:35 +0000 (08:43 +0100)]
[ARM] 4141/1: consolidate functions that handles gpio in pxa2xx_udc
This patch renames pxa_gpio_set/get functions defined in drivers/usb/gadget/pxa2xx_udc.h to udc_gpio_set/get.
These functions are moved from drivers/usb/gadget/pxa2xx_udc.h to include/asm-arm/arch-pxa2xx/udc.h
Creates new functions: udc_gpio_to_irq, udc_gpio_init_vbus, udc_gpio_init_pullup in include/asm-arm/arch-pxa2xx/udc.h. These functions are used in drivers/usb/gadget/pxa2xx_udc.c instead of direct low-level (pxa2xx only) functions.
Creates all these udc_gpio_* functions in include/asm-arm/arch-ixp4xx/udc.h. This implementation has no real code because ixp4xx doesn't use vbus - only vbus uses all these gpio functions (and because ixp4xx misses any function which converts number of gpio pin into it's irq).
This is next step to make pxa2xx_udc fully work on ixp4xx platform.
Signed-off-by: Milan Svoboda <msvoboda@ra.rockwell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Lennert Buytenhek [Thu, 8 Feb 2007 00:01:41 +0000 (01:01 +0100)]
[ARM] 4142/1: ep93xx: handle IRQT_NOEDGE
Signed-off-by: Lennert Buytenhek <buytenh@wantstofly.org>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 10:18:14 +0000 (11:18 +0100)]
[ARM] 4150/1: AT91: LED update
The GPIO pin setup should be handed by the platform-setup code, and not
directly by the driver.
Original patch from David Brownell.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 10:04:19 +0000 (11:04 +0100)]
[ARM] 4149/1: AT91: Overrun in SAM9 gettimeoffset().
Fix an overrun in the AT91SAM9 gettimeoffset() function. This causes
the time value returned by gettimeofday() to jump "backwards".
Original patch from Michel Benoit.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 09:44:46 +0000 (10:44 +0100)]
[ARM] 4148/1: AT91: Physically mapped flash on CSB337 and CSB637 boards.
Define the physically mapped flash on the Cogent CSB337 and CSB637
boards.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 09:25:38 +0000 (10:25 +0100)]
[ARM] 4147/1: AT91: Define Timer/Counter clocks.
Define the Timer/Counter Unit clocks on the AT91RM9200, AT91SAM9260 and
AT91SAM9261 processors.
Original patch from David Brownell.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 09:22:16 +0000 (10:22 +0100)]
[ARM] 4146/1: AT91: Support for AT91SAM9263-EK board.
Add support for the Atmel AT91SAM9263-EK board.
Original patch from Nicolas Ferre.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 08:42:40 +0000 (09:42 +0100)]
[ARM] 4145/2: AT91: Add support for AT91SAM9263 processor
Add support for the Atmel AT91SAM9263 processor. It is similar to the
AT91SAM9260 but with more integrated peripherals, 5 GPIO banks, etc.
Original patch from Nicolas Ferre.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Andrew Victor [Thu, 8 Feb 2007 08:00:39 +0000 (09:00 +0100)]
[ARM] 4143/1: AT91: Prepare for AT91SAM9263 support
The Atmel AT91SAM9263 processor includes many more integrated
peripherals than Atmel's previous ARM9-based AT91 processors, so this
has necessitated a few changes to the core AT91 support.
These changes are:
* The system peripheral I/O region we remap has increased from
0xFFFA0000..0xFFFFFFFF to 0xFFF78000..0xFFFFFFFF.
* The increased I/O region forces changes to entry-macro.S and
debug-macro.S due to ARM's limited immediate offset addressing
modes.
* Maximum number of GPIO banks increases to 5.
* 2 MMC controllers so the board-setup code needs to specify which
controller it wishes to use when calling at91_add_device_mmc().
Original patch from Nicolas Ferre.
Signed-off-by: Andrew Victor <andrew@sanpeople.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>