]> www.pilppa.org Git - linux-2.6-omap-h63xx.git/log
linux-2.6-omap-h63xx.git
15 years agoMerge branch 'master' of git://git.marvell.com/orion into devel
Russell King [Thu, 19 Mar 2009 23:10:40 +0000 (23:10 +0000)]
Merge branch 'master' of git://git.marvell.com/orion into devel

Conflicts:

arch/arm/mach-mx1/devices.c

15 years ago[ARM] pass reboot command line to arch_reset()
Russell King [Thu, 19 Mar 2009 16:20:24 +0000 (16:20 +0000)]
[ARM] pass reboot command line to arch_reset()

OMAP wishes to pass state to the boot loader upon reboot in order to
instruct it whether to wait for USB-based reflashing or not.  There is
already a facility to do this via the reboot() syscall, except we ignore
the string passed to machine_restart().

This patch fixes things to pass this string to arch_reset().  This means
that we keep the reboot mode limited to telling the kernel _how_ to
perform the reboot which should be independent of what we request the
boot loader to do.

Acked-by: Tony Lindgren <tony@atomide.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'omap-clks3' into devel
Russell King [Thu, 19 Mar 2009 12:39:58 +0000 (12:39 +0000)]
Merge branch 'omap-clks3' into devel

Conflicts:

arch/arm/mach-omap2/clock.c

15 years agoMerge branch 'for-russell' of git://git.kernel.org/pub/scm/linux/kernel/git/chris...
Russell King [Tue, 17 Mar 2009 23:51:52 +0000 (23:51 +0000)]
Merge branch 'for-russell' of git://git.kernel.org/pub/scm/linux/kernel/git/chris/linux-2.6 into devel

15 years agoIXP4xx: PCI ixp4xx_scan_bus() is __devinit.
Krzysztof Hałasa [Tue, 17 Mar 2009 13:39:30 +0000 (14:39 +0100)]
IXP4xx: PCI ixp4xx_scan_bus() is __devinit.

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
15 years agoIXP4xx: cpu_is_ixp4*() now recognizes all IXP4xx processors.
Krzysztof Hałasa [Tue, 17 Mar 2009 12:51:52 +0000 (13:51 +0100)]
IXP4xx: cpu_is_ixp4*() now recognizes all IXP4xx processors.

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
15 years agoIXP4xx: add Ethernet and NPE support for IXP43x CPU.
Krzysztof Hałasa [Fri, 13 Mar 2009 18:09:00 +0000 (19:09 +0100)]
IXP4xx: add Ethernet and NPE support for IXP43x CPU.

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
15 years agoIXP4xx: workaround for PCI prefetch problems near 64 MB boundary.
Krzysztof Hałasa [Fri, 13 Mar 2009 16:57:04 +0000 (17:57 +0100)]
IXP4xx: workaround for PCI prefetch problems near 64 MB boundary.

Map unused registers at the end of DMA region at 64 MB to allow PCI masters
to cross the boundary when prefetching data from SDRAM.

Signed-off-by: Krzysztof Hałasa <khc@pm.waw.pl>
15 years agoMerge branch 'imx-fb-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async...
Russell King [Mon, 16 Mar 2009 22:28:04 +0000 (22:28 +0000)]
Merge branch 'imx-fb-fix' of git://git.kernel.org/pub/scm/linux/kernel/git/djbw/async_tx into devel

Conflicts:

drivers/video/mx3fb.c

15 years ago[ARM] mv78xx0: Add Marvell RD-78x00-mASA Reference Design support
Lennert Buytenhek [Thu, 12 Mar 2009 08:48:37 +0000 (09:48 +0100)]
[ARM] mv78xx0: Add Marvell RD-78x00-mASA Reference Design support

Signed-off-by: Lennert Buytenhek <buytenh@marvell.com>
Acked-by: Stanislav Samsonov <samsonov@marvell.com>
Signed-off-by: Nicolas Pitre <nico@marvell.com>
15 years ago[ARM] Kirkwood: update defconfig
Nicolas Pitre [Wed, 4 Mar 2009 03:19:03 +0000 (22:19 -0500)]
[ARM] Kirkwood: update defconfig

Signed-off-by: Nicolas Pitre <nico@marvell.com>
15 years ago[ARM] Kirkwood: SheevaPlug LED support
Nicolas Pitre [Tue, 3 Mar 2009 06:16:07 +0000 (01:16 -0500)]
[ARM] Kirkwood: SheevaPlug LED support

Signed-off-by: Nicolas Pitre <nico@marvell.com>
15 years ago[ARM] Kirkwood: SheevaPlug USB Power Enable setup
Nicolas Pitre [Tue, 3 Mar 2009 04:44:41 +0000 (23:44 -0500)]
[ARM] Kirkwood: SheevaPlug USB Power Enable setup

Ideally, the default should be set to 0 and let the EHCI driver turn
it on as needed.  This makes USB usable in the mean time.

Signed-off-by: Nicolas Pitre <nico@marvell.com>
15 years ago[ARM] Kirkwood: Marvell SheevaPlug support
Shadi Ammouri [Tue, 24 Feb 2009 20:26:23 +0000 (15:26 -0500)]
[ARM] Kirkwood: Marvell SheevaPlug support

Signed-off-by: Nicolas Pitre <nico@marvell.com>
15 years agoMerge commit '305b07680f' into orion/master
Nicolas Pitre [Mon, 16 Mar 2009 01:41:23 +0000 (21:41 -0400)]
Merge commit '305b07680f' into orion/master

15 years ago[ARM] 5427/1: h3600: ipaq_model_ops final cleanup
Dmitry Artamonow [Sun, 15 Mar 2009 18:14:27 +0000 (19:14 +0100)]
[ARM] 5427/1: h3600: ipaq_model_ops final cleanup

Since now ipaq_model_ops used only for accessing h3600 EGPIOs,
drop it completely and use assign_h3600_egpio() directly.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5426/1: h3600: remove clr_h3600_egpio/set_h3600_egpio helpers
Dmitry Artamonow [Sun, 15 Mar 2009 18:13:16 +0000 (19:13 +0100)]
[ARM] 5426/1: h3600: remove clr_h3600_egpio/set_h3600_egpio helpers

Replace all occurences with assign_h3600_egpio.
Also simplify code a bit by replacing couple of if-else
statements with one-line equivalents.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5425/1: h3600: first stage of ipaq_model_ops cleanup
Dmitry Artamonow [Sun, 15 Mar 2009 18:11:21 +0000 (19:11 +0100)]
[ARM] 5425/1: h3600: first stage of ipaq_model_ops cleanup

Remove unused fields and associated funtions-accesors.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5424/1: h3600: clean up mtd partitions table
Dmitry Artamonow [Sun, 15 Mar 2009 18:09:50 +0000 (19:09 +0100)]
[ARM] 5424/1: h3600: clean up mtd partitions table

Right now iPaq h3600's default MTD partitions table is a mess. It has
two #ifdefs with #else, giving total 3 variants, depending on your
kernel config. Replace all this with simple two-partitions scheme
(bootloader + rootfs), that used by both shipped WindowsCE and
most of the linux distributions (Familiar, Angstrom)

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5423/1: SA1100: remove unused H3600_SLEEVE Kconfig option
Dmitry Artamonow [Sun, 15 Mar 2009 18:04:56 +0000 (19:04 +0100)]
[ARM] 5423/1: SA1100: remove unused H3600_SLEEVE Kconfig option

There's no actual code for iPAQ sleeves support in kernel that depends
on this config option.

Signed-off-by: Dmitry Artamonow <mad_soft@inbox.ru>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa...
Russell King [Sun, 15 Mar 2009 10:10:13 +0000 (10:10 +0000)]
Merge branch 'devel' of git://git.kernel.org/pub/scm/linux/kernel/git/ycmiao/pxa-linux-2.6 into devel

15 years agoMerge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into devel
Russell King [Fri, 13 Mar 2009 21:44:51 +0000 (21:44 +0000)]
Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6 into devel

Conflicts:

arch/arm/mach-at91/gpio.c

15 years agoqong: basic support for Dave/DENX QongEVB-LITE board
Ilya Yanok [Wed, 11 Mar 2009 00:22:00 +0000 (03:22 +0300)]
qong: basic support for Dave/DENX QongEVB-LITE board

This patch adds basic support for Dave/DENX QongEVB-LITE i.MX31-based
board. It includes support for clocks initialization, UART1, NOR-flash,
FPGA-attached NAND flash and DNET ethernet controller (inside FPGA).

Signed-off-by: Ilya Yanok <yanok@emcraft.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agopcm970 baseboard: Add SDHC support
Sascha Hauer [Fri, 19 Dec 2008 13:32:07 +0000 (14:32 +0100)]
pcm970 baseboard: Add SDHC support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agopcm037: Add sdhc support
Sascha Hauer [Tue, 11 Nov 2008 14:03:28 +0000 (15:03 +0100)]
pcm037: Add sdhc support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoMX31: Add sdhc resources/platform devices
Sascha Hauer [Fri, 19 Dec 2008 13:32:06 +0000 (14:32 +0100)]
MX31: Add sdhc resources/platform devices

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoMX2: Add SDHC platform_devices and resources
Sascha Hauer [Fri, 19 Dec 2008 13:32:07 +0000 (14:32 +0100)]
MX2: Add SDHC platform_devices and resources

Signed-of-by: Julien Boibessot <julien.boibessot@armadeus.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoMX2/MX3 SDHC driver: rename platform driver
Sascha Hauer [Mon, 23 Feb 2009 12:08:06 +0000 (13:08 +0100)]
MX2/MX3 SDHC driver: rename platform driver

Rename driver from imx-mmc to mxc-mmc to avoid conflicts with the
mx1 mmc driver.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomxcmmc: Do not pass clock name, we have only one clock for this device
Sascha Hauer [Mon, 23 Feb 2009 12:33:31 +0000 (13:33 +0100)]
mxcmmc: Do not pass clock name, we have only one clock for this device

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoUse __force in IO_ADDRESS macro to silence sparse
Sascha Hauer [Thu, 19 Feb 2009 11:48:35 +0000 (12:48 +0100)]
Use __force in IO_ADDRESS macro to silence sparse

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoMX31 clkdev support
Sascha Hauer [Wed, 18 Feb 2009 10:55:33 +0000 (11:55 +0100)]
MX31 clkdev support

This patch adds clkdev support for i.MX31. This is done in a
similar way done previously for i.MX27

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] pcm038: Fix pins for UART3
Sascha Hauer [Mon, 9 Feb 2009 10:00:03 +0000 (11:00 +0100)]
[ARM] pcm038: Fix pins for UART3

The UART3 had a copy-paste bug. instead of claiming rxd, txd, rts and
cts pins, cts and rts were claimed twice

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX31: Move static virtual mappings of AIPS1/2 to common file
Sascha Hauer [Fri, 6 Feb 2009 17:15:06 +0000 (18:15 +0100)]
[ARM] MX31: Move static virtual mappings of AIPS1/2 to common file

On MX31 we can't do much without mapping the AIPS1/2 register space.
Move these mappings from individual boards to plat-mxc/mm.c

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX31/MX35: Add l2x0 cache support
Sascha Hauer [Sun, 8 Feb 2009 01:00:50 +0000 (02:00 +0100)]
[ARM] MX31/MX35: Add l2x0 cache support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX35 devices support
Sascha Hauer [Fri, 6 Feb 2009 14:38:51 +0000 (15:38 +0100)]
[ARM] MX35 devices support

The i.MX35 basically features the same peripherals as the i.MX31 with
some differences:

- The i.MX35 has a FEC ethernet controller
- The NAND controller base addresses are different
- The i.MX35 has only 3 UARTs

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX35: add clock support
Sascha Hauer [Fri, 6 Feb 2009 16:48:59 +0000 (17:48 +0100)]
[ARM] MX35: add clock support

This patch adds clock support for i.MX35 SoCs. We do not support setting
of clock rates yet, but most interesting clock rates should be reported.
I couldn't test all clock rates and the datasheet contains some obvious
bugs, so expect some bugs in this code.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] add i.MX35 build support
Sascha Hauer [Fri, 6 Feb 2009 14:41:45 +0000 (15:41 +0100)]
[ARM] add i.MX35 build support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MXC: add cpu_is_ macros
Sascha Hauer [Fri, 6 Feb 2009 14:38:22 +0000 (15:38 +0100)]
[ARM] MXC: add cpu_is_ macros

We had hardcoded cpu_is_ macros for mxc architectures till now. As we
want to run the same kernel on i.MX31 and i.MX35 this patch adds cpu_is_
macros which expand to 0 or 1 if only one architecture is compiled in and
only check for the cpu type if more than one architecture is compiled
in.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX35: Add register definitions for the i.MX35
Sascha Hauer [Mon, 2 Feb 2009 13:11:54 +0000 (14:11 +0100)]
[ARM] MX35: Add register definitions for the i.MX35

This patch moves the stuff common to i.MX31 and i.MX35 to mx3x.h and the
specifics to mx31.h/mx35.h. We can build a kernel which runs on i.MX31 and
i.MX35, so always include mx31.h and mx35.h

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoimxfb: Fix margin settings
Sascha Hauer [Sat, 14 Feb 2009 15:29:38 +0000 (16:29 +0100)]
imxfb: Fix margin settings

The var->hsync_len, var->right_margin and var->left_margin fields
should contain the real values, not the hardware dependent values.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoimxfb: add mx27 support
Sascha Hauer [Mon, 26 Jan 2009 16:29:10 +0000 (17:29 +0100)]
imxfb: add mx27 support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31: add dma and fb devices
Valentin Longchamp [Mon, 16 Feb 2009 11:47:52 +0000 (12:47 +0100)]
mx31: add dma and fb devices

This adds the dma (ipu_dma) and fb devices for the mx31 for which drivers now are
available.

v2: merge the ipu and fb device in the same patch as suggested by Sascha

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31moboard: initial support for various baseboards
Valentin Longchamp [Mon, 16 Feb 2009 11:47:51 +0000 (12:47 +0100)]
mx31moboard: initial support for various baseboards

This enables our mx31moboard to be used on the different baseboards that
we are developping according to the application needs. There are not
many differences between the boards for now, but when other peripherals
are available for mx31 the differences are going to grow.

v2: takes Sascha's comments into account

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31: add pin definition for LCD
Valentin Longchamp [Wed, 11 Feb 2009 15:55:17 +0000 (16:55 +0100)]
mx31: add pin definition for LCD

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomxc: first set GPIO level, then switch direction to output
Guennadi Liakhovetski [Thu, 12 Feb 2009 13:27:22 +0000 (14:27 +0100)]
mxc: first set GPIO level, then switch direction to output

Make sure not to create spurious pulses on GPIOs, when configuring them as
output: first set required level, then switch direction.

Signed-off-by: Guennadi Liakhovetski <lg@denx.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoarm/imx: Kconfig beautification
Holger Schurig [Thu, 29 Jan 2009 13:42:25 +0000 (14:42 +0100)]
arm/imx: Kconfig beautification

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] mxc: add missing include
Sascha Hauer [Thu, 29 Jan 2009 15:00:23 +0000 (16:00 +0100)]
[ARM] mxc: add missing include

include devices.h from devices.c to avoid inconsistencies and to fix
sparse warnings

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] Add Synertronixx scb9328 board support
Sascha Hauer [Wed, 28 Jan 2009 16:36:37 +0000 (17:36 +0100)]
[ARM] Add Synertronixx scb9328 board support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] PCM037 Board: Add I2C support
Sascha Hauer [Wed, 28 Jan 2009 16:10:32 +0000 (17:10 +0100)]
[ARM] PCM037 Board: Add I2C support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] iommux mx3: Add pin definitions for I2C
Sascha Hauer [Wed, 28 Jan 2009 16:11:02 +0000 (17:11 +0100)]
[ARM] iommux mx3: Add pin definitions for I2C

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] mx1ads: add I2C support
Sascha Hauer [Wed, 28 Jan 2009 13:06:20 +0000 (14:06 +0100)]
[ARM] mx1ads: add I2C support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] PCM038 board: Add I2C support
Sascha Hauer [Wed, 28 Jan 2009 12:07:11 +0000 (13:07 +0100)]
[ARM] PCM038 board: Add I2C support

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX2: Add I2C devices / resources
Sascha Hauer [Wed, 28 Jan 2009 12:26:56 +0000 (13:26 +0100)]
[ARM] MX2: Add I2C devices / resources

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX2: add pwm device/resources
Sascha Hauer [Fri, 16 Jan 2009 14:17:46 +0000 (15:17 +0100)]
[ARM] MX2: add pwm device/resources

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MXC: add pwm driver for i.MX SoCs
Sascha Hauer [Fri, 16 Jan 2009 14:17:16 +0000 (15:17 +0100)]
[ARM] MXC: add pwm driver for i.MX SoCs

This driver has been tested on MX27/MX31. It should work on MX1/MX1
aswell, but the actual setting of the PWM is missing so far.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoimxfb: add 18 bit support
Sascha Hauer [Mon, 26 Jan 2009 16:31:02 +0000 (17:31 +0100)]
imxfb: add 18 bit support

v2: As pointed out by Hans J. Koch we have to claim we can do 24bit to
    make software like X work. We are lucky on i.MX that 18bit support
    has the necessary gaps in the fields to do so.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] pcm038: Add framebuffer support
Sascha Hauer [Thu, 15 Jan 2009 11:44:45 +0000 (12:44 +0100)]
[ARM] pcm038: Add framebuffer support

Add framebuffer support for PCM038

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoimxfb: add platform specific init/exit functions
Sascha Hauer [Thu, 15 Jan 2009 14:37:22 +0000 (15:37 +0100)]
imxfb: add platform specific init/exit functions

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX2: Add FEC platform device
Sascha Hauer [Mon, 26 Jan 2009 16:26:02 +0000 (17:26 +0100)]
[ARM] MX2: Add FEC platform device

The in kernel FEC driver has recently been ported to a platform driver.
Add a platform_device for it and register it for pcm038 and mx27ads.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31ads: Initial support for Wolfson Microelectronics 1133-EV1 module
Mark Brown [Thu, 15 Jan 2009 16:14:30 +0000 (16:14 +0000)]
mx31ads: Initial support for Wolfson Microelectronics 1133-EV1 module

The i.MX31ADS supports pluggable PMU modules, including the WM835x based
Wolfson Microelectronics 1133-EV1. These boards provide power, audio,
RTC and watchdiog services to the system. This patch adds initial support
for those boards in I2C mode.

Currently support is limited by the available support for the features
of the i.MX31 in the mainline kernel.  Some further work will be needed
once other PMU modules are supported and once there is SPI support.
Many of the regulator constraints will be sharable with other PMU
boards.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agopcm037: use of new iomux implementation
Valentin Longchamp [Wed, 28 Jan 2009 14:13:54 +0000 (15:13 +0100)]
pcm037: use of new iomux implementation

This was only compilation tested.

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31pdk: use of new iomux implementation
Valentin Longchamp [Wed, 28 Jan 2009 14:13:53 +0000 (15:13 +0100)]
mx31pdk: use of new iomux implementation

This was only compilation tested.

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31ads: use of new iomux implementation
Valentin Longchamp [Wed, 28 Jan 2009 14:13:52 +0000 (15:13 +0100)]
mx31ads: use of new iomux implementation

This was only compilation tested.

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31moboard: use of new iomux implementation
Valentin Longchamp [Wed, 28 Jan 2009 14:13:51 +0000 (15:13 +0100)]
mx31moboard: use of new iomux implementation

This example takes advantage of the possibility to use tables of iomux
configs.
This is inspired from mx1-mx2 iomux code. It allows a better code
readability.

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31: rework of iomux support
Valentin Longchamp [Wed, 28 Jan 2009 14:13:50 +0000 (15:13 +0100)]
mx31: rework of iomux support

This new implemenatation avoids that two physical pins are claimed by
the same driver (also with the the gpr hardware modes).
The gpio kernel lib is also called when a capable gpio pin is assigned
its gpio function.
The mxc_iomux_mode function is still here for backward compatibility but
should not be used anymore.

V2:

In the precendent revision, the iomux code was claiming a pin when its
hardware mode was changed. This was uncorrect: when the hardware mode is
changed, the pin must still be claimed through the iomux.

In order to have a pin working in mode hw2, we must fist issue the
mxc_iomux_set_gpr call and then the corresponding mxc_iomux_mode calls
with the FUNC mode (usually done with mxc_iomux_setup_multiple_pins).
The reverse calls must be done to fee the pins.

Signed-off-by: Valentin Longchamp <valentin.longchamp@epfl.ch>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoremove unused static function gpio_fec_inactive
Uwe Kleine-König [Wed, 21 Jan 2009 20:25:02 +0000 (21:25 +0100)]
remove unused static function gpio_fec_inactive

... from both mx27ads.c and pcm038.c

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Holger Schurig <hs4233@mail.mn-solutions.de>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Martin Fuzzey <mfuzzey@gmail.com>
15 years agofix warning "control reaches end of non-void function"
Uwe Kleine-König [Wed, 21 Jan 2009 20:25:03 +0000 (21:25 +0100)]
fix warning "control reaches end of non-void function"

Add a return 0 analogous to uart_mxc_port[0-2]_exit.

Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Holger Schurig <hs4233@mail.mn-solutions.de>
Cc: Russell King <rmk+kernel@arm.linux.org.uk>
Cc: Sascha Hauer <s.hauer@pengutronix.de>
Cc: Martin Fuzzey <mfuzzey@gmail.com>
15 years agomx31ads: Make unexported data static
Mark Brown [Thu, 15 Jan 2009 16:14:29 +0000 (16:14 +0000)]
mx31ads: Make unexported data static

Keeps sparse happy.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31ads: Fix build for missing mx31.h
Mark Brown [Thu, 15 Jan 2009 16:14:28 +0000 (16:14 +0000)]
mx31ads: Fix build for missing mx31.h

Several of the macros in mx31ads.h depend on mx31.h which is no longer
included in quite so many standard headers as it once was. Include it
directly so we can build.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agomx31: Add device definitions for the i.MX3x I2C controllers
Mark Brown [Thu, 15 Jan 2009 16:14:27 +0000 (16:14 +0000)]
mx31: Add device definitions for the i.MX3x I2C controllers

The i.MX I2C driver has not yet been merged into mainline but it is
near to that and the device defintions don't depend directly on it
so we can add the devices now.

Signed-off-by: Mark Brown <broonie@opensource.wolfsonmicro.com>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoarm/imx21: Framebuffer support for i.MX21
Holger Schurig [Mon, 26 Jan 2009 15:34:56 +0000 (16:34 +0100)]
arm/imx21: Framebuffer support for i.MX21

This patch mimicks what Martin wrote on the mailing list:

* move arch/arm/mach-imx/include/mach/imxfb.h into
  arch/arm/mach-mxc/include/mach/imxfb.h
* changes Kconfig so that CONFIG_FB_IMX is selectable
* adds a platform device (copied from some pengutronix
  patches)

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoarm/imx21: clock support for i.MX21
Holger Schurig [Mon, 26 Jan 2009 15:34:54 +0000 (16:34 +0100)]
arm/imx21: clock support for i.MX21

Based on code from "Martin Fuzzey" <mfuzzey@gmail.com>

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoarm/imx2x: split i.MX21/i.MX27 register definitions
Holger Schurig [Mon, 26 Jan 2009 15:34:53 +0000 (16:34 +0100)]
arm/imx2x: split i.MX21/i.MX27 register definitions

* define new CONFIG_ARCH_MX21 (this one is currently mutually exclusive to
  CONFIG_ARCH_MX27, but this might change)
* splits one header file. Memory definitions, interrupt sources,
  DMA channels are split into common part, i.MX27 specific and i.MX21
  specific.
* guard access to UART5/UART6, which don't exist on i.MX21

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoarm/imx2x: removes a bunch of sparse-warnings
Holger Schurig [Mon, 26 Jan 2009 15:34:51 +0000 (16:34 +0100)]
arm/imx2x: removes a bunch of sparse-warnings

Here are some of the warnings that get fixed by this:

> 200 times: warning: cast adds address space to expression (<asn:2>)
twelve times: warning: symbol 'xxx' was not declared. Should it be static
two times: warning: symbol 'clock' shadows an earlier one
five times: warning: incorrect type in initializer (different address spaces)

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MX27 Clock rework
Sascha Hauer [Mon, 16 Feb 2009 14:13:43 +0000 (15:13 +0100)]
[ARM] MX27 Clock rework

This changes MX27 to use common clkdev. It also cleans up MX27 clock
support to be more readable.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MXC: add clkdev support
Sascha Hauer [Mon, 16 Feb 2009 13:27:06 +0000 (14:27 +0100)]
[ARM] MXC: add clkdev support

This patch only adds general clkdev support without actually switching
any MXC architecture to clkdev.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MXC: remove _clk suffix from clock names
Sascha Hauer [Mon, 16 Feb 2009 13:29:10 +0000 (14:29 +0100)]
[ARM] MXC: remove _clk suffix from clock names

The context makes it clear already that these are clocks, so there's
no need for such a suffix. This patch only changes the clocks actually
used in the tree. The remaining clocks are renamed in the subsequent
architecture specific patches.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MXC: rework timer/clock initialisation
Sascha Hauer [Mon, 16 Feb 2009 13:36:49 +0000 (14:36 +0100)]
[ARM] MXC: rework timer/clock initialisation

- rename mxc_clocks_init to architecture specific versions. This
  allows us to have more than one architecture compiled in.
- call mxc_timer_init from clock initialisation instead from board
  code

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] MXC: Use a single function for decoding a PLL
Sascha Hauer [Mon, 26 Jan 2009 14:41:16 +0000 (15:41 +0100)]
[ARM] MXC: Use a single function for decoding a PLL

We had 3 versions of this function in clock support for MX1/2/3
Use a single one instead. I picked the one from the MX3 as it seems
to calculate more accurate as the other ones. Also, on MX27 and MX31 mfn
can be negative, this hasn't been handled correctly on MX27 since now.

This patch has been tested on MX27 and MX31 and produces the same clock
frequencies for me.

Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoarm/imx21: add kbuild support for the Freescale i.MX21
Holger Schurig [Mon, 26 Jan 2009 15:34:52 +0000 (16:34 +0100)]
arm/imx21: add kbuild support for the Freescale i.MX21

* adds Kconfig variables
* specifies different physical address for i.MX21 because of the
  different memory layouts
* disables support for UART5/UART6 in the i.MX serial driver
  (the i.MX21 doesn't have those modules)

Based on code from "Martin Fuzzey" <mfuzzey@gmail.com>

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years agoarm/imx2x: new IOMUX definitions
Holger Schurig [Thu, 29 Jan 2009 09:07:50 +0000 (10:07 +0100)]
arm/imx2x: new IOMUX definitions

* removed iomux-mx1-mx2.h completely
* distributes the former contents to four different files (iomux-mx1.h,
  iomux-mx21.h, iomux-mx27.h and the file iomux-mx2x.h, which is common to
  both i.MX21 and i.MX27).
* adds all documented IOMUX definitions for i.MX21 and i.MX27
* fixes a few that were wrong (PD14_AOUT_FEC_CLR, PE16_AF_RTCK).
* don't silenly include <linux/io.h>
* and fixes all collateral damage from above

Signed-off-by: Holger Schurig <hs4233@mail.mn-solutions.de>
Signed-off-by: Sascha Hauer <s.hauer@pengutronix.de>
15 years ago[ARM] pxa/MioA701: Migrate after pxa27x_udc gpio_pullup functionality.
Robert Jarzmik [Sat, 31 Jan 2009 20:07:09 +0000 (21:07 +0100)]
[ARM] pxa/MioA701: Migrate after pxa27x_udc gpio_pullup functionality.

Signed-off-by: Robert Jarzmik <rjarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa/MioA701: add gpio_vbus driver
Robert Jarzmik [Fri, 30 Jan 2009 19:48:24 +0000 (20:48 +0100)]
[ARM] pxa/MioA701: add gpio_vbus driver

Add gpio vbus detection to udc driver, by taking advantage
of the new gpio_vbus driver.

Signed-off-by: Robert Jarzmik <robert.jarzmik@free.fr>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: add support for CSB701 baseboard
Dmitry Eremin-Solenikov [Mon, 16 Feb 2009 17:40:57 +0000 (20:40 +0300)]
[ARM] pxa: add support for CSB701 baseboard

CSB701 is one of baseboards that can be used with CSB726 SOM.
This currently adds support for button and LED on the board.
More to come later.

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: add initial support for Cogent CSB726 board
Dmitry Eremin-Solenikov [Mon, 16 Feb 2009 17:40:55 +0000 (20:40 +0300)]
[ARM] pxa: add initial support for Cogent CSB726 board

Signed-off-by: Dmitry Eremin-Solenikov <dbaryshkov@gmail.com>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] pxa: fix typo in BANK_OFF() macro in gpio.h
Eric Miao [Fri, 13 Mar 2009 02:50:17 +0000 (10:50 +0800)]
[ARM] pxa: fix typo in BANK_OFF() macro in gpio.h

The typo was originally fixed by Mike Rapoport and missed. And is
later reported by Matthias Meier.

Signed-off-by: Matthias Meier <matthias.j.meier@gmx.net>
Signed-off-by: Mike Rapoport <mike@compulab.co.il>
Signed-off-by: Eric Miao <eric.miao@marvell.com>
15 years ago[ARM] update mach-types
Russell King [Thu, 12 Mar 2009 18:03:01 +0000 (18:03 +0000)]
[ARM] update mach-types

Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5421/1: ftrace: fix crash due to tracing of __naked functions
Uwe Kleine-König [Thu, 12 Mar 2009 17:03:16 +0000 (18:03 +0100)]
[ARM] 5421/1: ftrace: fix crash due to tracing of __naked functions

This is a fix for the following crash observed in 2.6.29-rc3:
http://lkml.org/lkml/2009/1/29/150

On ARM it doesn't make sense to trace a naked function because then
mcount is called without stack and frame pointer being set up and there
is no chance to restore the lr register to the value before mcount was
called.

Reported-by: Matthias Kaehlcke <matthias@kaehlcke.net>
Tested-by: Matthias Kaehlcke <matthias@kaehlcke.net>
Cc: Abhishek Sagar <sagar.abhishek@gmail.com>
Cc: Steven Rostedt <rostedt@home.goodmis.org>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Uwe Kleine-König <u.kleine-koenig@pengutronix.de>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoMerge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6
Russell King [Thu, 12 Mar 2009 21:32:52 +0000 (21:32 +0000)]
Merge branch 'for-rmk' of git://git.pengutronix.de/git/imx/linux-2.6

15 years ago[ARM] 5422/1: ARM: MMU: add a Non-cacheable Normal executable memory type
Paul Walmsley [Thu, 12 Mar 2009 19:11:43 +0000 (20:11 +0100)]
[ARM] 5422/1: ARM: MMU: add a Non-cacheable Normal executable memory type

This patch adds a Non-cacheable Normal ARM executable memory type,
MT_MEMORY_NONCACHED.

On OMAP3, this is used for rapid dynamic voltage/frequency scaling in
the VDD2 voltage domain. OMAP3's SDRAM controller (SDRC) is in the
VDD2 voltage domain, and its clock frequency must change along with
voltage. The SDRC clock change code cannot run from SDRAM itself,
since SDRAM accesses are paused during the clock change. So the
current implementation of the DVFS code executes from OMAP on-chip
SRAM, aka "OCM RAM."

If the OCM RAM pages are marked as Cacheable, the ARM cache controller
will attempt to flush dirty cache lines to the SDRC, so it can fill
those lines with OCM RAM instruction code. The problem is that the
SDRC is paused during DVFS, and so any SDRAM access causes the ARM MPU
subsystem to hang.

TI's original solution to this problem was to mark the OCM RAM
sections as Strongly Ordered memory, thus preventing caching. This is
overkill: since the memory is marked as non-bufferable, OCM RAM writes
become needlessly slow. The idea of "Strongly Ordered SRAM" is also
conceptually disturbing. Previous LAKML list discussion is here:

http://www.spinics.net/lists/arm-kernel/msg54312.html

This memory type MT_MEMORY_NONCACHED is used for OCM RAM by a future
patch.

Cc: Richard Woodruff <r-woodruff2@ti.com>
Signed-off-by: Paul Walmsley <paul@pwsan.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years ago[ARM] 5420/1: MMCI devinit and devexit macros
Linus Walleij [Fri, 6 Mar 2009 23:23:52 +0000 (00:23 +0100)]
[ARM] 5420/1: MMCI devinit and devexit macros

This adds __devinit and __devexit macros to the module probe and
remove functions in MMCI. Now includes the __devexit_p() thing too.

Signed-off-by: Linus Walleij <linus.walleij@ericsson.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
15 years agoi810: fix kernel crash fix when struct fb_var_screeninfo is supplied
Samuel CUELLA [Tue, 10 Mar 2009 19:56:00 +0000 (12:56 -0700)]
i810: fix kernel crash fix when struct fb_var_screeninfo is supplied

Prevent the kernel from being crashed by a divide-by-zero operation when
supplied an incorrectly filled 'struct fb_var_screeninfo' from userland.

Previously i810_main.c:1005 (i810_check_params) was using the global
'yres' symbol previously defined at i810_main.c:145 as a module parameter
value holder (i810_main.c:2174).  If i810fb is compiled-in or if this
param doesn't get a default value, this direct usage leads to a
divide-by-zero at i810_main.c:1005 (i810_check_params).  The patch simply
replace the 'yres' global, perhaps undefined symbol usage by a given
parameter structure lookup.

This problem occurs with directfb, mplayer -vo fbdev, SDL library.
It was also reported ( but non solved ) at:

http://mail.directfb.org/pipermail/directfb-dev/2008-March/004050.html

Signed-off-by: Samuel CUELLA <samuel.cuella@supinfo.com>
Cc: Jiri Kosina <jkosina@suse.cz>
Cc: Krzysztof Helt <krzysztof.h1@poczta.fm>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agom68knommu: m528x build fix
Steven King [Tue, 10 Mar 2009 19:55:58 +0000 (12:55 -0700)]
m68knommu: m528x build fix

There isn't any mcfqspi.h in the tree, and without it everything inside the
#ifdef CONFIG_SPI is uncompilable.

Signed-off-by: Steven King <sfking@fdwdc.com>
Acked-by: Greg Ungerer <gerg@snapgear.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agom68knommu: m5206e build fix
Steven King [Tue, 10 Mar 2009 19:55:57 +0000 (12:55 -0700)]
m68knommu: m5206e build fix

Signed-off-by: Steven King <sfking@fdwdc.com>
Acked-by: Greg Ungerer <gerg@snapgear.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agorcu: documentation 1Q09 update
Paul E. McKenney [Tue, 10 Mar 2009 19:55:57 +0000 (12:55 -0700)]
rcu: documentation 1Q09 update

Update the RCU documentation to call out the need for callers of
primitives like call_rcu() and synchronize_rcu() to prevent subsequent RCU
readers from hazard.

Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agokernel/user.c: fix a memory leak when freeing up non-init usernamespaces users
Dhaval Giani [Tue, 10 Mar 2009 19:55:56 +0000 (12:55 -0700)]
kernel/user.c: fix a memory leak when freeing up non-init usernamespaces users

We were returning early in the sysfs directory cleanup function if the
user belonged to a non init usernamespace.  Due to this a lot of the
cleanup was not done and we were left with a leak.  Fix the leak.

Reported-by: Serge Hallyn <serue@linux.vnet.ibm.com>
Signed-off-by: Dhaval Giani <dhaval@linux.vnet.ibm.com>
Acked-by: Serge Hallyn <serue@us.ibm.com>
Tested-by: Serge Hallyn <serue@us.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agomtd: physmap: fix NULL pointer dereference in error path
Atsushi Nemoto [Tue, 10 Mar 2009 19:55:55 +0000 (12:55 -0700)]
mtd: physmap: fix NULL pointer dereference in error path

commit e480814f138cd5d78a8efe397756ba6b6518fdb6 ("[MTD] [MAPS] physmap:
fix wrong free and del_mtd_{partition,device}") introduces a NULL pointer
dereference in physmap_flash_remove when called from the error path in
physmap_flash_probe (if map_probe failed).

Call del_mtd_{partition,device} only if info->cmtd was not NULL.

Reported-by: pHilipp Zabel <philipp.zabel@gmail.com>
Signed-off-by: Atsushi Nemoto <anemo@mba.ocn.ne.jp>
Cc: David Woodhouse <dwmw2@infradead.org>
Cc: "Rafael J. Wysocki" <rjw@sisk.pl>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agointel-agp: fix a panic with 1M of shared memory, no GTT entries
Lubomir Rintel [Tue, 10 Mar 2009 19:55:54 +0000 (12:55 -0700)]
intel-agp: fix a panic with 1M of shared memory, no GTT entries

When GTT size is equal to amount of video memory, the amount of GTT
entries is computed lower than zero, which is invalid and leads to
off-by-one error in intel_i915_configure()

Originally posted here:
http://bugzilla.kernel.org/show_bug.cgi?id=12539
http://bugzilla.redhat.com/show_bug.cgi?id=445592

Signed-off-by: Lubomir Rintel <lkundrak@v3.sk>
Cc: Lubomir Rintel <lkundrak@v3.sk>
Cc: Dave Airlie <airlied@linux.ie>
Reviewed-by: Eric Anholt <eric@anholt.net>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agomtd_dataflash: fix probing of AT45DB321C chips.
Will Newton [Tue, 10 Mar 2009 19:55:53 +0000 (12:55 -0700)]
mtd_dataflash: fix probing of AT45DB321C chips.

Commit 771999b65f79264acde4b855e5d35696eca5e80c ("[MTD] DataFlash: bugfix,
binary page sizes now handled") broke support for probing AT45DB321C flash
chips.  These chips do not support the "page size" status bit, so if we
match the JEDEC id return early.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: Will Newton <will.newton@gmail.com>
Cc: David Woodhouse <dwmw2@infradead.org>
Acked-by: David Brownell <dbrownell@users.sourceforge.net>
Cc: <stable@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
15 years agoidr: make idr_remove_all() do removal -before- free_layer()
Paul E. McKenney [Tue, 10 Mar 2009 19:55:52 +0000 (12:55 -0700)]
idr: make idr_remove_all() do removal -before- free_layer()

Fix a problem in the IDR system, where an idr_remove_all() hands a data
element to call_rcu() (via free_layer()) before making that data element
inaccessible to new readers.  This is very bad, and results in readers
still having a reference to this data element at the end of the grace
period.

Tests on large machines that concurrently map and unmap user-space memory
within the same multithreaded process result in crashes within about five
minutes.  Applying this patch increases the kernel's longevity to the
three-to-eight-hour range.

There appear to be other similar problems in idr_get_empty_slot() and
sub_remove(), but I fixed the easy one in idr_remove_all() first.  It is
therefore no surprise that failures still occur.

Located-by: Milton Miller II <miltonm@austin.ibm.com>
Tested-by: Milton Miller II <miltonm@austin.ibm.com>
Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Cc: Manfred Spraul <manfred@colorfullife.com>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>