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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
Move ifdef under function brackets. This fixes compile crach when IRQ priorities
are disabled.
Signed-off-by: Darius Augulis <augulis.darius@gmail.com>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
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>
MioA701 board's GPIO95 is the AC97 line. The other GPIO113
is not connected to the sound chip, but to the GSM chip as a
wakeup line.
It happens that when the pxa2xx_ac97 driver reconfigures the
gpio as an "out gpio" for AC97 reset (bug workaround), it
hangs the GSM chip.
As AC97 platform data now enables to specify the AC97 reset
line, use it.
Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
Currently there are two possible platform datas for the PXA AC97 driver:
one supported by the generic AC97 driver only which provides callbacks
to allow board-specific configuration at stream startup and teardown,
and another for pxa2xx-ac97-lib which allows configuration of the reset
GPIO for PXA2xx CPUs.
Obviously this won't actually work when using the generic AC97 driver
since the drivers will attempt to parse the platform data in both
formats. Fix this by merging the two structures.
Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Acked-by: Robert Jarzmik <robert.jarzmik@free.fr>
Cc: Marek Vasut <marek.vasut@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>