Commit graph

4855 commits

Author SHA1 Message Date
Linus Torvalds
6ae85d6db4 Merge master.kernel.org:/home/rmk/linux-2.6-arm
* master.kernel.org:/home/rmk/linux-2.6-arm:
  [ARM] 5460/1: Orion: reduce namespace pollution
  [ARM] 5458/1: pcmcia: pxa2xx-sharpsl: check if we do have Scoop config
  [ARM] 5457/1: mach-imx gpio buildfix
  [ARM] 5456/1: add sys_preadv and sys_pwritev
  [ARM] pxa/pcm990: start external GPIOs immediately after built-in ones
  [ARM] pxa/palm27x: General fix for Palm27x aSoC driver
  [ARM] pxa/mioa701: use GPIO95 as AC97 reset line
  [ARM] pxa: merge AC97 platform data structures
  [ARM] pxa/magician: remove un-necessary #include of pxa-regs.h and hardware.h
2009-04-24 08:36:41 -07:00
Nicolas Pitre
fdd8b079e3 [ARM] 5460/1: Orion: reduce namespace pollution
Symbols like SOFT_RESET are way too generic to be exported at large.
To avoid this, let's move the mbus bridge register defines into a
separate file and include it where needed.  This affects mach-kirkwood,
mach-loki, mach-mv78xx0 and mach-orion5x simultaneously as they all
share code in plat-orion which relies on those defines.

Some other defines have been moved to narrower scopes, or simply deleted
when they had no user.

This fixes compilation problem with mpt2sas on the above listed
platforms.

Signed-off-by: Nicolas Pitre <nico@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-23 23:25:41 +01:00
Magnus Damm
8e19608e8b clocksource: pass clocksource to read() callback
Pass clocksource pointer to the read() callback for clocksources.  This
allows us to share the callback between multiple instances.

[hugh@veritas.com: fix powerpc build of clocksource pass clocksource mods]
[akpm@linux-foundation.org: cleanup]
Signed-off-by: Magnus Damm <damm@igel.co.jp>
Acked-by: John Stultz <johnstul@us.ibm.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-04-21 13:41:47 -07:00
Oleg Drokin
0112fc2229 Separate out common fstatat code into vfs_fstatat
This is a version incorporating Christoph's suggestion.

Separate out common *fstatat functionality into a single function
instead of duplicating it all over the code.

Signed-off-by: Oleg Drokin <green@linuxhacker.ru>
Signed-off-by: Al Viro <viro@zeniv.linux.org.uk>
2009-04-20 23:02:51 -04:00
Russell King
64bd43a086 Merge branch 'fix' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 2009-04-20 14:03:04 +01:00
David Brownell
4a014a240b [ARM] 5457/1: mach-imx gpio buildfix
From: David Brownell <dbrownell@users.sourceforge.net>

Fix GPIO-related build error on mach-imx platform:

  CC      drivers/spi/spi_gpio.o
In file included from /home/db/kernel/scratch/arch/arm/include/asm/gpio.h:5,
                 from include/linux/gpio.h:7,
                 from drivers/spi/spi_gpio.c:23:
arch/arm/mach-imx/include/mach/gpio.h: In function 'imx_gpio_get_value':
arch/arm/mach-imx/include/mach/gpio.h:27: error: implicit declaration of function '__REG2'
arch/arm/mach-imx/include/mach/gpio.h:27: error: 'IMX_IO_BASE' undeclared (first use in this function)
arch/arm/mach-imx/include/mach/gpio.h:27: error: (Each undeclared identifier is reported only once
arch/arm/mach-imx/include/mach/gpio.h:27: error: for each function it appears in.)
arch/arm/mach-imx/include/mach/gpio.h: In function 'imx_gpio_set_value_inline':
arch/arm/mach-imx/include/mach/gpio.h:36: error: 'IMX_IO_BASE' undeclared (first use in this function)
arch/arm/mach-imx/include/mach/gpio.h:36: error: lvalue required as left operand of assignment
arch/arm/mach-imx/include/mach/gpio.h:38: error: lvalue required as left operand of assignment
	...

Signed-off-by: David Brownell <dbrownell@users.sourceforge.net>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-20 14:01:40 +01:00
Mikael Pettersson
eb8f3142fa [ARM] 5456/1: add sys_preadv and sys_pwritev
Kernel 2.6.30-rc1 added sys_preadv and sys_pwritev to most archs
but not ARM, resulting in

<stdin>:1421:2: warning: #warning syscall preadv not implemented
<stdin>:1425:2: warning: #warning syscall pwritev not implemented

This patch adds sys_preadv and sys_pwritev to ARM.

These syscalls simply take five long-sized parameters, so they
should have no calling-convention/ABI issues in the kernel.

Tested on armv5tel eabi using a preadv/pwritev test program posted
on linuxppc-dev earlier this month.

It would be nice to get this into the kernel before 2.6.30 final,
so that glibc's kernel version feature test for these syscalls
doesn't have to special-case ARM.

Signed-off-by: Mikael Pettersson <mikpe@it.uu.se>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-20 14:01:39 +01:00
Guennadi Liakhovetski
a48dc30da4 [ARM] pxa/pcm990: start external GPIOs immediately after built-in ones
As a result of an off-by-1 error pcm990 leaves one unused GPIO number between
built-in GPIOs and the pca9536 extender. Fix it.

Signed-off-by: Guennadi Liakhovetski <g.liakhovetski@gmx.de>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-04-19 21:57:10 +08:00
Marek Vasut
e91fb9137d [ARM] pxa/palm27x: General fix for Palm27x aSoC driver
Firstly, this patch makes the palm27x asoc driver a little more sane. Also,
since all affected devices use GPIO95 as AC97_nRESET, this patch sets that
properly. Affected are PalmT5, TX and LifeDrive.

Signed-off-by: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
2009-04-19 21:56:54 +08:00
Russell King
7f07df540e Merge branch 'defconfig-s3c2410' of git://aeryn.fluff.org.uk/bjdooks/linux 2009-04-17 21:35:56 +01:00
Russell King
c917c1d015 Merge branch 'v2630-rc2-fixes' of git://aeryn.fluff.org.uk/bjdooks/linux 2009-04-17 21:35:44 +01:00
Ramax Lo
0c3ee07825 [ARM] S3C24XX: ADC: Check pending queue before freeing adc client
Check pending queue and remove the adc client being released.

Signed-off-by: Ramax Lo <ramaxlo@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-17 12:46:36 +01:00
Ben Dooks
f8c8ac8109 [ARM] S3C: Fix ADC driver sparse warning
The symbol 's3c_adc_try' in arch/arm/plat-s3c24xx/adc.c
does not need to be exported and thus should be static.

This fixes the following sparse warning:

adc.c:103:6: warning: symbol 's3c_adc_try' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-17 12:42:25 +01:00
Ben Dooks
2a96ad05e9 [ARM] Osiris: Fix double initialisation in machine block
The .init_machine entry in mach-osiris.c had the same entry
twice, so remove one definition to fix the following warning
from sparse:

mach-osiris.c:416:3: warning: Initializer entry defined twice
mach-osiris.c:418:3:   also defined here

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-17 12:42:24 +01:00
Ben Dooks
019dbaa11d [ARM] Anubis: Fix sparse warnings for items that should be static
Make 'anubis_ide_platdata' statis as it is not used outside
the file it is in, fixing the following sparse warning:

mach-anubis.c:246:27: warning: symbol 'anubis_ide_platdata' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-17 12:42:24 +01:00
Ben Dooks
59c1ab6090 [ARM] JIVE: Fix sparse warnings about items which should be static
Make 'jive_vgg2432a4_display' and 'jive_lcd_config' static as
they are not exported, and are generating the following sparse
warnings:

mach-jive.c:280:26: warning: symbol 'jive_vgg2432a4_display' was not declared. Should it be static?
mach-jive.c:313:28: warning: symbol 'jive_lcd_config' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-17 12:42:24 +01:00
Ben Dooks
ad14ff3749 [ARM] S3C: Fix sparse warning from missing 's3c_device_hwmon'
Fix the following sparse warning due to s3c_device_hwmon being
missing from <plat/devs.h>

devs.c:380:24: warning: symbol 's3c_device_hwmon' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-17 12:42:24 +01:00
Ben Dooks
ec5cfbfc05 [ARM] S3C24XX: Fix sparse error in gpiolib.c
Fix the following sparse error generated by including
<plat/gpio-core.h> instead of <mach/gpio-core.h>

gpiolib.c:78:22: warning: symbol 's3c24xx_gpios' was not declared. Should it be static?

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-17 12:42:24 +01:00
Linus Walleij
77f4025b5e [ARM] 5455/1: Fix IRQ noise from VIC code
The VIC code will attempt to perform som
default set_irq_chip() and set_irq_chip_data()
on all IRQs supported by the VIC, while the new
IRQ handling code strictly checks for the global
NR_IRQS to be respected also for these IRQs.

This patch will respect the interrupt mask passed
to the VIC driver and will prevent it from
attempting to call these functions on any unused
interrupts.

Signed-off-by: Linus Walleij <linus.walleij@stericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-16 21:29:46 +01:00
Russell King
32dc496b47 Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 2009-04-16 16:16:34 +01:00
Sascha Hauer
c5ab660db9 mxc defconfig updates
This patch removes several i.MX board specific defconfig files in favour
for a mx1_defconfig, mx27_defconfig and mx3_defconfig. All config files
have all currently available boards, i.MX specific drivers and the network
device drivers for the boards enabled.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16 13:03:57 +02:00
Mark Brown
0ac402fdaa mx31ads: Mark as having full regulatoion constraints with 1133-EV1 board
This allows the regulator API to power off unused regulators at the end
of init.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-04-16 13:03:56 +02:00
Mark Brown
132d3f950e mx31ads: Depend on all the WM8350 core dependencies for WM1133-EV1 board
Otherwise we'd need massive ifdefs in the code.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-04-16 13:03:56 +02:00
Darius Augulis
3f2030163e Fix ifdef in plat-mxc/irc.c
Move ifdef under function brackets. This fixes compile crach when IRQ priorities
are disabled.

Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
2009-04-16 13:03:11 +02:00
Darius Augulis
3fa6dd6a7a MX1ADS: remove I2C ifdefs
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
2009-04-16 12:57:15 +02:00
Ilya Yanok
248ca85f01 qong: remove AIPS[12] mappings from machine-specific iotable
AIPS[12] are no mapped from generic MX3 code so we don't need to
map them from machine-specific map_io function anymore.

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
2009-04-16 12:57:15 +02:00
Mark Brown
9070e7afb8 mx31ads: imoux pins should be passed in as unsigned int
To match the mxc_iomux_setup_multiple_pins() prototype.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
2009-04-16 12:57:15 +02:00
Paulius Zaleckas
470f9b602e MXC: remove orphan imx_init_uart() definition
Signed-off-by: Paulius Zaleckas <paulius.zaleckas@teltonika.lt>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16 12:57:14 +02:00
Valentin Longchamp
d5f281043a mx31: pin definition for csi
Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
2009-04-16 12:57:14 +02:00
Valentin Longchamp
c44af41ad5 MX31: pin definition for sdhc2
This also adds the pins used on mx31moboard for WP and CD

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
2009-04-16 12:57:14 +02:00
Vladimir Barinov
c5c96f4dce MX31: Add I2C pin definitions
Add I2C pin definitions for MX31 SoC

Signed-off-by: Vladimir Barinov <vbarinov@embeddedalley.com>
2009-04-16 12:57:13 +02:00
Sascha Hauer
4bd962987d MX31: Add more alternate pin definitions
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16 12:57:13 +02:00
Sascha Hauer
f8e5143be7 pcm037 board support: Fix eth interrupt gpio setting
gpio_direction_input needs the gpio number, not the pin description.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
2009-04-16 12:57:13 +02:00
Holger Schurig
1b3c9bf2cd imx21: activate i2c
Set the correct clkdev-name for the i2c clock.

It also get's rid of the ARCH_NR_GPIOS define on the rationale
that isn't an ARCH-wide setting anyway. If a device has two
pca953x devices, the reserved number will be wrong.

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
2009-04-16 12:57:13 +02:00
Holger Schurig
289a689b10 imx21: fixes some clocknames
Signed-off-by: <hs4233@mail.mn-solutions.de>
2009-04-16 12:57:12 +02:00
Ben Dooks
db75639406 [ARM] S3C: Export s3c_gpio_cfgpin and s3c_gpio_setpull for modules
Add an export of the two GPIO configuration calls
s3c_gpio_cfgpin and s3c_gpio_setpull to allow modules
to use them (such as ASoC drivers)

Signed-off-by: Ben Dooks <ben@simtec.co.uk>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16 11:52:02 +01:00
Ben Dooks
ea5a6fd810 [ARM] s3c2410_defconfig: Update miscellaneous drivers
Update the driver build in the s3c2410_defconfig for the
LED, IDE, Input and EEPROM options

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16 10:34:24 +01:00
Ben Dooks
f8832a988c [ARM] s3c2410_defconfig: Update USB device drivers
Add more USB device driver options to the s3c2410_defconfig,
mostly as modules.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16 10:34:23 +01:00
Ben Dooks
89d44a0f00 [ARM] s3c2410_defconfig: Update filesystem options
Update the filesystem options in the s3c2410_defconfig,
such as building ext4, enable the automounter as modules
and update the network filesysyem choices.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16 10:34:23 +01:00
Ben Dooks
f04121e457 [ARM] s3c2410_defconfig: Add video/radio drivers
Add a set of various video and radio drivers to the
s3c2410_defconfig as modules.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16 10:34:22 +01:00
Ben Dooks
68c468c9d0 [ARM] s3c2410_defconfig: Add sound drivers
Add sound drivers to the s3c2410_defconfig.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-16 10:34:21 +01:00
eric miao
cbb55092a6 [ARM] 5453/1: fix building breakage of sys_oabi-compat.c due to missing kmalloc/kfree
It seems that declarations of kmalloc/kfree are missed, explicitly
include it.

Signed-off-by: Eric Miao <eric.miao@marvell.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-16 10:07:45 +01:00
Ben Dooks
121613e431 [ARM] s3c2410_defconfig: Add MMC/SD core and drivers
Add SD/MMC to the s3c2410_defconfig, building in the core
and adding the rest of the drivers as modules.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15 15:12:11 +01:00
Ben Dooks
2ba4d47210 [ARM] s3c2410_defconfig: Update machine configuration
Update the machine configuration of s3c2410_defconfig to
add support for newer machines, and update the s3c24xx
specific options.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15 15:02:47 +01:00
Ben Dooks
7fa6bed89a [ARM] s3c2410_defconfig: Update network options
Update the list of modules being built for the network
core of the s3c2410_defconfig. This update adds such
items as TCP congestion, netfilter for IPv4 and IPv6.

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15 15:00:18 +01:00
Ben Dooks
0288421836 [ARM] s3c2410_defconfig: update to 2.6.30-rc2
Update arch/arm/configs/s3c2410_defconfig to the
latest kernel release (2.6.30-rc2).

Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15 14:56:33 +01:00
Mark Brown
b7f9a94bf2 [ARM] SMDK6410: Request GPIOs for LCD power control
Going forward gpio_request() will be a requirement for GPIO API users so
call it for the LCD power GPIOs. With present code the kernel functions
but generaets loud WARN_ON()s when using the unrequested GPIOs.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15 14:46:03 +01:00
Huang Weiyi
acd216a15d [ARM] S3C: remove duplicated #include
Remove duplicated #include in arch/arm/mach-s3c2412/mach-jive.c.

Signed-off-by: Huang Weiyi <weiyi.huang@gmail.com>
Signed-off-by: Ben Dooks <ben-linux@fluff.org>
2009-04-15 14:46:03 +01:00
Hartley Sweeten
d5565f76d3 [ARM] 5451/1: ep93xx:core.c: build warning fix
Fix trivial build warning due to incompatible pointer type.

ep93xx_timer_interrupt() has the wrong return type causing a
warning during the build.

Signed-off-by: H Hartley Sweeten <hsweeten@visionengravers.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-15 10:01:03 +01:00
Aaro Koskinen
7fccfc00c0 [ARM] 5450/1: Flush only the needed range when unmapping a VMA
When unmapping N pages (e.g. shared memory) the amount of TLB flushes
done can be (N*PAGE_SIZE/ZAP_BLOCK_SIZE)*N although it should be N at
maximum. With PREEMPT kernel ZAP_BLOCK_SIZE is 8 pages, so there is a
noticeable performance penalty when unmapping a large VMA and the system
is spending its time in flush_tlb_range().

The problem is that tlb_end_vma() is always flushing the full VMA
range. The subrange that needs to be flushed can be calculated by
tlb_remove_tlb_entry(). This approach was suggested by Hugh Dickins,
and is also used by other arches.

The speed increase is roughly 3x for 8M mappings and for larger mappings
even more.

Signed-off-by: Aaro Koskinen <Aaro.Koskinen@nokia.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
2009-04-15 10:01:02 +01:00